diff options
author | Daniel P. Berrangé <berrange@redhat.com> | 2022-03-11 13:56:40 +0000 |
---|---|---|
committer | Daniel P. Berrangé <berrange@redhat.com> | 2022-05-11 13:22:21 +0100 |
commit | a8d5a434ec22a1e31519766bf49cbbf97f60de70 (patch) | |
tree | 3250a98003bfa8307338ab1c7aa17131aa9f05aa | |
parent | a49206973dc028d653c953e2bf7a0b689abca3d1 (diff) | |
download | libvirt-ci-a8d5a434ec22a1e31519766bf49cbbf97f60de70.zip libvirt-ci-a8d5a434ec22a1e31519766bf49cbbf97f60de70.tar.gz libvirt-ci-a8d5a434ec22a1e31519766bf49cbbf97f60de70.tar.bz2 |
lcitool/manifest: split gitlab build jobs into separate file
Currently ci/gitlab.yml contains all the generated build logic.
This continues from the previous commit by splitting the build jobs
into a separate file called 'ci/gitlab/builds.yml'
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
-rw-r--r-- | guests/lcitool/lcitool/manifest.py | 13 | ||||
-rw-r--r-- | guests/lcitool/tests/data/manifest/out/ci/gitlab.yml | 79 | ||||
-rw-r--r-- | guests/lcitool/tests/data/manifest/out/ci/gitlab/builds.yml | 77 | ||||
-rw-r--r-- | guests/lcitool/tests/test_manifest.py | 1 |
4 files changed, 87 insertions, 83 deletions
diff --git a/guests/lcitool/lcitool/manifest.py b/guests/lcitool/lcitool/manifest.py index da38f53..a5cd5dc 100644 --- a/guests/lcitool/lcitool/manifest.py +++ b/guests/lcitool/lcitool/manifest.py @@ -275,7 +275,6 @@ class Manifest: project = gitlabinfo["project"] jobinfo = gitlabinfo["jobs"] - gitlabcontent = [] includes = [] if gitlabinfo["containers"]: path = Path(gitlabdir, "container-templates.yml") @@ -318,12 +317,16 @@ class Manifest: includes.append(path) if gitlabinfo["builds"]: - gitlabcontent.extend(self._generate_gitlab_native_build_jobs()) - gitlabcontent.extend(self._generate_gitlab_cross_build_jobs()) - gitlabcontent.extend(self._generate_gitlab_cirrus_build_jobs()) + path = Path(gitlabdir, "builds.yml") + content = [] + content.extend(self._generate_gitlab_native_build_jobs()) + content.extend(self._generate_gitlab_cross_build_jobs()) + content.extend(self._generate_gitlab_cirrus_build_jobs()) + self._replace_file(content, path, dryrun) + includes.append(path) path = Path(self.cidir, "gitlab.yml") - content = [gitlab.includes(includes)] + gitlabcontent + content = [gitlab.includes(includes)] self._replace_file(content, path, dryrun) def _generate_gitlab_container_jobs(self, cross): diff --git a/guests/lcitool/tests/data/manifest/out/ci/gitlab.yml b/guests/lcitool/tests/data/manifest/out/ci/gitlab.yml index 9e850a2..79a967f 100644 --- a/guests/lcitool/tests/data/manifest/out/ci/gitlab.yml +++ b/guests/lcitool/tests/data/manifest/out/ci/gitlab.yml @@ -3,81 +3,4 @@ include: - local: 'ci/gitlab/build-templates.yml' - local: 'ci/gitlab/sanity-checks.yml' - local: 'ci/gitlab/containers.yml' - -# Native build jobs - -x86_64-centos-stream-9: - extends: .native_build_job - needs: - - x86_64-centos-stream-9-container - allow_failure: false - variables: - NAME: centos-stream-9 - - -x86_64-fedora-rawhide-clang: - extends: .native_build_job - needs: - - x86_64-fedora-rawhide-container - allow_failure: false - variables: - CC: clang - NAME: fedora-rawhide - - - -# Cross build jobs - -i686-debian-sid: - extends: .cross_build_job - needs: - - i686-debian-sid-container - allow_failure: false - variables: - CROSS: i686 - NAME: debian-sid - artifacts: - expire_in: 2 days - paths: - - build - - scratch - - -mingw32-fedora-rawhide: - extends: .cross_build_job - needs: - - mingw32-fedora-rawhide-container - allow_failure: false - variables: - CROSS: mingw32 - NAME: fedora-rawhide - - -# Native cirrus build jobs - -x86_64-freebsd-current: - extends: .cirrus_build_job - needs: [] - allow_failure: false - variables: - CIRRUS_VM_IMAGE_NAME: freebsd-13-0-snap - CIRRUS_VM_IMAGE_SELECTOR: image_family - CIRRUS_VM_INSTANCE_TYPE: freebsd_instance - INSTALL_COMMAND: pkg install -y - NAME: freebsd-current - UPDATE_COMMAND: pkg update - UPGRADE_COMMAND: pkg upgrade -y - - -x86_64-macos-11: - extends: .cirrus_build_job - needs: [] - allow_failure: false - variables: - CIRRUS_VM_IMAGE_NAME: big-sur-base - CIRRUS_VM_IMAGE_SELECTOR: image - CIRRUS_VM_INSTANCE_TYPE: osx_instance - INSTALL_COMMAND: brew install - NAME: macos-11 - UPDATE_COMMAND: brew update - UPGRADE_COMMAND: brew upgrade + - local: 'ci/gitlab/builds.yml' diff --git a/guests/lcitool/tests/data/manifest/out/ci/gitlab/builds.yml b/guests/lcitool/tests/data/manifest/out/ci/gitlab/builds.yml new file mode 100644 index 0000000..3e1f87b --- /dev/null +++ b/guests/lcitool/tests/data/manifest/out/ci/gitlab/builds.yml @@ -0,0 +1,77 @@ +# Native build jobs + +x86_64-centos-stream-9: + extends: .native_build_job + needs: + - x86_64-centos-stream-9-container + allow_failure: false + variables: + NAME: centos-stream-9 + + +x86_64-fedora-rawhide-clang: + extends: .native_build_job + needs: + - x86_64-fedora-rawhide-container + allow_failure: false + variables: + CC: clang + NAME: fedora-rawhide + + + +# Cross build jobs + +i686-debian-sid: + extends: .cross_build_job + needs: + - i686-debian-sid-container + allow_failure: false + variables: + CROSS: i686 + NAME: debian-sid + artifacts: + expire_in: 2 days + paths: + - build + - scratch + + +mingw32-fedora-rawhide: + extends: .cross_build_job + needs: + - mingw32-fedora-rawhide-container + allow_failure: false + variables: + CROSS: mingw32 + NAME: fedora-rawhide + + +# Native cirrus build jobs + +x86_64-freebsd-current: + extends: .cirrus_build_job + needs: [] + allow_failure: false + variables: + CIRRUS_VM_IMAGE_NAME: freebsd-13-0-snap + CIRRUS_VM_IMAGE_SELECTOR: image_family + CIRRUS_VM_INSTANCE_TYPE: freebsd_instance + INSTALL_COMMAND: pkg install -y + NAME: freebsd-current + UPDATE_COMMAND: pkg update + UPGRADE_COMMAND: pkg upgrade -y + + +x86_64-macos-11: + extends: .cirrus_build_job + needs: [] + allow_failure: false + variables: + CIRRUS_VM_IMAGE_NAME: big-sur-base + CIRRUS_VM_IMAGE_SELECTOR: image + CIRRUS_VM_INSTANCE_TYPE: osx_instance + INSTALL_COMMAND: brew install + NAME: macos-11 + UPDATE_COMMAND: brew update + UPGRADE_COMMAND: brew upgrade diff --git a/guests/lcitool/tests/test_manifest.py b/guests/lcitool/tests/test_manifest.py index 81dd2a5..00e3792 100644 --- a/guests/lcitool/tests/test_manifest.py +++ b/guests/lcitool/tests/test_manifest.py @@ -117,6 +117,7 @@ def test_generate(monkeypatch, custom_projects): assert_write(Path("ci", "gitlab", "container-templates.yml")) assert_write(Path("ci", "gitlab", "containers.yml")) assert_write(Path("ci", "gitlab", "build-templates.yml")) + assert_write(Path("ci", "gitlab", "builds.yml")) assert_write(Path("ci", "gitlab", "sanity-checks.yml")) assert_write(Path("ci", "cirrus", "freebsd-current.vars")) assert_write(Path("ci", "cirrus", "macos-11.vars")) |