func()

in astro/cli/astro/cmd/cmd.go [266:298]


func (cli *AstroCLI) runPlan(cmd *cobra.Command, args []string) error {
	logger.Trace.Printf("cli: plan args: %s\n", args)

	vars := flagsToUserVariables(cli.flags.projectFlags)

	var moduleNames []string
	if cli.flags.moduleNamesString != "" {
		moduleNames = strings.Split(cli.flags.moduleNamesString, ",")
	}

	status, results, err := cli.project.Plan(
		astro.PlanExecutionParameters{
			ExecutionParameters: astro.ExecutionParameters{
				ModuleNames:         moduleNames,
				UserVars:            vars,
				TerraformParameters: args,
			},
			Detach: cli.flags.detach,
		},
	)
	if err != nil {
		return fmt.Errorf("ERROR: %v", cli.processError(err))
	}

	err = cli.printExecStatus(status, results)
	if err != nil {
		return errors.New("Done; there were errors")
	}

	fmt.Fprintln(cli.stdout, "Done")

	return nil
}