On Thu, Sep 23, 2021 at 04:40:59PM +0200, Martin Kletzander wrote: > This makes it a bit easier to write .gitlab-ci.yml as it inherits most of what > can be generated from the ci/gitlab.yml and deprecates the ci/refresh script. > > Signed-off-by: Martin Kletzander <[email protected]>
Looks fine, ACK Just missed 1.10 by about 15 minutes :-) Rich. > .gitlab-ci.yml | 270 +----------- > ci/README.rst | 7 +- > ci/cirrus/freebsd-12.vars | 2 +- > ci/cirrus/freebsd-13.vars | 2 +- > ci/cirrus/freebsd-current.vars | 2 +- > ci/cirrus/macos-11.vars | 2 +- > ci/containers/alpine-314.Dockerfile | 2 +- > ci/containers/alpine-edge.Dockerfile | 2 +- > ci/containers/centos-8.Dockerfile | 2 +- > ci/containers/centos-stream-8.Dockerfile | 2 +- > ci/containers/debian-10-cross-i686.Dockerfile | 2 +- > ci/containers/debian-10.Dockerfile | 2 +- > ci/containers/debian-11-cross-i686.Dockerfile | 2 +- > ci/containers/debian-11.Dockerfile | 2 +- > ci/containers/debian-sid.Dockerfile | 2 +- > ci/containers/fedora-33.Dockerfile | 2 +- > ci/containers/fedora-34-cross-i686.Dockerfile | 0 > ci/containers/fedora-34.Dockerfile | 2 +- > ci/containers/fedora-rawhide.Dockerfile | 2 +- > ci/containers/opensuse-leap-152.Dockerfile | 2 +- > ci/containers/opensuse-tumbleweed.Dockerfile | 2 +- > ci/containers/ubuntu-1804.Dockerfile | 2 +- > ci/containers/ubuntu-2004.Dockerfile | 2 +- > ci/gitlab.yml | 413 ++++++++++++++++++ > ci/manifest.yml | 72 +++ > ci/refresh | 33 -- > 26 files changed, 520 insertions(+), 315 deletions(-) > delete mode 100644 ci/containers/fedora-34-cross-i686.Dockerfile > create mode 100644 ci/gitlab.yml > create mode 100644 ci/manifest.yml > delete mode 100755 ci/refresh > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml > index 8976015b1e20..122bc0860178 100644 > --- a/.gitlab-ci.yml > +++ b/.gitlab-ci.yml > @@ -13,30 +13,10 @@ stages: > export CCACHE_MAXSIZE="500M" > export PATH="$CCACHE_WRAPPERSDIR:$PATH" > > -# Common templates > - > -.container_job: > - image: docker:stable > - stage: containers > - needs: [] > - services: > - - name: registry.gitlab.com/libvirt/libvirt-ci/docker-dind:master > - alias: docker > - before_script: > - - export TAG="$CI_REGISTRY_IMAGE/$NAME:latest" > - - export COMMON_TAG="$CI_REGISTRY/nbdkit/libnbd/$NAME:latest" > - - docker info > - - docker login registry.gitlab.com -u "$CI_REGISTRY_USER" -p > "$CI_REGISTRY_PASSWORD" > - script: > - - docker pull "$TAG" || docker pull "$COMMON_TAG" || true > - - docker build --cache-from "$TAG" --cache-from "$COMMON_TAG" --tag > "$TAG" -f "ci/containers/$NAME.Dockerfile" ci/containers > - - docker push "$TAG" > - after_script: > - - docker logout > +include: '/ci/gitlab.yml' > > .base_build_job: > stage: builds > - image: $CI_REGISTRY_IMAGE/$NAME:latest > cache: > paths: > - ccache/ > @@ -52,6 +32,16 @@ stages: > public: true > when: always > > +.native_build_job: > + extends: > + - .base_build_job > + - .gitlab_native_build_job > + > +.cross_build_job: > + extends: > + - .base_build_job > + - .gitlab_cross_build_job > + > # Jobs that we delegate to Cirrus CI because they require an operating > # system other than Linux. These jobs will only run if the required > # setup has been performed on the GitLab account (see ci/README.rst). > @@ -91,241 +81,3 @@ stages: > - cirrus-run -v --show-build-log always ci/cirrus/$NAME.yml > rules: > - if: "$CIRRUS_GITHUB_REPO && $CIRRUS_API_TOKEN" > - > -# Cross-compilation container build jobs > -i686-debian-10-container: > - extends: .container_job > - variables: > - NAME: debian-10-cross-i686 > - > -i686-debian-11-container: > - extends: .container_job > - variables: > - NAME: debian-11-cross-i686 > - > -# Native container build jobs > -x64-alpine-314-container: > - extends: .container_job > - variables: > - NAME: alpine-314 > - > -x64-alpine-edge-container: > - extends: .container_job > - variables: > - NAME: alpine-edge > - > -x64-centos-8-container: > - extends: .container_job > - variables: > - NAME: centos-8 > - > -x64-centos-stream-8-container: > - extends: .container_job > - variables: > - NAME: centos-stream-8 > - > -x64-debian-11-container: > - extends: .container_job > - variables: > - NAME: debian-11 > - > -x64-debian-sid-container: > - extends: .container_job > - variables: > - NAME: debian-sid > - > -x64-fedora-33-container: > - extends: .container_job > - variables: > - NAME: fedora-33 > - > -x64-fedora-34-container: > - extends: .container_job > - variables: > - NAME: fedora-34 > - > -x64-fedora-rawhide-container: > - extends: .container_job > - allow_failure: true > - variables: > - NAME: fedora-rawhide > - > -x64-opensuse-leap-152-container: > - extends: .container_job > - variables: > - NAME: opensuse-leap-152 > - > -x64-opensuse-tumbleweed-container: > - extends: .container_job > - variables: > - NAME: opensuse-tumbleweed > - > -x64-ubuntu-1804-container: > - extends: .container_job > - variables: > - NAME: ubuntu-1804 > - > -x64-ubuntu-2004-container: > - extends: .container_job > - variables: > - NAME: ubuntu-2004 > - > -# Cross-compilation build jobs > -i686-debian-10: > - extends: .base_build_job > - needs: > - - i686-debian-10-container > - variables: > - NAME: debian-10-cross-i686 > - CROSS: i686 > - > -i686-debian-11: > - extends: .base_build_job > - needs: > - - i686-debian-11-container > - variables: > - NAME: debian-11-cross-i686 > - CROSS: i686 > - > -# Native architecture build + test jobs > -x64-debian-11: > - extends: .base_build_job > - needs: > - - x64-debian-11-container > - variables: > - NAME: debian-11 > - > -x64-debian-sid: > - extends: .base_build_job > - needs: > - - x64-debian-sid-container > - variables: > - NAME: debian-sid > - > -x64-centos-8: > - extends: .base_build_job > - needs: > - - x64-centos-8-container > - variables: > - NAME: centos-8 > - > -x64-alpine-314: > - extends: .base_build_job > - needs: > - - x64-alpine-314-container > - variables: > - NAME: alpine-314 > - > -x64-alpine-edge: > - extends: .base_build_job > - needs: > - - x64-alpine-edge-container > - variables: > - NAME: alpine-edge > - > -x64-centos-8-clang: > - extends: .base_build_job > - needs: > - - x64-centos-8-container > - variables: > - NAME: centos-8 > - CC: clang > - > -x64-centos-stream-8: > - extends: .base_build_job > - needs: > - - x64-centos-stream-8-container > - variables: > - NAME: centos-stream-8 > - > -x64-fedora-33: > - extends: .base_build_job > - needs: > - - x64-fedora-33-container > - variables: > - NAME: fedora-33 > - > -x64-fedora-34: > - extends: .base_build_job > - needs: > - - x64-fedora-34-container > - variables: > - NAME: fedora-34 > - > -x64-fedora-rawhide: > - extends: .base_build_job > - needs: > - - x64-fedora-rawhide-container > - variables: > - NAME: fedora-rawhide > - > -x64-fedora-rawhide-clang: > - extends: .base_build_job > - needs: > - - x64-fedora-rawhide-container > - variables: > - NAME: fedora-rawhide > - CC: clang > - > -x64-opensuse-leap-152: > - extends: .base_build_job > - needs: > - - x64-opensuse-leap-152-container > - variables: > - NAME: opensuse-leap-152 > - > -x64-opensuse-tumbleweed: > - extends: .base_build_job > - needs: > - - x64-opensuse-tumbleweed-container > - variables: > - NAME: opensuse-tumbleweed > - > -x64-ubuntu-1804: > - extends: .base_build_job > - needs: > - - x64-ubuntu-1804-container > - variables: > - NAME: ubuntu-1804 > - GOLANG: skip > - > -x64-ubuntu-2004: > - extends: .base_build_job > - needs: > - - x64-ubuntu-2004-container > - variables: > - NAME: ubuntu-2004 > - > -x64-freebsd-12-build: > - extends: .cirrus_build_job > - variables: > - NAME: freebsd-12 > - CIRRUS_VM_INSTANCE_TYPE: freebsd_instance > - CIRRUS_VM_IMAGE_SELECTOR: image_family > - CIRRUS_VM_IMAGE_NAME: freebsd-12-2 > - UPDATE_COMMAND: pkg update > - INSTALL_COMMAND: pkg install -y > - > -x64-freebsd-13-build: > - extends: .cirrus_build_job > - variables: > - NAME: freebsd-13 > - CIRRUS_VM_INSTANCE_TYPE: freebsd_instance > - CIRRUS_VM_IMAGE_SELECTOR: image_family > - CIRRUS_VM_IMAGE_NAME: freebsd-13-0 > - UPDATE_COMMAND: pkg update > - INSTALL_COMMAND: pkg install -y > - > -x64-macos-11-build: > - extends: .cirrus_build_job > - allow_failure: true > - variables: > - NAME: macos-11 > - CIRRUS_VM_INSTANCE_TYPE: osx_instance > - CIRRUS_VM_IMAGE_SELECTOR: image > - CIRRUS_VM_IMAGE_NAME: big-sur-base > - UPDATE_COMMAND: brew update > - UPGRADE_COMMAND: brew upgrade > - INSTALL_COMMAND: brew install > - PATH_EXTRA: > /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/bin > - PKG_CONFIG_PATH: > /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig > diff --git a/ci/README.rst b/ci/README.rst > index c1c97362e41f..3d11e3a4d8bc 100644 > --- a/ci/README.rst > +++ b/ci/README.rst > @@ -35,9 +35,10 @@ Container images are prepared during the build and cached, > so that they do not > need to be rebuilt for every run, or even built from scratch when changed > slightly. The cached container images can be deleted at any time as they will > be correctly rebuilt in case of a cache miss. The Dockerfiles are generated > -using ``lcitool`` and stored under ``ci/containers``. In that directory is > also > -a ``refresh`` script which can regenerate those files, for example after an > -update to libvirt-ci (e.g. when adding a new dependency). > +using ``lcitool`` and stored under ``ci/containers``. In order to update the > +files one needs to run ``lcitool manifest ci/manifest.yml`` from the root of > the > +git repository, for example after an update to libvirt-ci (e.g. when adding a > +new dependency). > > Recreating the builds locally is pretty straightforward. Choose a file from > ``ci/containers`` which represents the desired setup. In this example let's > diff --git a/ci/cirrus/freebsd-12.vars b/ci/cirrus/freebsd-12.vars > index 2573de241849..6f2b76ce5d11 100644 > --- a/ci/cirrus/freebsd-12.vars > +++ b/ci/cirrus/freebsd-12.vars > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool variables freebsd-12 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/cirrus/freebsd-13.vars b/ci/cirrus/freebsd-13.vars > index 40e8ddd43e49..6f2b76ce5d11 100644 > --- a/ci/cirrus/freebsd-13.vars > +++ b/ci/cirrus/freebsd-13.vars > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool variables freebsd-13 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/cirrus/freebsd-current.vars b/ci/cirrus/freebsd-current.vars > index 73dff989ffb4..6f2b76ce5d11 100644 > --- a/ci/cirrus/freebsd-current.vars > +++ b/ci/cirrus/freebsd-current.vars > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool variables freebsd-current libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/cirrus/macos-11.vars b/ci/cirrus/macos-11.vars > index eae75535a960..89bda78fd154 100644 > --- a/ci/cirrus/macos-11.vars > +++ b/ci/cirrus/macos-11.vars > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool variables macos-11 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/alpine-314.Dockerfile > b/ci/containers/alpine-314.Dockerfile > index 0fb954abb66b..82960f71ecff 100644 > --- a/ci/containers/alpine-314.Dockerfile > +++ b/ci/containers/alpine-314.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile alpine-314 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/alpine-edge.Dockerfile > b/ci/containers/alpine-edge.Dockerfile > index e27775d647fb..3e9fbfa223eb 100644 > --- a/ci/containers/alpine-edge.Dockerfile > +++ b/ci/containers/alpine-edge.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile alpine-edge libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/centos-8.Dockerfile > b/ci/containers/centos-8.Dockerfile > index 1e05d4cda98a..d46b428f726c 100644 > --- a/ci/containers/centos-8.Dockerfile > +++ b/ci/containers/centos-8.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile centos-8 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/centos-stream-8.Dockerfile > b/ci/containers/centos-stream-8.Dockerfile > index 8f2dff57b3a3..613d05d6ec0c 100644 > --- a/ci/containers/centos-stream-8.Dockerfile > +++ b/ci/containers/centos-stream-8.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile centos-stream-8 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/debian-10-cross-i686.Dockerfile > b/ci/containers/debian-10-cross-i686.Dockerfile > index c7c8dca8df4e..5641f58b71fe 100644 > --- a/ci/containers/debian-10-cross-i686.Dockerfile > +++ b/ci/containers/debian-10-cross-i686.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile --cross i686 debian-10 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/debian-10.Dockerfile > b/ci/containers/debian-10.Dockerfile > index fbea28350a06..6cc51ec44de2 100644 > --- a/ci/containers/debian-10.Dockerfile > +++ b/ci/containers/debian-10.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile debian-10 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/debian-11-cross-i686.Dockerfile > b/ci/containers/debian-11-cross-i686.Dockerfile > index e0d4fc15961d..fe19aa21c2ed 100644 > --- a/ci/containers/debian-11-cross-i686.Dockerfile > +++ b/ci/containers/debian-11-cross-i686.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile --cross i686 debian-11 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/debian-11.Dockerfile > b/ci/containers/debian-11.Dockerfile > index c817870daa73..cb52e7eb4db3 100644 > --- a/ci/containers/debian-11.Dockerfile > +++ b/ci/containers/debian-11.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile debian-11 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/debian-sid.Dockerfile > b/ci/containers/debian-sid.Dockerfile > index 909b772c473f..e5a3b663b105 100644 > --- a/ci/containers/debian-sid.Dockerfile > +++ b/ci/containers/debian-sid.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile debian-sid libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/fedora-33.Dockerfile > b/ci/containers/fedora-33.Dockerfile > index 353aa0d1e789..9c0bfa954182 100644 > --- a/ci/containers/fedora-33.Dockerfile > +++ b/ci/containers/fedora-33.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile fedora-33 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/fedora-34-cross-i686.Dockerfile > b/ci/containers/fedora-34-cross-i686.Dockerfile > deleted file mode 100644 > index e69de29bb2d1..000000000000 > diff --git a/ci/containers/fedora-34.Dockerfile > b/ci/containers/fedora-34.Dockerfile > index 35d84cc3e0f2..b3f57abfd096 100644 > --- a/ci/containers/fedora-34.Dockerfile > +++ b/ci/containers/fedora-34.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile fedora-34 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/fedora-rawhide.Dockerfile > b/ci/containers/fedora-rawhide.Dockerfile > index acbb61f0e74a..49c3e69cc7d6 100644 > --- a/ci/containers/fedora-rawhide.Dockerfile > +++ b/ci/containers/fedora-rawhide.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile fedora-rawhide libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/opensuse-leap-152.Dockerfile > b/ci/containers/opensuse-leap-152.Dockerfile > index 050ec442151e..330399253786 100644 > --- a/ci/containers/opensuse-leap-152.Dockerfile > +++ b/ci/containers/opensuse-leap-152.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile opensuse-leap-152 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/opensuse-tumbleweed.Dockerfile > b/ci/containers/opensuse-tumbleweed.Dockerfile > index bbcdd3220094..96d4298a5db1 100644 > --- a/ci/containers/opensuse-tumbleweed.Dockerfile > +++ b/ci/containers/opensuse-tumbleweed.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile opensuse-tumbleweed libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/ubuntu-1804.Dockerfile > b/ci/containers/ubuntu-1804.Dockerfile > index 72dc53b39c13..a172a0cbac4e 100644 > --- a/ci/containers/ubuntu-1804.Dockerfile > +++ b/ci/containers/ubuntu-1804.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile ubuntu-1804 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/containers/ubuntu-2004.Dockerfile > b/ci/containers/ubuntu-2004.Dockerfile > index 6a11fae8d27c..88ea6cfe70dd 100644 > --- a/ci/containers/ubuntu-2004.Dockerfile > +++ b/ci/containers/ubuntu-2004.Dockerfile > @@ -1,6 +1,6 @@ > # THIS FILE WAS AUTO-GENERATED > # > -# $ lcitool dockerfile ubuntu-2004 libnbd > +# $ lcitool manifest ci/manifest.yml > # > # https://gitlab.com/libvirt/libvirt-ci > > diff --git a/ci/gitlab.yml b/ci/gitlab.yml > new file mode 100644 > index 000000000000..df3f68ad5587 > --- /dev/null > +++ b/ci/gitlab.yml > @@ -0,0 +1,413 @@ > +# THIS FILE WAS AUTO-GENERATED > +# > +# $ lcitool manifest ci/manifest.yml > +# > +# https://gitlab.com/libvirt/libvirt-ci > + > + > +.container_job: > + image: docker:stable > + stage: containers > + needs: [] > + services: > + - name: registry.gitlab.com/libvirt/libvirt-ci/docker-dind:master > + alias: docker > + before_script: > + - export TAG="$CI_REGISTRY_IMAGE/ci-$NAME:latest" > + - export COMMON_TAG="$CI_REGISTRY/nbdkit/libnbd/ci-$NAME:latest" > + - docker info > + - docker login registry.gitlab.com -u "$CI_REGISTRY_USER" -p > "$CI_REGISTRY_PASSWORD" > + script: > + - docker pull "$TAG" || docker pull "$COMMON_TAG" || true > + - docker build --cache-from "$TAG" --cache-from "$COMMON_TAG" --tag > "$TAG" -f "ci/containers/$NAME.Dockerfile" ci/containers > + - docker push "$TAG" > + after_script: > + - docker logout > + > + > +.gitlab_native_build_job: > + image: $CI_REGISTRY_IMAGE/ci-$NAME:latest > + stage: builds > + > + > +.gitlab_cross_build_job: > + image: $CI_REGISTRY_IMAGE/ci-$NAME-cross-$CROSS:latest > + stage: builds > + > + > +.cirrus_build_job: > + stage: builds > + image: registry.gitlab.com/libvirt/libvirt-ci/cirrus-run:master > + needs: [] > + script: > + - source ci/cirrus/$NAME.vars > + - sed -e "s|[@]CI_REPOSITORY_URL@|$CI_REPOSITORY_URL|g" > + -e "s|[@]CI_COMMIT_REF_NAME@|$CI_COMMIT_REF_NAME|g" > + -e "s|[@]CI_COMMIT_SHA@|$CI_COMMIT_SHA|g" > + -e "s|[@]CIRRUS_VM_INSTANCE_TYPE@|$CIRRUS_VM_INSTANCE_TYPE|g" > + -e "s|[@]CIRRUS_VM_IMAGE_SELECTOR@|$CIRRUS_VM_IMAGE_SELECTOR|g" > + -e "s|[@]CIRRUS_VM_IMAGE_NAME@|$CIRRUS_VM_IMAGE_NAME|g" > + -e "s|[@]UPDATE_COMMAND@|$UPDATE_COMMAND|g" > + -e "s|[@]UPGRADE_COMMAND@|$UPGRADE_COMMAND|g" > + -e "s|[@]INSTALL_COMMAND@|$INSTALL_COMMAND|g" > + -e "s|[@]PATH@|$PATH_EXTRA${PATH_EXTRA:+:}\$PATH|g" > + -e "s|[@]PKG_CONFIG_PATH@|$PKG_CONFIG_PATH|g" > + -e "s|[@]PKGS@|$PKGS|g" > + -e "s|[@]MAKE@|$MAKE|g" > + -e "s|[@]PYTHON@|$PYTHON|g" > + -e "s|[@]PIP3@|$PIP3|g" > + -e "s|[@]PYPI_PKGS@|$PYPI_PKGS|g" > + -e "s|[@]XML_CATALOG_FILES@|$XML_CATALOG_FILES|g" > + <ci/cirrus/build.yml >ci/cirrus/$NAME.yml > + - cat ci/cirrus/$NAME.yml > + - cirrus-run -v --show-build-log always ci/cirrus/$NAME.yml > + rules: > + - if: "$CIRRUS_GITHUB_REPO && $CIRRUS_API_TOKEN" > + > + > +# Native container jobs > + > +x86_64-alpine-314-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: alpine-314 > + > + > +x86_64-alpine-edge-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: alpine-edge > + > + > +x86_64-centos-8-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: centos-8 > + > + > +x86_64-centos-stream-8-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: centos-stream-8 > + > + > +x86_64-debian-10-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: debian-10 > + > + > +x86_64-debian-11-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: debian-11 > + > + > +x86_64-debian-sid-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: debian-sid > + > + > +x86_64-fedora-33-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: fedora-33 > + > + > +x86_64-fedora-34-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: fedora-34 > + > + > +x86_64-fedora-rawhide-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: fedora-rawhide > + > + > +x86_64-opensuse-leap-152-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: opensuse-leap-152 > + > + > +x86_64-opensuse-tumbleweed-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: opensuse-tumbleweed > + > + > +x86_64-ubuntu-1804-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: ubuntu-1804 > + > + > +x86_64-ubuntu-2004-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: ubuntu-2004 > + > + > + > +# Cross container jobs > + > +i686-debian-10-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: debian-10-cross-i686 > + > + > +i686-debian-11-container: > + extends: .container_job > + allow_failure: false > + variables: > + NAME: debian-11-cross-i686 > + > + > +# Native build jobs > + > +x86_64-alpine-314: > + extends: .native_build_job > + needs: > + - x86_64-alpine-314-container > + allow_failure: false > + variables: > + NAME: alpine-314 > + > + > +x86_64-alpine-edge: > + extends: .native_build_job > + needs: > + - x86_64-alpine-edge-container > + allow_failure: false > + variables: > + NAME: alpine-edge > + > + > +x86_64-centos-8: > + extends: .native_build_job > + needs: > + - x86_64-centos-8-container > + allow_failure: false > + variables: > + NAME: centos-8 > + > + > +x86_64-centos-8-clang: > + extends: .native_build_job > + needs: > + - x86_64-centos-8-container > + allow_failure: false > + variables: > + NAME: centos-8 > + CC: clang > + > + > +x86_64-centos-stream-8: > + extends: .native_build_job > + needs: > + - x86_64-centos-stream-8-container > + allow_failure: false > + variables: > + NAME: centos-stream-8 > + > + > +x86_64-debian-10: > + extends: .native_build_job > + needs: > + - x86_64-debian-10-container > + allow_failure: false > + variables: > + NAME: debian-10 > + > + > +x86_64-debian-11: > + extends: .native_build_job > + needs: > + - x86_64-debian-11-container > + allow_failure: false > + variables: > + NAME: debian-11 > + > + > +x86_64-debian-sid: > + extends: .native_build_job > + needs: > + - x86_64-debian-sid-container > + allow_failure: false > + variables: > + NAME: debian-sid > + > + > +x86_64-fedora-33: > + extends: .native_build_job > + needs: > + - x86_64-fedora-33-container > + allow_failure: false > + variables: > + NAME: fedora-33 > + > + > +x86_64-fedora-34: > + extends: .native_build_job > + needs: > + - x86_64-fedora-34-container > + allow_failure: false > + variables: > + NAME: fedora-34 > + > + > +x86_64-fedora-rawhide: > + extends: .native_build_job > + needs: > + - x86_64-fedora-rawhide-container > + allow_failure: false > + variables: > + NAME: fedora-rawhide > + > + > +x86_64-fedora-rawhide-clang: > + extends: .native_build_job > + needs: > + - x86_64-fedora-rawhide-container > + allow_failure: false > + variables: > + NAME: fedora-rawhide > + CC: clang > + > + > +x86_64-opensuse-leap-152: > + extends: .native_build_job > + needs: > + - x86_64-opensuse-leap-152-container > + allow_failure: false > + variables: > + NAME: opensuse-leap-152 > + > + > +x86_64-opensuse-tumbleweed: > + extends: .native_build_job > + needs: > + - x86_64-opensuse-tumbleweed-container > + allow_failure: false > + variables: > + NAME: opensuse-tumbleweed > + > + > +x86_64-ubuntu-1804: > + extends: .native_build_job > + needs: > + - x86_64-ubuntu-1804-container > + allow_failure: false > + variables: > + NAME: ubuntu-1804 > + > + > +x86_64-ubuntu-2004: > + extends: .native_build_job > + needs: > + - x86_64-ubuntu-2004-container > + allow_failure: false > + variables: > + NAME: ubuntu-2004 > + > + > + > +# Cross build jobs > + > +i686-debian-10: > + extends: .cross_build_job > + needs: > + - i686-debian-10-container > + allow_failure: false > + variables: > + NAME: debian-10 > + CROSS: i686 > + > + > +i686-debian-11: > + extends: .cross_build_job > + needs: > + - i686-debian-11-container > + allow_failure: false > + variables: > + NAME: debian-11 > + CROSS: i686 > + > + > +# Native cirrus build jobs > + > +x86_64-freebsd-12: > + extends: .cirrus_build_job > + needs: [] > + allow_failure: false > + variables: > + NAME: freebsd-12 > + CIRRUS_VM_INSTANCE_TYPE: freebsd_instance > + CIRRUS_VM_IMAGE_SELECTOR: image_family > + CIRRUS_VM_IMAGE_NAME: freebsd-12-2 > + UPDATE_COMMAND: pkg update > + UPGRADE_COMMAND: pkg upgrade -y > + INSTALL_COMMAND: pkg install -y > + > + > +x86_64-freebsd-13: > + extends: .cirrus_build_job > + needs: [] > + allow_failure: false > + variables: > + NAME: freebsd-13 > + CIRRUS_VM_INSTANCE_TYPE: freebsd_instance > + CIRRUS_VM_IMAGE_SELECTOR: image_family > + CIRRUS_VM_IMAGE_NAME: freebsd-13-0 > + UPDATE_COMMAND: pkg update > + UPGRADE_COMMAND: pkg upgrade -y > + INSTALL_COMMAND: pkg install -y > + > + > +x86_64-freebsd-current: > + extends: .cirrus_build_job > + needs: [] > + allow_failure: false > + variables: > + NAME: freebsd-current > + CIRRUS_VM_INSTANCE_TYPE: freebsd_instance > + CIRRUS_VM_IMAGE_SELECTOR: image_family > + CIRRUS_VM_IMAGE_NAME: freebsd-13-0-snap > + UPDATE_COMMAND: pkg update > + UPGRADE_COMMAND: pkg upgrade -y > + INSTALL_COMMAND: pkg install -y > + > + > +x86_64-macos-11: > + extends: .cirrus_build_job > + needs: [] > + allow_failure: false > + variables: > + NAME: macos-11 > + CIRRUS_VM_INSTANCE_TYPE: osx_instance > + CIRRUS_VM_IMAGE_SELECTOR: image > + CIRRUS_VM_IMAGE_NAME: big-sur-base > + UPDATE_COMMAND: brew update > + UPGRADE_COMMAND: brew upgrade > + INSTALL_COMMAND: brew install > + PATH_EXTRA: > /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/bin > + PKG_CONFIG_PATH: > /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig > diff --git a/ci/manifest.yml b/ci/manifest.yml > new file mode 100644 > index 000000000000..2439ed01eea2 > --- /dev/null > +++ b/ci/manifest.yml > @@ -0,0 +1,72 @@ > +projects: > + - libnbd > + > +gitlab: > + namespace: nbdkit > + project: libnbd > + jobs: > + check-dco: false > + > +targets: > + alpine-314: x86_64 > + > + alpine-edge: x86_64 > + > + centos-8: > + jobs: > + - arch: x86_64 > + > + - arch: x86_64 > + suffix: -clang > + variables: > + CC: clang > + > + centos-stream-8: x86_64 > + > + debian-10: > + jobs: > + - arch: x86_64 > + - arch: i686 > + > + debian-11: > + jobs: > + - arch: x86_64 > + - arch: i686 > + > + debian-sid: x86_64 > + > + fedora-33: x86_64 > + > + fedora-34: x86_64 > + > + fedora-rawhide: > + jobs: > + - arch: x86_64 > + > + - arch: x86_64 > + suffix: -clang > + variables: > + CC: clang > + > + freebsd-12: x86_64 > + > + freebsd-13: x86_64 > + > + freebsd-current: x86_64 > + > + opensuse-leap-152: x86_64 > + > + opensuse-tumbleweed: x86_64 > + > + macos-11: > + jobs: > + - arch: x86_64 > + variables: > + PATH_EXTRA: > /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/bin > + PKG_CONFIG_PATH: > /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig > + > + ubuntu-1804: x86_64 > + > + ubuntu-2004: > + jobs: > + - arch: x86_64 > diff --git a/ci/refresh b/ci/refresh > deleted file mode 100755 > index 8a276e42dec6..000000000000 > --- a/ci/refresh > +++ /dev/null > @@ -1,33 +0,0 @@ > -#!/bin/sh > - > -if test -z "$1" > -then > - echo "syntax: $0 PATH-TO-LCITOOL" > - exit 1 > -fi > - > -LCITOOL=$1 > - > -if ! test -x "$LCITOOL" > -then > - echo "$LCITOOL is not executable" > - exit 1 > -fi > - > -ci_path=$(dirname "$0") > - > -for target in $($LCITOOL targets) > -do > - if echo "$target" | grep -q -e 'freebsd' -e 'macos' > - then > - $LCITOOL variables "$target" libnbd >"$ci_path/cirrus/$target.vars" > - else > - if test "$target" = "debian-11" -o "$target" = "debian-10" > - then > - $LCITOOL dockerfile -x i686 "$target" \ > - libnbd > >"$ci_path/containers/$target-cross-i686.Dockerfile" > - fi > - > - $LCITOOL dockerfile "$target" libnbd > >"$ci_path/containers/$target.Dockerfile" > - fi > -done > -- > 2.33.0 -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-p2v converts physical machines to virtual machines. Boot with a live CD or over the network (PXE) and turn machines into KVM guests. http://libguestfs.org/virt-v2v _______________________________________________ Libguestfs mailing list [email protected] https://listman.redhat.com/mailman/listinfo/libguestfs
