On Sun, Nov 28, 2021 at 3:44 PM Nir Soffer <nsof...@redhat.com> wrote: > > On Sun, Nov 28, 2021 at 12:41 PM Nir Soffer <nsof...@redhat.com> wrote: > > > > On Fri, Nov 26, 2021 at 7:44 PM Marcin Sobczyk <msobc...@redhat.com> wrote: > > > > > > Hi All, > > > > > > I've been working on adding GitHub Actions-based CI to vdsm today. > > > Feel free to check out the patches here: > > > > > > https://gerrit.ovirt.org/q/topic:%22github-actions-ci%22+(status:open%20OR%20status:merged) > > > > Awesome! > > > > > Some comments: > > > - the linters work fine already, we can start using them > > > > > > - RPM building works too in general. I think the RPM versions are not > > > right yet, > > rpm versions are corrected by: > - pushing current master to your fork > - pushing --tags to your fork > - using "check-depth: 0" option for actions/checkout@v2 > > > so I'll look into this. After the 'rpm' job is done we get a > > > zipfile with all the built RPMs inside. In the future we may want to run > > > 'createrepo_c' on this dir as well, so we'll have a ready-to-be-used > > > repository in that zip. > > > > We already have code to do this in automation/common.sh - can we > > reuse it or extract it to new script? > > > > > - 'tests' are working too, but we have a couple of failures we'd need to > > > look at. This job, unlike the others, runs in GitHub's Ubuntu VM inside > > > which we use a privileged container for running the tests. > > > > The failure seems to be missing TRAVIS_CI=1 environment variable. > > This should of course change to something moer generic like CONTAINER_CI=1 > > and the helper modules tests/testing.py should be updated. > > Tests pass adding > > env: > TRAVIS_CI=1 > > Ugly but works :-) > > > > - didn't try 'tests-storage' yet > > > > That's fine, the storage team will handle this. > > Added storage tests here: > https://github.com/nirs/vdsm/commit/0e5282945e4c86e65d5a1c12987e7534f350f2f2 > > > > - Not to waist precious free CI minutes and storage, we run linters > > > first, tests after that, but only under the condition that the linters > > > didn't fail, and finally we build RPMs, but this time under the > > > condition that the tests didn't fail. > > > > This is very bad idea. We want to run all the jobs in parallel so we > > can get quick feedback from all jobs at the same run. There is no real > > dependency between the jobs, and we don't waste resources by running > > them in parallel. > > Here is a build with all jobs running in parallel, finish in 6.5 minutes: > https://github.com/nirs/vdsm/actions/runs/1512754118 > > I think we can add install tests to the rpm job. > > This is at least 3 times faster than jenkins. > > We can start using github CI now.
Here is also (much simpler) CI pipeline for gitlab: https://gitlab.com/nirs/vdsm/-/commit/dfaaf8f7311501307e4269fc0b427417ff5264d3 It works, except 3 network tests that need privileged container: https://gitlab.com/nirs/vdsm/-/pipelines/417881870 Network short summary: = 1 failed, 310 passed, 32 skipped, 4 xfailed, 2 xpassed, 1 warning, 2 errors in 17.12s = The long test (tests-storage) took 6 minutes, a little faster than github. The lint job is slower (, since gitlab provides a VM with one core, but our longest tests (storage) are not cpu bound, so it does not matter. The rpm job creates rpms correctly without jumping through any hoops: https://gitlab.com/nirs/vdsm/-/jobs/1826841070 Looks like both github and gitlab gives us better CI with very little effort. Nir _______________________________________________ Devel mailing list -- devel@ovirt.org To unsubscribe send an email to devel-le...@ovirt.org Privacy Statement: https://www.ovirt.org/privacy-policy.html oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/U7ALQN3A4PGHRHROAHDV5PKDYNPOEQJM/