libvirt/.gitlab-ci.yml

164 lines
4.7 KiB
YAML
Raw Normal View History

variables:
MAKE: make
GIT_DEPTH: 100
stages:
- prebuild
- native_build
- cross_build
# Common templates
# Default native build jobs that are always run
.native_build_default_job_template: &native_build_default_job_definition
stage: native_build
script:
- mkdir build
- cd build
- ../autogen.sh || (cat config.log && exit 1)
- $MAKE -j $(getconf _NPROCESSORS_ONLN) distcheck
# Extra native build jobs that are only run post-merge, or
# when code is pushed to a branch with "ci-full-" name prefix
.native_build_extra_job_template: &native_build_extra_job_definition
<<: *native_build_default_job_definition
only:
- master
- /^ci-full-.*$/
# Default cross build jobs that are always run
.cross_build_default_job_template: &cross_build_default_job_definition
stage: cross_build
script:
- mkdir build
- cd build
- ../autogen.sh $CONFIGURE_OPTS || (cat config.log && exit 1)
- $MAKE -j $(getconf _NPROCESSORS_ONLN)
# Extra cross build jobs that are only run post-merge, or
# when code is pushed to a branch with "ci-full-" name prefix
.cross_build_extra_job_template: &cross_build_extra_job_definition
<<: *cross_build_default_job_definition
only:
- master
- /^ci-full-.*$/
# Native architecture build + test jobs
x64-debian-9:
<<: *native_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-9:latest
x64-debian-10:
<<: *native_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-10:latest
x64-debian-sid:
<<: *native_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-sid:latest
x64-centos-7:
<<: *native_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-centos-7:latest
x64-centos-8:
<<: *native_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-centos-8:latest
x64-fedora-30:
<<: *native_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-fedora-30:latest
x64-fedora-31:
<<: *native_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-fedora-31:latest
x64-fedora-rawhide:
<<: *native_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-fedora-rawhide:latest
x64-opensuse-151:
<<: *native_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-opensuse-151:latest
x64-ubuntu-1604:
<<: *native_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-ubuntu-1604:latest
x64-ubuntu-1804:
<<: *native_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-ubuntu-1804:latest
# Cross compiled build jobs
armv6l-debian-9:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-9-cross-armv6l:latest
mips64el-debian-9:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-9-cross-mips64el:latest
mips-debian-9:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-9-cross-mips:latest
aarch64-debian-10:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-10-cross-aarch64:latest
ppc64le-debian-10:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-10-cross-ppc64le:latest
s390x-debian-10:
<<: *cross_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-10-cross-s390x:latest
armv7l-debian-sid:
<<: *cross_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-sid-cross-armv7l:latest
i686-debian-sid:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-sid-cross-i686:latest
mipsel-debian-sid:
<<: *cross_build_extra_job_definition
image: quay.io/libvirt/buildenv-libvirt-debian-sid-cross-mipsel:latest
mingw32-fedora-30:
<<: *cross_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-fedora-30-cross-mingw32:latest
mingw64-fedora-30:
<<: *cross_build_default_job_definition
image: quay.io/libvirt/buildenv-libvirt-fedora-30-cross-mingw64:latest
# This artifact published by this job is downloaded by libvirt.org to
# be deployed to the web root:
# https://gitlab.com/libvirt/libvirt/-/jobs/artifacts/master/download?job=website
website:
stage: prebuild
script:
- mkdir build
- cd build
- ../autogen.sh --prefix=$(pwd)/../vroot || (cat config.log && exit 1)
- $MAKE -j $(getconf _NPROCESSORS_ONLN) -C docs
- $MAKE -j $(getconf _NPROCESSORS_ONLN) -C docs install
- cd ..
- mv vroot/share/doc/libvirt/html/ website
image: quay.io/libvirt/buildenv-libvirt-fedora-31:latest
artifacts:
expose_as: 'Website'
name: 'website'
when: on_success
expire_in: 30 days
paths:
- website