in codecatalyst-runner/pkg/actions/action_plan.go [37:73]
func NewActionPlan(params *NewActionPlanParams) (runner.Plan, error) {
var id string
if params.ID != "" {
id = params.ID
} else {
id = params.Action.ID
}
workingDir, err := filepath.Abs(params.WorkingDir)
if err != nil {
return nil, err
}
actionPlan := &actionPlan{
id: id,
action: params.Action,
commandGroups: make([]*runner.CommandGroup, 0),
environmentConfiguration: &runner.EnvironmentConfiguration{
FileMaps: make([]*runner.FileMap, 0),
Env: map[string]string{
"CATALYST_WORKFLOW_SPACE_NAME": "-",
"CATALYST_WORKFLOW_SPACE_ID": "-",
"CATALYST_WORKFLOW_PROJECT_NAME": "-",
"CATALYST_WORKFLOW_PROJECT_ID": "-",
"CI": "true",
},
WorkingDir: workingDir,
},
dependsOn: params.DependsOn,
ExecutionType: params.ExecutionType,
}
if params.Action.Runs.Using == UsingTypeDocker {
err = actionPlan.loadDockerAction(params.Action, params.Steps)
} else {
err = actionPlan.loadNodeAction(params.Action, params.Steps, params.ExecutionType)
}
return actionPlan, err
}