.gitlab-ci.d/custom-runners.yml | 268 +----------------- .../custom-runners/centos-stream-8-x86_64.yml | 28 ++ .../custom-runners/ubuntu-18.04-s390x.yml | 118 ++++++++ .../custom-runners/ubuntu-20.04-aarch64.yml | 118 ++++++++ 4 files changed, 268 insertions(+), 264 deletions(-) create mode 100644 .gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml
To ease maintenance, add the custom-runners/ directory and
split custom-runners.yml in 3 files, all included by the
current custom-runners.yml:
- ubuntu-18.04-s390x.yml
- ubuntu-20.04-aarch64.yml
- centos-stream-8-x86_64.yml
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Based-on: <20211111160501.862396-1-crosa@redhat.com>
https://gitlab.com/stsquad/qemu/-/tree/for-6.2/misc-fixes
---
.gitlab-ci.d/custom-runners.yml | 268 +-----------------
.../custom-runners/centos-stream-8-x86_64.yml | 28 ++
.../custom-runners/ubuntu-18.04-s390x.yml | 118 ++++++++
.../custom-runners/ubuntu-20.04-aarch64.yml | 118 ++++++++
4 files changed, 268 insertions(+), 264 deletions(-)
create mode 100644 .gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml
create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml
create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml
diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml
index 1f56297dfa1..056c374619b 100644
--- a/.gitlab-ci.d/custom-runners.yml
+++ b/.gitlab-ci.d/custom-runners.yml
@@ -13,267 +13,7 @@
variables:
GIT_STRATEGY: clone
-# All ubuntu-18.04 jobs should run successfully in an environment
-# setup by the scripts/ci/setup/build-environment.yml task
-# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
-ubuntu-18.04-s390x-all-linux-static:
- needs: []
- stage: build
- tags:
- - ubuntu_18.04
- - s390x
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- - if: "$S390X_RUNNER_AVAILABLE"
- script:
- # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
- # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
- - mkdir build
- - cd build
- - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
- - make --output-sync -j`nproc` check-tcg V=1
-
-ubuntu-18.04-s390x-all:
- needs: []
- stage: build
- tags:
- - ubuntu_18.04
- - s390x
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- - if: "$S390X_RUNNER_AVAILABLE"
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-ubuntu-18.04-s390x-alldbg:
- needs: []
- stage: build
- tags:
- - ubuntu_18.04
- - s390x
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$S390X_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --enable-debug --disable-libssh
- - make clean
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-ubuntu-18.04-s390x-clang:
- needs: []
- stage: build
- tags:
- - ubuntu_18.04
- - s390x
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$S390X_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-ubuntu-18.04-s390x-tci:
- needs: []
- stage: build
- tags:
- - ubuntu_18.04
- - s390x
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$S390X_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh --enable-tcg-interpreter
- - make --output-sync -j`nproc`
-
-ubuntu-18.04-s390x-notcg:
- needs: []
- stage: build
- tags:
- - ubuntu_18.04
- - s390x
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$S390X_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh --disable-tcg
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-# All ubuntu-20.04 jobs should run successfully in an environment
-# setup by the scripts/ci/setup/qemu/build-environment.yml task
-# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
-ubuntu-20.04-aarch64-all-linux-static:
- needs: []
- stage: build
- tags:
- - ubuntu_20.04
- - aarch64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- - if: "$AARCH64_RUNNER_AVAILABLE"
- script:
- # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
- # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
- - mkdir build
- - cd build
- - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
- - make --output-sync -j`nproc` check-tcg V=1
-
-ubuntu-20.04-aarch64-all:
- needs: []
- stage: build
- tags:
- - ubuntu_20.04
- - aarch64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$AARCH64_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-ubuntu-20.04-aarch64-alldbg:
- needs: []
- stage: build
- tags:
- - ubuntu_20.04
- - aarch64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- - if: "$AARCH64_RUNNER_AVAILABLE"
- script:
- - mkdir build
- - cd build
- - ../configure --enable-debug --disable-libssh
- - make clean
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-ubuntu-20.04-aarch64-clang:
- needs: []
- stage: build
- tags:
- - ubuntu_20.04
- - aarch64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$AARCH64_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh --cc=clang-10 --cxx=clang++-10 --enable-sanitizers
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-ubuntu-20.04-aarch64-tci:
- needs: []
- stage: build
- tags:
- - ubuntu_20.04
- - aarch64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$AARCH64_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh --enable-tcg-interpreter
- - make --output-sync -j`nproc`
-
-ubuntu-20.04-aarch64-notcg:
- needs: []
- stage: build
- tags:
- - ubuntu_20.04
- - aarch64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- when: manual
- allow_failure: true
- - if: "$AARCH64_RUNNER_AVAILABLE"
- when: manual
- allow_failure: true
- script:
- - mkdir build
- - cd build
- - ../configure --disable-libssh --disable-tcg
- - make --output-sync -j`nproc`
- - make --output-sync -j`nproc` check V=1
-
-centos-stream-8-x86_64:
- allow_failure: true
- needs: []
- stage: build
- tags:
- - centos_stream_8
- - x86_64
- rules:
- - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
- - if: "$CENTOS_STREAM_8_x86_64_RUNNER_AVAILABLE"
- artifacts:
- name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
- when: on_failure
- expire_in: 7 days
- paths:
- - build/tests/results/latest/results.xml
- - build/tests/results/latest/test-results
- reports:
- junit: build/tests/results/latest/results.xml
- before_script:
- - JOBS=$(expr $(nproc) + 1)
- script:
- - mkdir build
- - cd build
- - ../scripts/ci/org.centos/stream/8/x86_64/configure
- - make -j"$JOBS"
- - make NINJA=":" check
- - ../scripts/ci/org.centos/stream/8/x86_64/test-avocado
+include:
+ - local: '/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml'
+ - local: '/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml'
+ - local: '/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml'
diff --git a/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml b/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml
new file mode 100644
index 00000000000..49aa703f55c
--- /dev/null
+++ b/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml
@@ -0,0 +1,28 @@
+centos-stream-8-x86_64:
+ allow_failure: true
+ needs: []
+ stage: build
+ tags:
+ - centos_stream_8
+ - x86_64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ - if: "$CENTOS_STREAM_8_x86_64_RUNNER_AVAILABLE"
+ artifacts:
+ name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
+ when: on_failure
+ expire_in: 7 days
+ paths:
+ - build/tests/results/latest/results.xml
+ - build/tests/results/latest/test-results
+ reports:
+ junit: build/tests/results/latest/results.xml
+ before_script:
+ - JOBS=$(expr $(nproc) + 1)
+ script:
+ - mkdir build
+ - cd build
+ - ../scripts/ci/org.centos/stream/8/x86_64/configure
+ - make -j"$JOBS"
+ - make NINJA=":" check
+ - ../scripts/ci/org.centos/stream/8/x86_64/test-avocado
diff --git a/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml b/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml
new file mode 100644
index 00000000000..f39d874a1e1
--- /dev/null
+++ b/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml
@@ -0,0 +1,118 @@
+# All ubuntu-18.04 jobs should run successfully in an environment
+# setup by the scripts/ci/setup/build-environment.yml task
+# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
+
+ubuntu-18.04-s390x-all-linux-static:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_18.04
+ - s390x
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ - if: "$S390X_RUNNER_AVAILABLE"
+ script:
+ # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
+ # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
+ - mkdir build
+ - cd build
+ - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+ - make --output-sync -j`nproc` check-tcg V=1
+
+ubuntu-18.04-s390x-all:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_18.04
+ - s390x
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ - if: "$S390X_RUNNER_AVAILABLE"
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+
+ubuntu-18.04-s390x-alldbg:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_18.04
+ - s390x
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$S390X_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --enable-debug --disable-libssh
+ - make clean
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+
+ubuntu-18.04-s390x-clang:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_18.04
+ - s390x
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$S390X_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+
+ubuntu-18.04-s390x-tci:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_18.04
+ - s390x
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$S390X_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh --enable-tcg-interpreter
+ - make --output-sync -j`nproc`
+
+ubuntu-18.04-s390x-notcg:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_18.04
+ - s390x
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$S390X_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh --disable-tcg
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
diff --git a/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml b/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml
new file mode 100644
index 00000000000..920e388bd05
--- /dev/null
+++ b/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml
@@ -0,0 +1,118 @@
+# All ubuntu-20.04 jobs should run successfully in an environment
+# setup by the scripts/ci/setup/qemu/build-environment.yml task
+# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
+
+ubuntu-20.04-aarch64-all-linux-static:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ - if: "$AARCH64_RUNNER_AVAILABLE"
+ script:
+ # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
+ # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
+ - mkdir build
+ - cd build
+ - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+ - make --output-sync -j`nproc` check-tcg V=1
+
+ubuntu-20.04-aarch64-all:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$AARCH64_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+
+ubuntu-20.04-aarch64-alldbg:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ - if: "$AARCH64_RUNNER_AVAILABLE"
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --enable-debug --disable-libssh
+ - make clean
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+
+ubuntu-20.04-aarch64-clang:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$AARCH64_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh --cc=clang-10 --cxx=clang++-10 --enable-sanitizers
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
+
+ubuntu-20.04-aarch64-tci:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$AARCH64_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh --enable-tcg-interpreter
+ - make --output-sync -j`nproc`
+
+ubuntu-20.04-aarch64-notcg:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch64
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$AARCH64_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --disable-libssh --disable-tcg
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
--
2.31.1
Philippe Mathieu-Daudé <philmd@redhat.com> writes: > To ease maintenance, add the custom-runners/ directory and > split custom-runners.yml in 3 files, all included by the > current custom-runners.yml: > - ubuntu-18.04-s390x.yml > - ubuntu-20.04-aarch64.yml > - centos-stream-8-x86_64.yml > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Seems reasonable: Queued to for-6.2/misc-fixes, thanks. > --- > Based-on: <20211111160501.862396-1-crosa@redhat.com> > https://gitlab.com/stsquad/qemu/-/tree/for-6.2/misc-fixes > --- > .gitlab-ci.d/custom-runners.yml | 268 +----------------- > .../custom-runners/centos-stream-8-x86_64.yml | 28 ++ > .../custom-runners/ubuntu-18.04-s390x.yml | 118 ++++++++ > .../custom-runners/ubuntu-20.04-aarch64.yml | 118 ++++++++ > 4 files changed, 268 insertions(+), 264 deletions(-) > create mode 100644 .gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml > create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml > create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml > > diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml > index 1f56297dfa1..056c374619b 100644 > --- a/.gitlab-ci.d/custom-runners.yml > +++ b/.gitlab-ci.d/custom-runners.yml > @@ -13,267 +13,7 @@ > variables: > GIT_STRATEGY: clone > > -# All ubuntu-18.04 jobs should run successfully in an environment > -# setup by the scripts/ci/setup/build-environment.yml task > -# "Install basic packages to build QEMU on Ubuntu 18.04/20.04" > -ubuntu-18.04-s390x-all-linux-static: > - needs: [] > - stage: build > - tags: > - - ubuntu_18.04 > - - s390x > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - - if: "$S390X_RUNNER_AVAILABLE" > - script: > - # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763 > - # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages > - - mkdir build > - - cd build > - - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - - make --output-sync -j`nproc` check-tcg V=1 > - > -ubuntu-18.04-s390x-all: > - needs: [] > - stage: build > - tags: > - - ubuntu_18.04 > - - s390x > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - - if: "$S390X_RUNNER_AVAILABLE" > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -ubuntu-18.04-s390x-alldbg: > - needs: [] > - stage: build > - tags: > - - ubuntu_18.04 > - - s390x > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$S390X_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --enable-debug --disable-libssh > - - make clean > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -ubuntu-18.04-s390x-clang: > - needs: [] > - stage: build > - tags: > - - ubuntu_18.04 > - - s390x > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$S390X_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -ubuntu-18.04-s390x-tci: > - needs: [] > - stage: build > - tags: > - - ubuntu_18.04 > - - s390x > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$S390X_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh --enable-tcg-interpreter > - - make --output-sync -j`nproc` > - > -ubuntu-18.04-s390x-notcg: > - needs: [] > - stage: build > - tags: > - - ubuntu_18.04 > - - s390x > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$S390X_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh --disable-tcg > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -# All ubuntu-20.04 jobs should run successfully in an environment > -# setup by the scripts/ci/setup/qemu/build-environment.yml task > -# "Install basic packages to build QEMU on Ubuntu 18.04/20.04" > -ubuntu-20.04-aarch64-all-linux-static: > - needs: [] > - stage: build > - tags: > - - ubuntu_20.04 > - - aarch64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - - if: "$AARCH64_RUNNER_AVAILABLE" > - script: > - # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763 > - # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages > - - mkdir build > - - cd build > - - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - - make --output-sync -j`nproc` check-tcg V=1 > - > -ubuntu-20.04-aarch64-all: > - needs: [] > - stage: build > - tags: > - - ubuntu_20.04 > - - aarch64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$AARCH64_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -ubuntu-20.04-aarch64-alldbg: > - needs: [] > - stage: build > - tags: > - - ubuntu_20.04 > - - aarch64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - - if: "$AARCH64_RUNNER_AVAILABLE" > - script: > - - mkdir build > - - cd build > - - ../configure --enable-debug --disable-libssh > - - make clean > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -ubuntu-20.04-aarch64-clang: > - needs: [] > - stage: build > - tags: > - - ubuntu_20.04 > - - aarch64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$AARCH64_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh --cc=clang-10 --cxx=clang++-10 --enable-sanitizers > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -ubuntu-20.04-aarch64-tci: > - needs: [] > - stage: build > - tags: > - - ubuntu_20.04 > - - aarch64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$AARCH64_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh --enable-tcg-interpreter > - - make --output-sync -j`nproc` > - > -ubuntu-20.04-aarch64-notcg: > - needs: [] > - stage: build > - tags: > - - ubuntu_20.04 > - - aarch64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - when: manual > - allow_failure: true > - - if: "$AARCH64_RUNNER_AVAILABLE" > - when: manual > - allow_failure: true > - script: > - - mkdir build > - - cd build > - - ../configure --disable-libssh --disable-tcg > - - make --output-sync -j`nproc` > - - make --output-sync -j`nproc` check V=1 > - > -centos-stream-8-x86_64: > - allow_failure: true > - needs: [] > - stage: build > - tags: > - - centos_stream_8 > - - x86_64 > - rules: > - - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > - - if: "$CENTOS_STREAM_8_x86_64_RUNNER_AVAILABLE" > - artifacts: > - name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" > - when: on_failure > - expire_in: 7 days > - paths: > - - build/tests/results/latest/results.xml > - - build/tests/results/latest/test-results > - reports: > - junit: build/tests/results/latest/results.xml > - before_script: > - - JOBS=$(expr $(nproc) + 1) > - script: > - - mkdir build > - - cd build > - - ../scripts/ci/org.centos/stream/8/x86_64/configure > - - make -j"$JOBS" > - - make NINJA=":" check > - - ../scripts/ci/org.centos/stream/8/x86_64/test-avocado > +include: > + - local: '/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml' > + - local: '/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml' > + - local: '/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml' > diff --git a/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml b/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml > new file mode 100644 > index 00000000000..49aa703f55c > --- /dev/null > +++ b/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml > @@ -0,0 +1,28 @@ > +centos-stream-8-x86_64: > + allow_failure: true > + needs: [] > + stage: build > + tags: > + - centos_stream_8 > + - x86_64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + - if: "$CENTOS_STREAM_8_x86_64_RUNNER_AVAILABLE" > + artifacts: > + name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" > + when: on_failure > + expire_in: 7 days > + paths: > + - build/tests/results/latest/results.xml > + - build/tests/results/latest/test-results > + reports: > + junit: build/tests/results/latest/results.xml > + before_script: > + - JOBS=$(expr $(nproc) + 1) > + script: > + - mkdir build > + - cd build > + - ../scripts/ci/org.centos/stream/8/x86_64/configure > + - make -j"$JOBS" > + - make NINJA=":" check > + - ../scripts/ci/org.centos/stream/8/x86_64/test-avocado > diff --git a/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml b/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml > new file mode 100644 > index 00000000000..f39d874a1e1 > --- /dev/null > +++ b/.gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml > @@ -0,0 +1,118 @@ > +# All ubuntu-18.04 jobs should run successfully in an environment > +# setup by the scripts/ci/setup/build-environment.yml task > +# "Install basic packages to build QEMU on Ubuntu 18.04/20.04" > + > +ubuntu-18.04-s390x-all-linux-static: > + needs: [] > + stage: build > + tags: > + - ubuntu_18.04 > + - s390x > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + - if: "$S390X_RUNNER_AVAILABLE" > + script: > + # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763 > + # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages > + - mkdir build > + - cd build > + - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + - make --output-sync -j`nproc` check-tcg V=1 > + > +ubuntu-18.04-s390x-all: > + needs: [] > + stage: build > + tags: > + - ubuntu_18.04 > + - s390x > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + - if: "$S390X_RUNNER_AVAILABLE" > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + > +ubuntu-18.04-s390x-alldbg: > + needs: [] > + stage: build > + tags: > + - ubuntu_18.04 > + - s390x > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$S390X_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --enable-debug --disable-libssh > + - make clean > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + > +ubuntu-18.04-s390x-clang: > + needs: [] > + stage: build > + tags: > + - ubuntu_18.04 > + - s390x > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$S390X_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + > +ubuntu-18.04-s390x-tci: > + needs: [] > + stage: build > + tags: > + - ubuntu_18.04 > + - s390x > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$S390X_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh --enable-tcg-interpreter > + - make --output-sync -j`nproc` > + > +ubuntu-18.04-s390x-notcg: > + needs: [] > + stage: build > + tags: > + - ubuntu_18.04 > + - s390x > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$S390X_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh --disable-tcg > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > diff --git a/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml b/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml > new file mode 100644 > index 00000000000..920e388bd05 > --- /dev/null > +++ b/.gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml > @@ -0,0 +1,118 @@ > +# All ubuntu-20.04 jobs should run successfully in an environment > +# setup by the scripts/ci/setup/qemu/build-environment.yml task > +# "Install basic packages to build QEMU on Ubuntu 18.04/20.04" > + > +ubuntu-20.04-aarch64-all-linux-static: > + needs: [] > + stage: build > + tags: > + - ubuntu_20.04 > + - aarch64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + - if: "$AARCH64_RUNNER_AVAILABLE" > + script: > + # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763 > + # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages > + - mkdir build > + - cd build > + - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + - make --output-sync -j`nproc` check-tcg V=1 > + > +ubuntu-20.04-aarch64-all: > + needs: [] > + stage: build > + tags: > + - ubuntu_20.04 > + - aarch64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$AARCH64_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + > +ubuntu-20.04-aarch64-alldbg: > + needs: [] > + stage: build > + tags: > + - ubuntu_20.04 > + - aarch64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + - if: "$AARCH64_RUNNER_AVAILABLE" > + script: > + - mkdir build > + - cd build > + - ../configure --enable-debug --disable-libssh > + - make clean > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + > +ubuntu-20.04-aarch64-clang: > + needs: [] > + stage: build > + tags: > + - ubuntu_20.04 > + - aarch64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$AARCH64_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh --cc=clang-10 --cxx=clang++-10 --enable-sanitizers > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 > + > +ubuntu-20.04-aarch64-tci: > + needs: [] > + stage: build > + tags: > + - ubuntu_20.04 > + - aarch64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$AARCH64_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh --enable-tcg-interpreter > + - make --output-sync -j`nproc` > + > +ubuntu-20.04-aarch64-notcg: > + needs: [] > + stage: build > + tags: > + - ubuntu_20.04 > + - aarch64 > + rules: > + - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/' > + when: manual > + allow_failure: true > + - if: "$AARCH64_RUNNER_AVAILABLE" > + when: manual > + allow_failure: true > + script: > + - mkdir build > + - cd build > + - ../configure --disable-libssh --disable-tcg > + - make --output-sync -j`nproc` > + - make --output-sync -j`nproc` check V=1 -- Alex Bennée
On 11/15/21 15:22, Alex Bennée wrote: > > Philippe Mathieu-Daudé <philmd@redhat.com> writes: > >> To ease maintenance, add the custom-runners/ directory and >> split custom-runners.yml in 3 files, all included by the >> current custom-runners.yml: >> - ubuntu-18.04-s390x.yml >> - ubuntu-20.04-aarch64.yml >> - centos-stream-8-x86_64.yml >> >> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > > Seems reasonable: This way I can repost the x86/freebsd and mips64el/linux runners series to share them with mainstream, Warner and Richard. > Queued to for-6.2/misc-fixes, thanks. Thanks. >> --- >> Based-on: <20211111160501.862396-1-crosa@redhat.com> >> https://gitlab.com/stsquad/qemu/-/tree/for-6.2/misc-fixes >> --- >> .gitlab-ci.d/custom-runners.yml | 268 +----------------- >> .../custom-runners/centos-stream-8-x86_64.yml | 28 ++ >> .../custom-runners/ubuntu-18.04-s390x.yml | 118 ++++++++ >> .../custom-runners/ubuntu-20.04-aarch64.yml | 118 ++++++++ >> 4 files changed, 268 insertions(+), 264 deletions(-) >> create mode 100644 .gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml >> create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml >> create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml
On 15/11/2021 10.56, Philippe Mathieu-Daudé wrote: > To ease maintenance, add the custom-runners/ directory and > split custom-runners.yml in 3 files, all included by the > current custom-runners.yml: > - ubuntu-18.04-s390x.yml > - ubuntu-20.04-aarch64.yml > - centos-stream-8-x86_64.yml > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > Based-on: <20211111160501.862396-1-crosa@redhat.com> > https://gitlab.com/stsquad/qemu/-/tree/for-6.2/misc-fixes > --- > .gitlab-ci.d/custom-runners.yml | 268 +----------------- > .../custom-runners/centos-stream-8-x86_64.yml | 28 ++ > .../custom-runners/ubuntu-18.04-s390x.yml | 118 ++++++++ > .../custom-runners/ubuntu-20.04-aarch64.yml | 118 ++++++++ > 4 files changed, 268 insertions(+), 264 deletions(-) > create mode 100644 .gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml > create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml > create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml Should there maybe be entries in MAINTAINERS for these new files, so that it is clear who takes care of the external runners? Thomas
On 11/15/21 15:33, Thomas Huth wrote: > On 15/11/2021 10.56, Philippe Mathieu-Daudé wrote: >> To ease maintenance, add the custom-runners/ directory and >> split custom-runners.yml in 3 files, all included by the >> current custom-runners.yml: >> - ubuntu-18.04-s390x.yml >> - ubuntu-20.04-aarch64.yml >> - centos-stream-8-x86_64.yml >> >> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> >> --- >> Based-on: <20211111160501.862396-1-crosa@redhat.com> >> https://gitlab.com/stsquad/qemu/-/tree/for-6.2/misc-fixes >> --- >> .gitlab-ci.d/custom-runners.yml | 268 +----------------- >> .../custom-runners/centos-stream-8-x86_64.yml | 28 ++ >> .../custom-runners/ubuntu-18.04-s390x.yml | 118 ++++++++ >> .../custom-runners/ubuntu-20.04-aarch64.yml | 118 ++++++++ >> 4 files changed, 268 insertions(+), 264 deletions(-) >> create mode 100644 >> .gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml >> create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-18.04-s390x.yml >> create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.04-aarch64.yml > > Should there maybe be entries in MAINTAINERS for these new files, so > that it is clear who takes care of the external runners? Yes, this is the principal motivation behind this series. I expect each maintainer to send their patch.
© 2016 - 2026 Red Hat, Inc.