import sys
sys.path.append('.')
-import moe.meta
+import moe
import moe.config
+import moe.log
import moe.eval
-
-#m = moe.meta.MoeMeta()
-#m['a'] = '1'
-#m.write()
-
-c = moe.config.MoeConfig(name='/dev/stdin')
-c.dump()
-
-#d = moe.config.MoeConfig(name='/dev/stdin')
-#d.dump()
-
-s = moe.config.MoeConfigStack()
-s.push(c)
-#s.push(d)
-
-s.dump_defs()
-
-#s.apply_overrides("x_")
-#s.dump_defs()
-
-print "***"
-s.dump()
-
-print moe.eval.init_pipeline(s, 'stk_')
+import moe.pipeline
+import moe.batch
+import os
+
+e = moe.eval.Eval()
+
+try:
+ overrides = moe.config.parse_overrides(sys.argv)
+ e.builtins.set("HOME", ".")
+ e.builtins.set("TASK", "sum")
+ e.builtins.set("CONTESTANT", "mj")
+ e.log.progress("### Evaluating task %s of contestant %s ###\n\n" % (e['TASK'], e['CONTESTANT']))
+ e.init(overrides)
+except moe.MoeError, err:
+ e.log.shout("FATAL: %s\n" % err)
+ sys.exit(1)
+
+try:
+ if len(sys.argv) > 1:
+ file = sys.argv[1]
+ else:
+ file = None
+ moe.batch.locate(e, file)
+ e.run()
+except moe.MoeError, err:
+ e.log.shout("FATAL: %s\n" % err)
+ sys.exit(1)
+except moe.SolutionError, err:
+ e.stat["error"] = err
+ e.log.shout("%s\n" % err)
+except Exception:
+ moe.log.fatal_exception()
+
+moe.log.default.progress_file.write("\nFinal status file:\n")
+e.stat.write(file=moe.log.default.progress_file)