aboutsummaryrefslogtreecommitdiffstats
path: root/nikola/plugins/command_build.py
diff options
context:
space:
mode:
authorLibravatarAgustin Henze <tin@sluc.org.ar>2012-12-12 20:15:48 -0300
committerLibravatarAgustin Henze <tin@sluc.org.ar>2012-12-12 20:15:48 -0300
commit0f2c04e70a0ffdd0892d6970cafbcd952d221db5 (patch)
treed36f7747c4b9cb5c5e00cae5b137d22214b1c7be /nikola/plugins/command_build.py
parentca1f5a392261a7c6b82b5ac1015427605909d8c9 (diff)
Imported Upstream version 5upstream/5
Diffstat (limited to 'nikola/plugins/command_build.py')
-rw-r--r--nikola/plugins/command_build.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/nikola/plugins/command_build.py b/nikola/plugins/command_build.py
new file mode 100644
index 0000000..cface15
--- /dev/null
+++ b/nikola/plugins/command_build.py
@@ -0,0 +1,32 @@
+import os
+import tempfile
+
+from nikola.plugin_categories import Command
+
+
+class CommandBuild(Command):
+ """Build the site."""
+
+ name = "build"
+
+ def run(self, *args):
+ """Build the site using doit."""
+
+ # FIXME: this is crap, do it right
+ with tempfile.NamedTemporaryFile(suffix='.py', delete=False) as dodo:
+ dodo.write('''
+from doit.reporter import ExecutedOnlyReporter
+DOIT_CONFIG = {
+ 'reporter': ExecutedOnlyReporter,
+ 'default_tasks': ['render_site'],
+}
+from nikola import Nikola
+import conf
+SITE = Nikola(**conf.__dict__)
+
+
+def task_render_site():
+ return SITE.gen_tasks()
+ ''')
+ dodo.flush()
+ os.system('doit -f %s -d . %s' % (dodo.name, ' '.join(args)))