def fetch_stage_or_default(stage_name=None, debug=False): if not stage_name: stage_name = shared.get_default_stage_name(debug=debug) if not shared.check_stage_file(stage_name): click.echo(click.style("Stage file '%s' not found." % stage_name, fg='red', bold=True)) return None stage = shared.get_stage_object(stage_name) return stage_name, stage
def create(stage_name): """Create new stage file""" if not stage_name: stage_name = shared.get_default_stage_name() if shared.check_stage_file(stage_name): click.echo(click.style("This stage name already exists. You can list " "them all with: `$ crmint stages list`", fg='red', bold=True)) exit(1) filepath = _create_stage_file(stage_name) click.echo(click.style("Stage file created: %s" % filepath, fg='green'))
def migrate(stage_name): """Migrate old stage file format to the latest one""" if not stage_name: stage_name = shared.get_default_stage_name() try: old_context = _parse_old_stage_file(stage_name) if old_context is None: click.echo(click.style( "Already latest version detected: %s" % stage_name, fg='green')) exit(0) except ValueError as inst: click.echo(click.style(str(inst), fg='red', bold=True)) exit(1) # Save the new stage # NB: we expect the variable names to be identical between old and new context new_stage = _default_stage_context(stage_name) new_stage.update(old_context) filepath = _create_stage_file(stage_name, new_stage) click.echo(click.style( "Successfully migrated stage file to: %s" % filepath, fg='green'))