Ejemplo n.º 1
0
 async def run_steps(self, view):
     steps = app.steps + AddonModel.selected_addons_steps()
     for step in steps:
         view.mark_step_running(step)
         step.result = await step.run(app.ui.set_footer)
         view.mark_step_complete(step)
     common.save_step_results()
     events.PostDeployComplete.set()
     view.mark_complete()
Ejemplo n.º 2
0
    async def show_steps(self):
        steps = app.steps + AddonModel.selected_addons_steps()
        for step in filter(attrgetter('viewable'), steps):
            if not (step.additional_input or step.needs_sudo):
                continue
            if step.cloud_whitelist and app.provider.cloud_type \
               not in step.cloud_whitelist:
                continue
            await self.show_step(step)

        return self.finish()
Ejemplo n.º 3
0
    async def run_steps(self):
        utils.info("Running post-deployment steps")
        # technically, you can't currently select addons in headless,
        # but let's go ahead and be future-proof
        steps = app.steps + AddonModel.selected_addons_steps()
        for step in steps:
            step.result = await step.run(utils.info)

        common.save_step_results()
        self.show_summary()

        utils.info("Installation of your big software is now complete.")
        events.PostDeployComplete.set()
        events.Shutdown.set(0)
Ejemplo n.º 4
0
 def build_widget(self):
     self.widgets = {}
     rows = [
         Columns([('fixed', 3, Text('')),
                  ('weight', 0.1, Text('Application')),
                  ('weight', 0.4, Text('Result'))],
                 dividechars=5),
         HR(),
     ]
     steps = app.steps + AddonModel.selected_addons_steps()
     for step in steps:
         widget = StepResult(step)
         self.widgets[step.name] = widget
         rows.extend([
             widget,
             HR(),
         ])
     self.pile = Pile(rows)
     return self.pile
Ejemplo n.º 5
0
 def finish(self):
     steps = app.steps + AddonModel.selected_addons_steps()
     updates = any(step.bundle_add or step.bundle_remove for step in steps)
     if updates:
         utils.setup_metadata_controller()
     return controllers.use('configapps').render()
Ejemplo n.º 6
0
 def all_steps(self):
     """
     All steps, including those from selected addons.
     """
     from conjureup.models.addon import AddonModel
     return app.steps + AddonModel.selected_addons_steps()