cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

custom-runners.yml (6776B)


      1# The CI jobs defined here require GitLab runners installed and
      2# registered on machines that match their operating system names,
      3# versions and architectures.  This is in contrast to the other CI
      4# jobs that are intended to run on GitLab's "shared" runners.
      5
      6# Different than the default approach on "shared" runners, based on
      7# containers, the custom runners have no such *requirement*, as those
      8# jobs should be capable of running on operating systems with no
      9# compatible container implementation, or no support from
     10# gitlab-runner.  To avoid problems that gitlab-runner can cause while
     11# reusing the GIT repository, let's enable the clone strategy, which
     12# guarantees a fresh repository on each job run.
     13variables:
     14  GIT_STRATEGY: clone
     15
     16# All ubuntu-18.04 jobs should run successfully in an environment
     17# setup by the scripts/ci/setup/build-environment.yml task
     18# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
     19ubuntu-18.04-s390x-all-linux-static:
     20 needs: []
     21 stage: build
     22 tags:
     23 - ubuntu_18.04
     24 - s390x
     25 rules:
     26 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
     27 - if: "$S390X_RUNNER_AVAILABLE"
     28 script:
     29 # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
     30 # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
     31 - mkdir build
     32 - cd build
     33 - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
     34 - make --output-sync -j`nproc`
     35 - make --output-sync -j`nproc` check V=1
     36 - make --output-sync -j`nproc` check-tcg V=1
     37
     38ubuntu-18.04-s390x-all:
     39 needs: []
     40 stage: build
     41 tags:
     42 - ubuntu_18.04
     43 - s390x
     44 rules:
     45 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
     46 - if: "$S390X_RUNNER_AVAILABLE"
     47 script:
     48 - mkdir build
     49 - cd build
     50 - ../configure --disable-libssh
     51 - make --output-sync -j`nproc`
     52 - make --output-sync -j`nproc` check V=1
     53
     54ubuntu-18.04-s390x-alldbg:
     55 needs: []
     56 stage: build
     57 tags:
     58 - ubuntu_18.04
     59 - s390x
     60 rules:
     61 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
     62   when: manual
     63   allow_failure: true
     64 - if: "$S390X_RUNNER_AVAILABLE"
     65   when: manual
     66   allow_failure: true
     67 script:
     68 - mkdir build
     69 - cd build
     70 - ../configure --enable-debug --disable-libssh
     71 - make clean
     72 - make --output-sync -j`nproc`
     73 - make --output-sync -j`nproc` check V=1
     74
     75ubuntu-18.04-s390x-clang:
     76 needs: []
     77 stage: build
     78 tags:
     79 - ubuntu_18.04
     80 - s390x
     81 rules:
     82 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
     83   when: manual
     84   allow_failure: true
     85 - if: "$S390X_RUNNER_AVAILABLE"
     86   when: manual
     87   allow_failure: true
     88 script:
     89 - mkdir build
     90 - cd build
     91 - ../configure --disable-libssh --cc=clang --cxx=clang++ --enable-sanitizers
     92 - make --output-sync -j`nproc`
     93 - make --output-sync -j`nproc` check V=1
     94
     95ubuntu-18.04-s390x-tci:
     96 needs: []
     97 stage: build
     98 tags:
     99 - ubuntu_18.04
    100 - s390x
    101 rules:
    102 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    103   when: manual
    104   allow_failure: true
    105 - if: "$S390X_RUNNER_AVAILABLE"
    106   when: manual
    107   allow_failure: true
    108 script:
    109 - mkdir build
    110 - cd build
    111 - ../configure --disable-libssh --enable-tcg-interpreter
    112 - make --output-sync -j`nproc`
    113
    114ubuntu-18.04-s390x-notcg:
    115 needs: []
    116 stage: build
    117 tags:
    118 - ubuntu_18.04
    119 - s390x
    120 rules:
    121 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    122   when: manual
    123   allow_failure: true
    124 - if: "$S390X_RUNNER_AVAILABLE"
    125   when: manual
    126   allow_failure: true
    127 script:
    128 - mkdir build
    129 - cd build
    130 - ../configure --disable-libssh --disable-tcg
    131 - make --output-sync -j`nproc`
    132 - make --output-sync -j`nproc` check V=1
    133
    134# All ubuntu-20.04 jobs should run successfully in an environment
    135# setup by the scripts/ci/setup/qemu/build-environment.yml task
    136# "Install basic packages to build QEMU on Ubuntu 18.04/20.04"
    137ubuntu-20.04-aarch64-all-linux-static:
    138 needs: []
    139 stage: build
    140 tags:
    141 - ubuntu_20.04
    142 - aarch64
    143 rules:
    144 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    145 - if: "$AARCH64_RUNNER_AVAILABLE"
    146 script:
    147 # --disable-libssh is needed because of https://bugs.launchpad.net/qemu/+bug/1838763
    148 # --disable-glusterfs is needed because there's no static version of those libs in distro supplied packages
    149 - mkdir build
    150 - cd build
    151 - ../configure --enable-debug --static --disable-system --disable-glusterfs --disable-libssh
    152 - make --output-sync -j`nproc`
    153 - make --output-sync -j`nproc` check V=1
    154 - make --output-sync -j`nproc` check-tcg V=1
    155
    156ubuntu-20.04-aarch64-all:
    157 needs: []
    158 stage: build
    159 tags:
    160 - ubuntu_20.04
    161 - aarch64
    162 rules:
    163 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    164   when: manual
    165   allow_failure: true
    166 - if: "$AARCH64_RUNNER_AVAILABLE"
    167   when: manual
    168   allow_failure: true
    169 script:
    170 - mkdir build
    171 - cd build
    172 - ../configure --disable-libssh
    173 - make --output-sync -j`nproc`
    174 - make --output-sync -j`nproc` check V=1
    175
    176ubuntu-20.04-aarch64-alldbg:
    177 needs: []
    178 stage: build
    179 tags:
    180 - ubuntu_20.04
    181 - aarch64
    182 rules:
    183 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    184 - if: "$AARCH64_RUNNER_AVAILABLE"
    185 script:
    186 - mkdir build
    187 - cd build
    188 - ../configure --enable-debug --disable-libssh
    189 - make clean
    190 - make --output-sync -j`nproc`
    191 - make --output-sync -j`nproc` check V=1
    192
    193ubuntu-20.04-aarch64-clang:
    194 needs: []
    195 stage: build
    196 tags:
    197 - ubuntu_20.04
    198 - aarch64
    199 rules:
    200 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    201   when: manual
    202   allow_failure: true
    203 - if: "$AARCH64_RUNNER_AVAILABLE"
    204   when: manual
    205   allow_failure: true
    206 script:
    207 - mkdir build
    208 - cd build
    209 - ../configure --disable-libssh --cc=clang-10 --cxx=clang++-10 --enable-sanitizers
    210 - make --output-sync -j`nproc`
    211 - make --output-sync -j`nproc` check V=1
    212
    213ubuntu-20.04-aarch64-tci:
    214 needs: []
    215 stage: build
    216 tags:
    217 - ubuntu_20.04
    218 - aarch64
    219 rules:
    220 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    221   when: manual
    222   allow_failure: true
    223 - if: "$AARCH64_RUNNER_AVAILABLE"
    224   when: manual
    225   allow_failure: true
    226 script:
    227 - mkdir build
    228 - cd build
    229 - ../configure --disable-libssh --enable-tcg-interpreter
    230 - make --output-sync -j`nproc`
    231
    232ubuntu-20.04-aarch64-notcg:
    233 needs: []
    234 stage: build
    235 tags:
    236 - ubuntu_20.04
    237 - aarch64
    238 rules:
    239 - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~ /^staging/'
    240   when: manual
    241   allow_failure: true
    242 - if: "$AARCH64_RUNNER_AVAILABLE"
    243   when: manual
    244   allow_failure: true
    245 script:
    246 - mkdir build
    247 - cd build
    248 - ../configure --disable-libssh --disable-tcg
    249 - make --output-sync -j`nproc`
    250 - make --output-sync -j`nproc` check V=1