[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 09/18] gitlab: add a new aarch32 custom runner definition
From: |
Alex Bennée |
Subject: |
[PATCH v2 09/18] gitlab: add a new aarch32 custom runner definition |
Date: |
Fri, 25 Feb 2022 17:20:12 +0000 |
Although running on aarch64 hardware we can still target 32bit builds
with a cross compiler and run the resulting binaries.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20220211160309.335014-9-alex.bennee@linaro.org>
---
docs/devel/ci-jobs.rst.inc | 7 ++++++
.../custom-runners/ubuntu-20.40-aarch32.yml | 23 +++++++++++++++++++
scripts/ci/setup/gitlab-runner.yml | 4 ++++
3 files changed, 34 insertions(+)
create mode 100644 .gitlab-ci.d/custom-runners/ubuntu-20.40-aarch32.yml
diff --git a/docs/devel/ci-jobs.rst.inc b/docs/devel/ci-jobs.rst.inc
index db3f571d5f..92e25872aa 100644
--- a/docs/devel/ci-jobs.rst.inc
+++ b/docs/devel/ci-jobs.rst.inc
@@ -44,6 +44,13 @@ If you've got access to an aarch64 host that can be used as
a gitlab-CI
runner, you can set this variable to enable the tests that require this
kind of host. The runner should be tagged with "aarch64".
+AARCH32_RUNNER_AVAILABLE
+~~~~~~~~~~~~~~~~~~~~~~~~
+If you've got access to an armhf host or an arch64 host that can run
+aarch32 EL0 code to be used as a gitlab-CI runner, you can set this
+variable to enable the tests that require this kind of host. The
+runner should be tagged with "aarch32".
+
S390X_RUNNER_AVAILABLE
~~~~~~~~~~~~~~~~~~~~~~
If you've got access to an IBM Z host that can be used as a gitlab-CI
diff --git a/.gitlab-ci.d/custom-runners/ubuntu-20.40-aarch32.yml
b/.gitlab-ci.d/custom-runners/ubuntu-20.40-aarch32.yml
new file mode 100644
index 0000000000..9c589bc4cf
--- /dev/null
+++ b/.gitlab-ci.d/custom-runners/ubuntu-20.40-aarch32.yml
@@ -0,0 +1,23 @@
+# 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-aarch32-all:
+ needs: []
+ stage: build
+ tags:
+ - ubuntu_20.04
+ - aarch32
+ rules:
+ - if: '$CI_PROJECT_NAMESPACE == "qemu-project" && $CI_COMMIT_BRANCH =~
/^staging/'
+ when: manual
+ allow_failure: true
+ - if: "$AARCH32_RUNNER_AVAILABLE"
+ when: manual
+ allow_failure: true
+ script:
+ - mkdir build
+ - cd build
+ - ../configure --cross-prefix=arm-linux-gnueabihf-
+ - make --output-sync -j`nproc`
+ - make --output-sync -j`nproc` check V=1
diff --git a/scripts/ci/setup/gitlab-runner.yml
b/scripts/ci/setup/gitlab-runner.yml
index 19bfd68f7e..33128be85d 100644
--- a/scripts/ci/setup/gitlab-runner.yml
+++ b/scripts/ci/setup/gitlab-runner.yml
@@ -84,6 +84,10 @@
- name: Register secondary gitlab-runner
command: "/usr/local/bin/gitlab-runner-arm register --non-interactive
--url {{ gitlab_runner_server_url }} --registration-token {{
gitlab_runner_registration_token }} --executor shell --tag-list aarch32,{{
ansible_facts[\"distribution\"]|lower }}_{{
ansible_facts[\"distribution_version\"] }} --description '{{
ansible_facts[\"distribution\"] }} {{ ansible_facts[\"distribution_version\"]
}} {{ ansible_facts[\"architecture\"] }} ({{ ansible_facts[\"os_family\"] }})'"
+ when:
+ - ansible_facts['distribution'] == 'Ubuntu'
+ - ansible_facts['architecture'] == 'aarch64'
+ - ansible_facts['distribution_version'] == '20.04'
- name: Install the secondary gitlab-runner service using its own
functionality
command: /usr/local/bin/gitlab-runner-arm install --user gitlab-runner
--working-directory /home/gitlab-runner/arm -n gitlab-runner-arm
--
2.30.2
- Re: [PATCH v2 03/18] tests/lcitool: update to latest version, (continued)
[PATCH v2 10/18] tests/tcg/ppc64: clean-up handling of byte-reverse, Alex Bennée, 2022/02/25
[PATCH v2 01/18] tests/docker: restore TESTS/IMAGES filtering, Alex Bennée, 2022/02/25
[PATCH v2 02/18] tests/docker: add NOUSER for alpine image, Alex Bennée, 2022/02/25
[PATCH v2 08/18] scripts/ci: allow for a secondary runner, Alex Bennée, 2022/02/25
[PATCH v2 07/18] scripts/ci: add build env rules for aarch32 on aarch64, Alex Bennée, 2022/02/25
[PATCH v2 06/18] tests/docker: introduce debian-riscv64-test-cross, Alex Bennée, 2022/02/25
[PATCH v2 05/18] tests/docker: update debian-s390x-cross with lcitool, Alex Bennée, 2022/02/25
[PATCH v2 18/18] tests/tcg: port SYS_HEAPINFO to a system test, Alex Bennée, 2022/02/25
[PATCH v2 09/18] gitlab: add a new aarch32 custom runner definition,
Alex Bennée <=
[PATCH v2 13/18] tests/tcg: add vectorised sha512 versions, Alex Bennée, 2022/02/25
[PATCH v2 14/18] travis.yml: Update the s390x jobs to Ubuntu Focal, Alex Bennée, 2022/02/25
[PATCH v2 11/18] tests/tcg: build sha1-vector with O3 and compare, Alex Bennée, 2022/02/25
[PATCH v2 12/18] tests/tcg: add sha512 test, Alex Bennée, 2022/02/25
[PATCH v2 15/18] gitlab: upgrade the job definition for s390x to 20.04, Alex Bennée, 2022/02/25
[PATCH v2 16/18] tests/tcg: completely disable threadcount for sh4, Alex Bennée, 2022/02/25
[PATCH v2 17/18] semihosting/arm-compat: replace heuristic for softmmu SYS_HEAPINFO, Alex Bennée, 2022/02/25