Skip to content

Commit 0bebef3

Browse files
ktdreyerclaude
andauthored
RHOAIENG-51372: document preprod self-hosted runner in workflows README (#771)
Depends-on: #770 (now merged) AI agents authoring new workflows need to know that `[self-hosted, preprod]` is available. Guide developers and agents to only use this runner for trusted jobs that *require* cluster access behind the firewall. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent d776f4c commit 0bebef3

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

.github/workflows/README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,29 @@ For a complete inventory of workflows, read the `name:` field in each
66
`.yml`/`.yaml` file in this directory. Do not rely on a static list here —
77
see [#769](https://github.com/ambient-code/platform/issues/769).
88

9+
## Runners
10+
11+
Almost all workflows use GitHub-hosted `ubuntu-latest` runners. Continue
12+
following this pattern for new jobs.
13+
14+
*If you need direct cluster access*, use our self-hosted runner on IT's preprod
15+
OpenShift cluster:
16+
17+
```yaml
18+
runs-on: [self-hosted, preprod]
19+
```
20+
21+
Only use this for the *few* jobs that *must* run inside the firewall (e.g.
22+
deploying to the preprod OpenShift environment with `oc`).
23+
24+
**Security constraint:** The `preprod` runner has direct access to the cluster
25+
API. Never run or process user-submitted code on it. Only trigger `preprod`
26+
runner jobs from `main` (e.g. `on: push: branches: [main]`) or from
27+
`workflow_dispatch`. *Never* use `pull_request`, `pull_request_target`, or
28+
[other risky
29+
triggers](https://securitylab.github.com/resources/github-actions-untrusted-input/)
30+
with `[self-hosted, preprod]`.
31+
932
## Security
1033

1134
### Permissions

0 commit comments

Comments
 (0)