[libvirt PATCH v2 00/35] ci: Unify the GitLab CI jobs with local executions && adopt lcitool container executions

Erik Skultety posted 35 patches 7 months, 2 weeks ago
Failed in applying to current master (apply log)
.gitlab-ci.yml |  47 +++++-----
ci/Makefile    | 245 -------------------------------------------------
ci/build.sh    |  23 -----
ci/helper      | 181 +++++++++++++++++++++---------------
ci/jobs.sh     |  79 ++++++++++++++++
5 files changed, 211 insertions(+), 364 deletions(-)
delete mode 100644 ci/Makefile
delete mode 100644 ci/build.sh
create mode 100644 ci/jobs.sh
[libvirt PATCH v2 00/35] ci: Unify the GitLab CI jobs with local executions && adopt lcitool container executions
Posted by Erik Skultety 7 months, 2 weeks ago
since v2 [1]:
- moved the custom meson.build directory check before running setup to
  individual callers for better robustness, but actually let meson deal with an
  existing setup directory most of the time
- drops the ci/Makefile
- only set our verbose env variables when running without a TTY
- switched the bright yellow (93m) color to green (32m)
- added KeyboardInterrupt handling in the ci/helper Python code

The changes above require the following lcitool MR to be merged first as
they're built on top of it [2]

[1] https://listman.redhat.com/archives/libvir-list/2023-August/241471.html
[2] https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/431

Erik Skultety (35):
  ci: build.sh: Add variables from .gitlab-ci.yml
  ci: build.sh: Add GIT_ROOT env helper variable
  ci: build.sh: Don't mention that MESON_ARGS are available via CLI
  ci: build.sh: Add a wrapper function executing 'shell' commands
  ci: build.sh: Add a wrapper function over meson's setup
  ci: build.sh: Add a wrapper function over the 'build' job
  ci: build.sh: Add a helper function to create the dist tarball
  ci: build.sh: Add a wrapper function over the 'test' job
  ci: build.sh: Add a wrapper function over the 'codestyle' job
  ci: build.sh: Add a wrapper function over the 'potfile' job
  ci: build.sh: Add a wrapper function over the 'rpmbuild' job
  ci: build.sh: Add a wrapper function over the 'website' job
  ci: build.sh: Drop changing working directory to CI_CONT_DIR
  ci: build.sh: Drop direct invocation of meson/ninja commands
  ci: build.sh: Drop MESON_ARGS definition from global level
  ci: Rename build.sh -> jobs.sh
  .gitlab-ci.yml: Add 'after_script' stage to prep for artifact
    collection
  .gitlab-ci.yml: Convert the native build job to the build.sh usage
  .gitlab-ci.yml: Convert the cross build job to the build.sh usage
  .gitlab-ci.yml: Convert the website build job to the build.sh usage
  .gitlab-ci.yml: Convert the codestyle job to the build.sh usage
  .gitlab-ci.yml: Convert the potfile job to the build.sh usage
  ci: helper: Drop _lcitool_get_targets method
  ci: helper: Don't make ':' literal a static part of the image tag
  ci: helper: Add --lcitool-path CLI option
  ci: helper: Add a required_deps higher order helper/decorator
  ci: helper: Add Python code hangling git clones
  ci: helper: Add a helper to create a local repo clone Pythonic way
  ci: helper: Rework _lcitool_run method logic
  ci: helper: Add an action to run the container workload via lcitool
  ci: helper: Add a job argparse subparser
  ci: helper: Drop original actions
  ci: helper: Drop the --meson-args/--ninja-args CLI options
  ci: helper: Drop the _make_run method
  ci: Drop the now unused Makefile

 .gitlab-ci.yml |  47 +++++-----
 ci/Makefile    | 245 -------------------------------------------------
 ci/build.sh    |  23 -----
 ci/helper      | 181 +++++++++++++++++++++---------------
 ci/jobs.sh     |  79 ++++++++++++++++
 5 files changed, 211 insertions(+), 364 deletions(-)
 delete mode 100644 ci/Makefile
 delete mode 100644 ci/build.sh
 create mode 100644 ci/jobs.sh

-- 
2.41.0