Repository navigation
GH-103: run CI on GitHub-hosted runners - #104
Merged
Merged
Conversation
A public repository cannot use actions or reusable workflows hosted in a private repository, so vendor slack-notify and pr-events instead of reaching into renderorange/.github. Every job moves to ubuntu-latest; nothing here needed the self-hosted box.
A reusable workflow gets no checkout of its own, so the vendored composite action could not be resolved. Found by the first run of the new workflow.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Moves every workflow job off the self-hosted org runner and onto GitHub-hosted
ubuntu-latest, and removes the two dependencies on the privaterenderorange/.githubrepository.A public repository cannot use actions or reusable workflows hosted in a
private repository, so both are vendored into this repo:
.github/actions/slack-notify/— the composite action, used by 6 steps.github/workflows/pr-events.yml— the reusable workflow, called byslack-pr-events.ymlBoth copies are byte-identical to the source apart from a provenance header
that names the original path.
Nothing in these workflows needed the self-hosted box: they are pure Go,
built with
CGO_ENABLED=0, and cross-compile from any linux/amd64 host.What changed
.github/workflows/ci.ymlruns-on: self-hosted->ubuntu-latest; 3 x Slack action vendored.github/workflows/release.ymlruns-on: self-hosted->ubuntu-latest; 3 x Slack action vendored.github/workflows/pr-events.ymlubuntu-latest.github/workflows/slack-pr-events.yml./.github/workflows/pr-events.yml.github/actions/slack-notify/action.yml+run.shgrep -r "renderorange/.github" .github/now matches only the provenancecomments.
Verification
All five workflow/action files parse as YAML, and the vendored script passes a
shell syntax check:
The Go gates are unchanged and clean on this tree:
Notes and limits
SLACK_PIPELINE_WEBHOOK_URLandSLACK_DEVELOPMENT_WEBHOOK_URLmust beavailable to this repository. Inherited org secrets have to be granted to a
public repo explicitly; without them the jobs pass and then fail on the notify
step.
renderorange/.githubwill not reachthis repo, which is the price of a public repo consuming private tooling.
versionjob and thereleasejob only needed arunner at all because of
self-hosted; both are trivial on hosted.Closes #103