GetExecutionSteps returns the GitHub Actions steps for executing OpenCode
(workflowData *WorkflowData, logFile string)
| 106 | |
| 107 | // GetExecutionSteps returns the GitHub Actions steps for executing OpenCode |
| 108 | func (e *OpenCodeEngine) GetExecutionSteps(workflowData *WorkflowData, logFile string) []GitHubActionStep { |
| 109 | openCodeLog.Printf("Generating execution steps for OpenCode engine: workflow=%s, firewall=%v", |
| 110 | workflowData.Name, isFirewallEnabled(workflowData)) |
| 111 | |
| 112 | return e.BuildCLIEngineExecutionSteps(workflowData, logFile, UniversalCLIEngineExecutionConfig{ |
| 113 | EngineConstant: constants.OpenCodeEngine, |
| 114 | DefaultCommandName: "opencode", |
| 115 | ExtraCLIArgs: []string{"--print-logs", "--log-level", "DEBUG"}, |
| 116 | MCPConfigFile: "opencode.jsonc", |
| 117 | StepName: "Execute OpenCode CLI", |
| 118 | ConfigStep: e.generateOpenCodeConfigStep(workflowData), |
| 119 | ModelEnvVarName: constants.OpenCodeCLIModelEnvVar, |
| 120 | WriteTimestamp: false, |
| 121 | }) |
| 122 | } |
| 123 | |
| 124 | // generateOpenCodeConfigStep writes opencode.jsonc with all permissions set to allow |
| 125 | // to prevent CI hanging on permission prompts. |