| 140 | } |
| 141 | |
| 142 | func parseDeployCommandOptions(cmd *cobra.Command, workflows []string, validateEngine func(string) error) (AddOptions, time.Duration, error) { |
| 143 | engineOverride, _ := cmd.Flags().GetString("engine") |
| 144 | nameFlag, _ := cmd.Flags().GetString("name") |
| 145 | forceFlag, _ := cmd.Flags().GetBool("force") |
| 146 | appendText, _ := cmd.Flags().GetString("append") |
| 147 | verbose, _ := cmd.Flags().GetBool("verbose") |
| 148 | noGitattributes, _ := cmd.Flags().GetBool("no-gitattributes") |
| 149 | workflowDir, _ := cmd.Flags().GetString("dir") |
| 150 | noStopAfter, _ := cmd.Flags().GetBool("no-stop-after") |
| 151 | stopAfter, _ := cmd.Flags().GetString("stop-after") |
| 152 | disableSecurityScanner, _ := cmd.Flags().GetBool("no-security-scanner") |
| 153 | disableSecurityScannerLegacy, _ := cmd.Flags().GetBool("disable-security-scanner") |
| 154 | disableSecurityScanner = disableSecurityScanner || disableSecurityScannerLegacy |
| 155 | coolDownStr, _ := cmd.Flags().GetString("cool-down") |
| 156 | |
| 157 | if nameFlag != "" && len(workflows) > 1 { |
| 158 | return AddOptions{}, 0, errors.New("--name flag cannot be used when adding multiple workflows at once") |
| 159 | } |
| 160 | if err := validateEngine(engineOverride); err != nil { |
| 161 | return AddOptions{}, 0, err |
| 162 | } |
| 163 | |
| 164 | coolDown, err := parseCoolDownFlag(coolDownStr) |
| 165 | if err != nil { |
| 166 | return AddOptions{}, 0, fmt.Errorf("invalid --cool-down value: %w", err) |
| 167 | } |
| 168 | |
| 169 | return AddOptions{ |
| 170 | Verbose: verbose, |
| 171 | EngineOverride: engineOverride, |
| 172 | Name: nameFlag, |
| 173 | Force: forceFlag, |
| 174 | AppendText: appendText, |
| 175 | NoGitattributes: noGitattributes, |
| 176 | WorkflowDir: workflowDir, |
| 177 | NoStopAfter: noStopAfter, |
| 178 | StopAfter: stopAfter, |
| 179 | DisableSecurityScanner: disableSecurityScanner, |
| 180 | }, coolDown, nil |
| 181 | } |
| 182 | |
| 183 | func prepareDeployCheckout(ctx context.Context, targetRepo string) (string, string, error) { |
| 184 | gitRoot, err := gitutil.FindGitRoot() |