======================================== Safe Output Runtime Configuration ======================================== This file contains functions that determine the runtime environment (runner images) for safe-outputs jobs and detect feature usage patterns that affect job configuration. formatFramew
(data *WorkflowData)
| 23 | // 2. runs-on-slim — top-level field for all framework jobs |
| 24 | // 3. DefaultActivationJobRunnerImage — compiled-in default |
| 25 | func (c *Compiler) formatFrameworkJobRunsOn(data *WorkflowData) string { |
| 26 | if data != nil && data.SafeOutputs != nil && data.SafeOutputs.RunsOn != "" { |
| 27 | snippet := normalizeRunsOnSnippet(data.SafeOutputs.RunsOn) |
| 28 | safeOutputsRuntimeLog.Printf("Framework job runs-on from safe-outputs: %s", snippet) |
| 29 | return c.indentYAMLLines(snippet, " ") |
| 30 | } |
| 31 | if data != nil && data.RunsOnSlim != "" { |
| 32 | snippet := normalizeRunsOnSnippet(data.RunsOnSlim) |
| 33 | safeOutputsRuntimeLog.Printf("Framework job runs-on from runs-on-slim: %s", snippet) |
| 34 | return c.indentYAMLLines(snippet, " ") |
| 35 | } |
| 36 | safeOutputsRuntimeLog.Printf("Framework job runs-on using default: %s", constants.DefaultActivationJobRunnerImage) |
| 37 | return "runs-on: " + constants.DefaultActivationJobRunnerImage |
| 38 | } |
| 39 | |
| 40 | // usesPatchesAndCheckouts checks if the workflow uses safe outputs that require |
| 41 | // git patches and checkouts (create-pull-request or push-to-pull-request-branch). |