osmith submitted this change.
jobs/master,gerrit: add docker_run_ccache
Put arguments for ccache into a new docker_run_ccache variable, and use
it with all projects where it makes sense to use ccache.
Other projects use docker_run without the ccache parameters again:
* osmo_ss7, osmo_dia2gsup, pysim:
Erlang/Python projects
* osmo-e1-hardware, ice40-usbtrace, no2bootloader, osmo-opencm3-projects:
Don't use the default docker image
* osmo-gsm-tester:
Only builds manuals (jenkins-build-manuals.sh)
Jenkins job builder's variable substitution doesn't replace {docker_run}
inside docker_run_ccache when used in cmd, so just duplicate the lines.
Related: OS#5848
Change-Id: Ib6d7f309b972979d3a3bc87f8fcf71f9e930c0da
---
M jobs/gerrit-verifications.yml
M jobs/master-builds.yml
2 files changed, 61 insertions(+), 29 deletions(-)
diff --git a/jobs/gerrit-verifications.yml b/jobs/gerrit-verifications.yml
index e66a047..40e7d68 100644
--- a/jobs/gerrit-verifications.yml
+++ b/jobs/gerrit-verifications.yml
@@ -51,22 +51,36 @@
docker run --rm=true \
--cap-add SYS_PTRACE \
-e ASCIIDOC_WARNINGS_CHECK="1" \
- -e CCACHE_DIR="/ccache" \
-e HOME=/build \
-e JOB_NAME="$JOB_NAME" \
-e MAKE=make \
-e OSMOPY_DEBUG_TCP_SOCKETS="1" \
-e OSMO_GSM_MANUALS_DIR="/opt/osmo-gsm-manuals" \
- -e PATH="/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" \
-e PARALLEL_MAKE="$PARALLEL_MAKE" \
-e WITH_MANUALS="1" \
-w /build -i -u build \
- -v "$HOME/ccache/gerrit-verifications:/ccache" \
-v "$PWD:/build" \
+ docker_run_ccache: |
+ docker run --rm=true \
+ --cap-add SYS_PTRACE \
+ -e ASCIIDOC_WARNINGS_CHECK="1" \
+ -e HOME=/build \
+ -e JOB_NAME="$JOB_NAME" \
+ -e MAKE=make \
+ -e OSMOPY_DEBUG_TCP_SOCKETS="1" \
+ -e OSMO_GSM_MANUALS_DIR="/opt/osmo-gsm-manuals" \
+ -e PARALLEL_MAKE="$PARALLEL_MAKE" \
+ -e WITH_MANUALS="1" \
+ -w /build -i -u build \
+ -v "$PWD:/build" \
+ \
+ -e CCACHE_DIR="/ccache" \
+ -e PATH="/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" \
+ -v "$HOME/ccache/gerrit-verifications:/ccache" \
docker_img: '$USER/debian-buster-jenkins'
docker_img_erlang: '$USER/debian-bullseye-erlang'
timeout_cmd: '/usr/bin/timeout 30m'
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh'
gerrit_url: 'ssh://jenkins@gerrit.osmocom.org:29418'
repos_url: '{gerrit_url}/{repos}'
gerrit_project: '{repos}'
@@ -98,7 +112,7 @@
a1_name: arch
a1: !!python/tuple [arm-none-eabi, amd64]
combination_filter: '!(arch=="arm-none-eabi" && label=="FreeBSD_amd64")'
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins_arch.sh "$arch"'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins_arch.sh "$arch"'
- libsmpp34
@@ -115,7 +129,7 @@
a3_name: IU
a3: !!python/tuple [--disable-iu]
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e IU="$IU" \
-e SMPP="$SMPP" \
-e MGCP="$MGCP" \
@@ -157,7 +171,7 @@
case "$(arch)" in
arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;;
esac
- {docker_run} \
+ {docker_run_ccache} \
-e FIRMWARE_VERSION="$FIRMWARE_VERSION" \
-e WITH_MANUALS="$WITH_MANUALS" \
"$DOCKER_IMG" {timeout_cmd} /build/contrib/jenkins_bts_model.sh "$BTS_MODEL"
@@ -197,7 +211,7 @@
(GTP == "--enable-gtp-linux" && WITH_MANUALS == "0") ||
(GTP == "--disable-gtp-linux" && WITH_MANUALS == "1")
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e GTP="$GTP" \
-e WITH_MANUALS="$WITH_MANUALS" \
{docker_img} {timeout_cmd} /build/contrib/jenkins.sh
@@ -207,7 +221,7 @@
- osmo_gsup:
repos_url: '{gerrit_url}/erlang/{repos}'
gerrit_project: 'erlang/{repos}'
- cmd: '{docker_run} {docker_img_erlang} {timeout_cmd} /build/contrib/jenkins.sh'
+ cmd: '{docker_run_ccache} {docker_img_erlang} {timeout_cmd} /build/contrib/jenkins.sh'
pipeline_binpkgs: false
- osmo-hlr
@@ -223,7 +237,7 @@
(IU == "--enable-iu" && WITH_MANUALS == "0") ||
(IU == "--disable-iu" && WITH_MANUALS == "1")
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e IU="$IU" \
-e WITH_MANUALS="$WITH_MANUALS" \
{docker_img} {timeout_cmd} /build/contrib/jenkins.sh
@@ -253,7 +267,7 @@
case "$(arch)" in
arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;;
esac
- {docker_run} \
+ {docker_run_ccache} \
-e FIRMWARE_VERSION="$FIRMWARE_VERSION" \
-e with_vty="$with_vty" \
-e with_dsp="$with_dsp" \
@@ -273,7 +287,7 @@
(IU == "--enable-iu" && WITH_MANUALS == "0") ||
(IU == "--disable-iu" && WITH_MANUALS == "1")
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e IU="$IU" \
-e WITH_MANUALS="$WITH_MANUALS" \
{docker_img} {timeout_cmd} /build/contrib/jenkins.sh
@@ -302,7 +316,7 @@
case "$(arch)" in
arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;;
esac
- {docker_run} \
+ {docker_run_ccache} \
-e INSTR="$INSTR" \
-e WITH_MANUALS="$WITH_MANUALS" \
"$DOCKER_IMG" {timeout_cmd} /build/contrib/jenkins.sh
diff --git a/jobs/master-builds.yml b/jobs/master-builds.yml
index c0b7ea0..fb05c53 100644
--- a/jobs/master-builds.yml
+++ b/jobs/master-builds.yml
@@ -25,25 +25,43 @@
docker run --rm=true \
--cap-add SYS_PTRACE \
-e ASCIIDOC_WARNINGS_CHECK="1" \
- -e CCACHE_DIR="/ccache" \
-e HOME=/build \
-e JOB_NAME="$JOB_NAME" \
-e MAKE=make \
-e OSMOPY_DEBUG_TCP_SOCKETS="1" \
-e OSMO_GSM_MANUALS_DIR="/opt/osmo-gsm-manuals" \
- -e PATH="/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" \
-e PARALLEL_MAKE="$PARALLEL_MAKE" \
-e PUBLISH="1" \
-e SSH_AUTH_SOCK=/ssh-agent \
-e WITH_MANUALS="1" \
-w /build -i -u build \
-v $(readlink -f $SSH_AUTH_SOCK):/ssh-agent \
- -v "$HOME/ccache/master-builds:/ccache" \
-v "$PWD:/build" \
-v "$HOME/.ssh:/home/build/.ssh:ro" \
+ docker_run_ccache: |
+ docker run --rm=true \
+ --cap-add SYS_PTRACE \
+ -e ASCIIDOC_WARNINGS_CHECK="1" \
+ -e HOME=/build \
+ -e JOB_NAME="$JOB_NAME" \
+ -e MAKE=make \
+ -e OSMOPY_DEBUG_TCP_SOCKETS="1" \
+ -e OSMO_GSM_MANUALS_DIR="/opt/osmo-gsm-manuals" \
+ -e PARALLEL_MAKE="$PARALLEL_MAKE" \
+ -e PUBLISH="1" \
+ -e SSH_AUTH_SOCK=/ssh-agent \
+ -e WITH_MANUALS="1" \
+ -w /build -i -u build \
+ -v $(readlink -f $SSH_AUTH_SOCK):/ssh-agent \
+ -v "$PWD:/build" \
+ -v "$HOME/.ssh:/home/build/.ssh:ro" \
+ \
+ -e CCACHE_DIR="/ccache" \
+ -e PATH="/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" \
+ -v "$HOME/ccache/master-builds:/ccache" \
docker_img: '$USER/debian-buster-jenkins'
timeout_cmd: '/usr/bin/timeout 30m'
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh'
trigger:
email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org
git_base_url: https://gerrit.osmocom.org
@@ -81,7 +99,7 @@
- libosmo-dsp:
git_base_url: https://gitea.osmocom.org/sdr
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
{docker_img} {timeout_cmd} sh -ex -c \
'autoreconf -fi; \
./configure; \
@@ -142,7 +160,7 @@
a1_name: arch
a1: !!python/tuple [arm-none-eabi, amd64]
combination_filter: '!(arch=="arm-none-eabi" && label=="FreeBSD_amd64")'
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins_arch.sh "$arch"'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins_arch.sh "$arch"'
# Full triggers would be:
# trigger: >
# master-libosmo-abis, master-libosmo-netif, master-libosmo-sccp, master-openbsc,
@@ -205,7 +223,7 @@
a3_name: IU
a3: !!python/tuple [--disable-iu]
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e IU="$IU" \
-e SMPP="$SMPP" \
-e MGCP="$MGCP" \
@@ -239,7 +257,7 @@
case "$(arch)" in
arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;;
esac
- {docker_run} \
+ {docker_run_ccache} \
-e FIRMWARE_VERSION="$FIRMWARE_VERSION" \
-e WITH_MANUALS="$WITH_MANUALS" \
"$DOCKER_IMG" {timeout_cmd} /build/contrib/jenkins_bts_model.sh "$BTS_MODEL"
@@ -289,7 +307,7 @@
(GTP == "--enable-gtp-linux" && WITH_MANUALS == "0") ||
(GTP == "--disable-gtp-linux" && WITH_MANUALS == "1")
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e GTP="$GTP" \
-e WITH_MANUALS="$WITH_MANUALS" \
{docker_img} {timeout_cmd} /build/contrib/jenkins.sh
@@ -331,7 +349,7 @@
(IU == "--enable-iu" && WITH_MANUALS == "0") ||
(IU == "--disable-iu" && WITH_MANUALS == "1")
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e IU="$IU" \
-e WITH_MANUALS="$WITH_MANUALS" \
{docker_img} {timeout_cmd} /build/contrib/jenkins.sh
@@ -360,7 +378,7 @@
case "$(arch)" in
arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;;
esac
- {docker_run} \
+ {docker_run_ccache} \
-e FIRMWARE_VERSION="$FIRMWARE_VERSION" \
-e with_vty="$with_vty" \
-e with_dsp="$with_dsp" \
@@ -376,7 +394,7 @@
(IU == "--enable-iu" && WITH_MANUALS == "0") ||
(IU == "--disable-iu" && WITH_MANUALS == "1")
cmd: |
- {docker_run} \
+ {docker_run_ccache} \
-e IU="$IU" \
-e WITH_MANUALS="$WITH_MANUALS" \
{docker_img} {timeout_cmd} /build/contrib/jenkins.sh
@@ -403,7 +421,7 @@
case "$(arch)" in
arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;;
esac
- {docker_run} \
+ {docker_run_ccache} \
-e INSTR="$INSTR" \
-e WITH_MANUALS="$WITH_MANUALS" \
"$DOCKER_IMG" {timeout_cmd} /build/contrib/jenkins.sh
@@ -412,19 +430,19 @@
- osmo-sysmon
- osmo-remsim
- osmo-asf4-dfu:
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish'
email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org ewild@sysmocom.de
ssh:
- binaries_ftp.osmocom.org
- docs_ftp.osmocom.org
- osmo-ccid-firmware:
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish'
email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org ewild@sysmocom.de
ssh:
- binaries_ftp.osmocom.org
- docs_ftp.osmocom.org
- simtrace2:
- cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish'
+ cmd: '{docker_run_ccache} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish'
email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org kredon@sysmocom.de
ssh:
- binaries_ftp.osmocom.org
To view, visit change 31053. To unsubscribe, or for help writing mail filters, visit settings.