This makes the Cirrus CI configurations as maintainable as the
Dockerfiles, by shifting the responsability of keeping the list
of dependencies and other details up to date to lcitool.
Test pipeline:
https://gitlab.com/abologna/libvirt/-/pipelines/161289292
For the refresh script to work, your copy of lcitool needs to
include these patches:
https://gitlab.com/libvirt/libvirt-ci/-/merge_requests/30
Changes from [v2]:
* 'lcitool dockerfile --variables' has been replaced with
'lcitool variables'.
Changes from [v1]:
* reduce duplication by only storing variables in the git
repository and instantiating the template at runtime.
[v2]
https://www.redhat.com/archives/libvir-list/2020-June/msg01318.html
[v1]
https://www.redhat.com/archives/libvir-list/2020-June/msg01305.html
Andrea Bolognani (1):
cirrus: Generate jobs dynamically
.gitlab-ci.yml | 36 ++++++++++++++-
ci/cirrus/build.yml | 26 +++++++++++
ci/cirrus/freebsd-12.yml.j2 | 73 -------------------------------
ci/cirrus/libvirt-freebsd-12.vars | 7 +++
ci/cirrus/libvirt-macos-1015.vars | 7 +++
ci/cirrus/macos-1015.yml.j2 | 38 ----------------
ci/cirrus/refresh | 22 ++++++++++
7 files changed, 97 insertions(+), 112 deletions(-)
create mode 100644 ci/cirrus/build.yml
delete mode 100644 ci/cirrus/freebsd-12.yml.j2
create mode 100644 ci/cirrus/libvirt-freebsd-12.vars
create mode 100644 ci/cirrus/libvirt-macos-1015.vars
delete mode 100644 ci/cirrus/macos-1015.yml.j2
create mode 100755 ci/cirrus/refresh
--
2.25.4