William Pitcock avatar William Pitcock committed f2bf07b

parsetree: add MkdirParents operation

Comments (0)

Files changed (1)

appliancekit/parsetree.py

         target_fd.write(tmpl.render(**state))
         target_fd.close()
 
+class MkdirParentsOperation(UnimplementedOperation):
+    def __repr__(self):
+        return "<{}: '{}'>".format(type(self).__name__, self.path)
+
+    def visit(self, state):
+        simulate = state.get('simulate', False)
+        print 'MkdirParents', '{}{}'.format(state['chroot'], self.path)
+        if simulate:
+            return
+        target = state['chroot'] + self.path
+        mkdir_p(target)
+
 optree = {
     'noop': NoOpOperation,
     'runcmd': RunCmdOperation,
     'setenv': SetEnvOperation,
     'render_template': RenderTemplateOperation,
+    'mkdir_p': MkdirParentsOperation
 }
 
 def compile_parsetree(parsetree):
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.