[WIP] [DO NOT REVIEW] ci: replace Cirrus CI with GitHub Actions#819
[WIP] [DO NOT REVIEW] ci: replace Cirrus CI with GitHub Actions#819giuseppe wants to merge 2 commits into
Conversation
1b181f5 to
2fa7b92
Compare
|
Cc: / FYI @timcoding1988 |
a92f4c2 to
032b919
Compare
|
Can we coordinate and discus such larger changes first please? IMO container-libs should be moved under the podman CNCF org and then make use of the same "static VM images" approach we will design there. Runtime installs like this proposing doing have been breaking us a lot historically and on a repo with such activity level like here I do not consider that useful nor is compiling several rust deps on each PR a useful for CI speed. |
032b919 to
8b2df2f
Compare
sure, I close this one. Consider it only an experiment to see how far we could go using GHA. |
and if there is anything I can help with that effort, just let me know |
Ack, yeah I think in terms of test matrix and yaml template this is likely a good start and the path-filter thing looks really useful (what a shame that this is not a native feature...) Overall I think we must be careful to not write to much scripts as part of github actions. Debugging this outside of CI will then always suck. My thinking is to have one general automation repo that creates "static" qcow2 images, fedora, debian like we have right now and then use the gh actions runner to run them as VMs. Then we have a some generic test script/Makefile or whatever that starts the VM mounts the repo and runs the tests inside. Then all the general infra, create user, etc.. would be part of that script. So the GH action yaml should just call that with the right tests name/disto version... And then a user could do the same locally to run tests in a proper env exactly like in CI.
thanks will do |
|
@giuseppe Do you want to continue this with an appraoch like I have taken in podman podman-io/podman-sandbox#5 I think for the basic compile checks we can use the default ubuntu runners/go action to test compiles, but for the integration tests I think we should use the VMSs for a "clean env" |
|
Oh and as general rule I like to put as little into the github yaml in-line script as possible. I mean we always need to use some actions of course and install some deps there with is fine. i.e. from my podman example any user who has lima installed can do |
190519f to
8eba6d7
Compare
Apply fixes suggested by `go fix` with Go 1.26: - []byte(fmt.Sprintf(...)) → fmt.Appendf(nil, ...) - for i := 0; i < N; i++ → for i := range N - strings.HasSuffix + strings.TrimSuffix → strings.CutSuffix Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
8eba6d7 to
8697654
Compare
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
8697654 to
1063b92
Compare
Migrate all CI tasks from Cirrus CI (.cirrus.yml) to a new GitHub Actions workflow (.github/workflows/ci.yml). All tests run with the same conditions.