diff options
Diffstat (limited to 'jobs/master-builds.yml')
-rw-r--r-- | jobs/master-builds.yml | 396 |
1 files changed, 307 insertions, 89 deletions
diff --git a/jobs/master-builds.yml b/jobs/master-builds.yml index 47a9eea..66043e5 100644 --- a/jobs/master-builds.yml +++ b/jobs/master-builds.yml @@ -5,9 +5,8 @@ # following default values can be overridden by each repo disabled: false concurrent: true - node: 'osmocom-master-debian8' # axes related defaults - slave_axis: !!python/tuple [osmocom-master-debian9] + slave_axis: !!python/tuple [osmocom-master] a1_name: a1 a1: !!python/tuple [default] a2_name: a2 @@ -23,34 +22,68 @@ # Documentation for variables (keep in sync!): # https://osmocom.org/projects/osmocom-servers/wiki/Jenkins_build_verification_jobs docker_run: | - ARTIFACT_STORE="$HOME/jenkins_build_artifact_store" - mkdir -p "$ARTIFACT_STORE" docker run --rm=true \ --cap-add SYS_PTRACE \ - -e ARTIFACT_STORE=/artifact_store \ -e ASCIIDOC_WARNINGS_CHECK="1" \ -e HOME=/build \ + -e IS_MASTER_BUILD=1 \ -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 PATH="$PATH:/build_bin" \ -e PUBLISH="1" \ + -e SSH_AUTH_SOCK=/ssh-agent \ -e WITH_MANUALS="1" \ -w /build -i -u build \ - -v "$PWD:/build" -v "$HOME/bin:/build_bin" \ - -v "$ARTIFACT_STORE:/artifact_store" \ + -v $(readlink -f $SSH_AUTH_SOCK):/ssh-agent \ + -v "$PWD:/build" \ -v "$HOME/.ssh:/home/build/.ssh:ro" \ - docker_img: '$USER/debian-stretch-jenkins' - cmd: '{docker_run} {docker_img} /build/contrib/jenkins.sh' - wrappers: [] + docker_run_ccache: | + CCACHE_DIR="$HOME/ccache/master-builds" + mkdir -p "$CCACHE_DIR" + chown osmocom-build:osmocom-build "$CCACHE_DIR" + + docker run --rm=true \ + --cap-add SYS_PTRACE \ + -e ASCIIDOC_WARNINGS_CHECK="1" \ + -e HOME=/build \ + -e IS_MASTER_BUILD=1 \ + -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 "$CCACHE_DIR:/ccache" \ + docker_img: '$USER/debian-bookworm-build' + docker_img_erlang: '$USER/debian-bookworm-erlang' + timeout_cmd: '/usr/bin/timeout 30m' + 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: git.osmocom.org + gerrit_url: 'https://gerrit.osmocom.org' + gitea_url: 'https://gitea.osmocom.org' + repos_url: '{gerrit_url}/{repos}' + branches: + - master + ssh: + - docs_ftp.osmocom.org # in alphabetical order repos: - - asn1c + - asn1c: + branches: + - osmo-iuh/master - libasn1c: # Full triggers would be: @@ -60,7 +93,7 @@ trigger: master-osmo-iuh - libgtpnl: - trigger: master-osmo-ggsn, openggsn + trigger: master-osmo-ggsn, openggsn, master-osmo-upf - libosmo-abis: # Full triggers would be: @@ -73,21 +106,32 @@ master-libosmo-netif, master-osmo-bts - libosmo-dsp: + repos_url: '{gitea_url}/sdr/{repos}' cmd: | - {docker_run} \ - {docker_img} sh -ex -c \ + {docker_run_ccache} \ + {docker_img} {timeout_cmd} sh -ex -c \ 'autoreconf -fi; \ ./configure; \ $MAKE $PARALLEL_MAKE; \ $MAKE distcheck' trigger: master-osmo-gmr - email: gerrit-log@lists.osmocom.org laforge@gnumonks.org 246tnt@gmail.com + email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org 246tnt@gmail.com + + - libosmo-gprs: + # Full triggers would be: + # trigger: > + # master-osmo-pcu + # Optimized: + # (see comment at libosmocore) + trigger: > + master-osmo-pcu - libosmo-netif: # Full triggers would be: # trigger: > # master-libosmo-sccp, master-openbsc, mastere-osmo-hlr, master-osmo-iuh, - # master-osmo-mgw, master-osmo-msc, master-osmo-sgsn + # master-osmo-mgw, master-osmo-msc, master-osmo-sgsn, master-osmo-hnodeb, + # master-osmo-hnbgw # Optimized: # (see comment at libosmocore) trigger: > @@ -96,31 +140,44 @@ master-osmo-mgw, master-osmo-sgsn + - libosmo-pfcp: + # Full triggers would be: + # trigger: > + # master-osmo-upf, master-osmo-hnbgw + # Optimized: + # (see comment at libosmocore) + trigger: > + master-osmo-upf, + master-osmo-hnbgw + - libosmo-sccp: # Full triggers would be: # trigger: > - # master-openbsc, master-osmo-bsc, master-osmo-iuh, master-osmo-msc, master-osmo-sgsn + # master-openbsc, master-osmo-bsc, master-osmo-iuh, master-osmo-msc, + # master-osmo-sgsn, master-osmo-hnodeb, master-osmo-hnbgw # Optimized: # (see comment at libosmocore) trigger: > master-openbsc, master-osmo-bsc, + master-osmo-bsc-nat, master-osmo-iuh, master-osmo-msc, master-osmo-sgsn - libosmocore: + slave_axis: !!python/tuple [io_uring] # OS#6405 a1_name: arch a1: !!python/tuple [arm-none-eabi, amd64] combination_filter: '!(arch=="arm-none-eabi" && label=="FreeBSD_amd64")' - cmd: '{docker_run} {docker_img} /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, # master-osmo-bsc, master-osmo-bts, master-osmo-ggsn, master-osmo-gmr, master-osmo-hlr, # master-osmo-iuh, master-osmo-mgw, master-osmo-msc, master-osmo-pcap, master-osmo-pcu, - # master-osmo-sgsn, master-osmo-sip-connector, master-osmo-tetra, - # master-osmocom-bb, SIMtrace, xgoldmon + # master-osmo-sgsn, master-osmo-sip-connector, master-osmo-tetra, master-osmo-hnodeb + # master-osmocom-bb, master-simtrace, master-xgoldmon # Optimized: # libosmocore # -> master-libosmo-abis @@ -128,29 +185,38 @@ # -> master-libosmo-sccp # -> master-openbsc # -> master-osmo-bsc + # -> master-osmo-bsc-nat # -> master-osmo-iuh # -> master-osmo-msc # -> master-osmo-sgsn + # -> master-osmo-hnodeb # -> master-osmo-msc # -> master-osmo-sgsn # -> master-osmo-hlr # -> master-osmo-mgw # -> master-osmo-sgsn # -> master-osmo-bts + # -> master-libosmo-gprs + # -> master-osmo-pcu + # -> master-libosmo-pfcp + # -> master-osmo-upf + # -> master-osmo-hnbgw # -> master-osmo-ggsn # -> master-osmo-sgsn # [...] trigger: > master-libosmo-abis, + master-libosmo-pfcp, + master-osmo-gbproxy, master-osmo-ggsn, master-osmo-gmr, master-osmo-pcap, - master-osmo-pcu, master-osmo-sip-connector, master-osmo-tetra, + master-osmo-trx, master-osmocom-bb, - SIMtrace, - xgoldmon + master-simtrace, + master-xgoldmon - libsmpp34: trigger: master-osmo-msc, master-openbsc @@ -167,16 +233,17 @@ a3_name: IU a3: !!python/tuple [--disable-iu] cmd: | - {docker_run} \ + {docker_run_ccache} \ -e IU="$IU" \ -e SMPP="$SMPP" \ -e MGCP="$MGCP" \ - {docker_img} /build/contrib/jenkins.sh + {docker_img} {timeout_cmd} /build/contrib/jenkins.sh - osmo-bsc + - osmo-bsc-nat - osmo-bts: - slave_axis: !!python/tuple [osmocom-master-debian9, rpi4-deb9build-ansible] + slave_axis: !!python/tuple [osmocom-master, rpi4-raspbian11] a1_name: FIRMWARE_VERSION a1: !!python/tuple [master, femtobts_v2.7, superfemto_v2.4, superfemto_v3.0.1pre, superfemto_v3.1, superfemto_v5.1, v2017.01, origin/nrw/litecell15, origin/nrw/oc2g] a2_name: BTS_MODEL @@ -184,20 +251,72 @@ a3_name: WITH_MANUALS a3: !!python/tuple ["1", "0"] combination_filter: > - (FIRMWARE_VERSION == "master" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "master" && BTS_MODEL == "trx" && WITH_MANUALS == "0" && label == "rpi4-deb9build-ansible") || - (FIRMWARE_VERSION == "femtobts_v2.7" && BTS_MODEL == "sysmo" && WITH_MANUALS == "1" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "superfemto_v2.4" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "superfemto_v3.0.1pre" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "superfemto_v3.1" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "superfemto_v5.1" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "v2017.01" && BTS_MODEL == "lc15" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "origin/nrw/litecell15" && BTS_MODEL == "lc15" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (FIRMWARE_VERSION == "origin/nrw/oc2g" && BTS_MODEL == "oc2g" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") + (FIRMWARE_VERSION == "master" && WITH_MANUALS == "1" && label == "osmocom-master") || + (FIRMWARE_VERSION == "master" && BTS_MODEL == "trx" && WITH_MANUALS == "0" && label == "rpi4-raspbian11") || + (FIRMWARE_VERSION == "femtobts_v2.7" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "superfemto_v2.4" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "superfemto_v3.0.1pre" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "superfemto_v3.1" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "superfemto_v5.1" && BTS_MODEL == "sysmo" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "v2017.01" && BTS_MODEL == "lc15" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "origin/nrw/litecell15" && BTS_MODEL == "lc15" && WITH_MANUALS == "0" && label == "osmocom-master") || + (FIRMWARE_VERSION == "origin/nrw/oc2g" && BTS_MODEL == "oc2g" && WITH_MANUALS == "0" && label == "osmocom-master") concurrent: false - cmd: 'PUBLISH=1 ASCIIDOC_WARNINGS_CHECK=1 ./contrib/jenkins_bts_model.sh "$BTS_MODEL"' + cmd: | + DOCKER_IMG="{docker_img}" + case "$(arch)" in + arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;; + esac + {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" + + - osmo_dia2gsup: + repos_url: '{gerrit_url}/erlang/{repos}' + cmd: '{docker_run} {docker_img_erlang} {timeout_cmd} /build/contrib/jenkins.sh' + + - osmo-epdg: + repos_url: '{gerrit_url}/erlang/{repos}' + cmd: '{docker_run} {docker_img_erlang} {timeout_cmd} /build/contrib/jenkins.sh' + + - osmo-e1-hardware: + a2_name: JOB_TYPE + a2: !!python/tuple ["firmware", "gateware", "manuals", "software"] + cmd: | + DOCKER_IMG="{docker_img}" + case "$JOB_TYPE" in + firmware|gateware) + DOCKER_IMG="registry.osmocom.org/$USER/fpga-build" + docker pull "$DOCKER_IMG" + ;; + esac + {docker_run} \ + -e JOB_TYPE="$JOB_TYPE" \ + "$DOCKER_IMG" \ + {timeout_cmd} /build/contrib/jenkins.sh --publish + ssh: + - binaries_ftp.osmocom.org + - docs_ftp.osmocom.org + - ice40-usbtrace: + repos_url: '{gitea_url}/electronics/{repos}' + docker_img: 'registry.osmocom.org/$USER/fpga-build' + cmd: 'docker pull {docker_img} && {docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish' + ssh: + - binaries_ftp.osmocom.org + - docs_ftp.osmocom.org + - no2bootloader: + repos_url: 'https://github.com/no2fpga/{repos}' + docker_img: 'registry.osmocom.org/$USER/fpga-build' + cmd: 'docker pull {docker_img} && {docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins.sh --publish' + email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org kredon@sysmocom.de 246tnt@gmail.com + ssh: + - binaries_ftp.osmocom.org + - docs_ftp.osmocom.org + + - osmo-fl2k: + repos_url: '{gitea_url}/sdr/{repos}' - - osmo-fl2k - osmo-ggsn: a1_name: GTP a1: !!python/tuple [--enable-gtp-linux,--disable-gtp-linux] @@ -207,31 +326,43 @@ (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} /build/contrib/jenkins.sh + {docker_img} {timeout_cmd} /build/contrib/jenkins.sh trigger: master-osmo-sgsn + - osmo-upf + - osmo-gmr: - email: gerrit-log@lists.osmocom.org 246tnt@gmail.com + repos_url: '{gitea_url}/satellite/{repos}' + email: jenkins-notifications@lists.osmocom.org 246tnt@gmail.com + + - osmo-gsm-manuals - - osmo-gsm-manuals: - node: 'osmocom-master-debian9' + - osmo_gsup: + repos_url: '{gerrit_url}/erlang/{repos}' + cmd: '{docker_run_ccache} {docker_img_erlang} {timeout_cmd} /build/contrib/jenkins.sh' - osmo-gsm-tester: - cmd: '{docker_run} {docker_img} /build/contrib/jenkins-build-manuals.sh' + cmd: '{docker_run} {docker_img} {timeout_cmd} /build/contrib/jenkins-build-manuals.sh' - osmo-hlr - osmo-iuh: # Full triggers would be: - # trigger: master-osmo-msc, master-osmo-sgsn + # trigger: master-osmo-msc, master-osmo-sgsn, master-osmo-hnodeb, master-osmo-hnbgw # Optimized: # (see comment at libosmocore) trigger: > master-osmo-msc, - master-osmo-sgsn + master-osmo-sgsn, + master-osmo-hnodeb, + master-osmo-hnbgw + + - osmo-ir77: + repos_url: '{gitea_url}/satellite/{repos}' + email: jenkins-notifications@lists.osmocom.org 246tnt@gmail.com - osmo-mgw: trigger: master-osmo-msc, master-osmo-bsc @@ -242,18 +373,18 @@ a2_name: WITH_MANUALS a2: !!python/tuple ["1", "0"] combination_filter: > - (IU == "--enable-iu" && WITH_MANUALS == "0") || - (IU == "--disable-iu" && WITH_MANUALS == "1") + (IU == "--enable-iu" && WITH_MANUALS == "1") || + (IU == "--disable-iu" && WITH_MANUALS == "0") cmd: | - {docker_run} \ + {docker_run_ccache} \ -e IU="$IU" \ -e WITH_MANUALS="$WITH_MANUALS" \ - {docker_img} /build/contrib/jenkins.sh + {docker_img} {timeout_cmd} /build/contrib/jenkins.sh - osmo-pcap - osmo-pcu: - slave_axis: !!python/tuple [osmocom-master-debian9, rpi4-deb9build-ansible] + slave_axis: !!python/tuple [osmocom-master, rpi4-raspbian11] a1_name: FIRMWARE_VERSION a1: !!python/tuple [master, v2017.01, origin/nrw/litecell15] a2_name: with_vty @@ -263,19 +394,26 @@ a4_name: WITH_MANUALS a4: !!python/tuple ["1", "0"] combination_filter: > - (with_vty == "True" && with_dsp == "sysmo" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (with_vty == "True" && with_dsp == "lc15" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (with_vty == "True" && with_dsp == "lc15" && FIRMWARE_VERSION=="v2017.01" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (with_vty == "True" && with_dsp == "lc15" && FIRMWARE_VERSION=="origin/nrw/litecell15" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (with_vty == "False" && with_dsp == "none" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "1" && label == "osmocom-master-debian9") || - (with_vty == "False" && with_dsp == "none" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "0" && label == "rpi4-deb9build-ansible") + (with_vty == "True" && with_dsp == "sysmo" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "0" && label == "osmocom-master") || + (with_vty == "True" && with_dsp == "lc15" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "0" && label == "osmocom-master") || + (with_vty == "True" && with_dsp == "lc15" && FIRMWARE_VERSION=="v2017.01" && WITH_MANUALS == "0" && label == "osmocom-master") || + (with_vty == "True" && with_dsp == "lc15" && FIRMWARE_VERSION=="origin/nrw/litecell15" && WITH_MANUALS == "0" && label == "osmocom-master") || + (with_vty == "False" && with_dsp == "none" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "1" && label == "osmocom-master") || + (with_vty == "False" && with_dsp == "none" && FIRMWARE_VERSION=="master" && WITH_MANUALS == "0" && label == "rpi4-raspbian11") cmd: | - {docker_run} \ + DOCKER_IMG="{docker_img}" + case "$(arch)" in + arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;; + esac + {docker_run_ccache} \ -e FIRMWARE_VERSION="$FIRMWARE_VERSION" \ -e with_vty="$with_vty" \ -e with_dsp="$with_dsp" \ -e WITH_MANUALS="$WITH_MANUALS" \ - {docker_img} /build/contrib/jenkins.sh + "$DOCKER_IMG" {timeout_cmd} /build/contrib/jenkins.sh + + - osmo-python-tests: + repos_url: '{gerrit_url}/python/{repos}' - osmo-sgsn: a1_name: IU @@ -283,45 +421,72 @@ a2_name: WITH_MANUALS a2: !!python/tuple ["1", "0"] combination_filter: > - (IU == "--enable-iu" && WITH_MANUALS == "0") || - (IU == "--disable-iu" && WITH_MANUALS == "1") + (IU == "--enable-iu" && WITH_MANUALS == "1") || + (IU == "--disable-iu" && WITH_MANUALS == "0") cmd: | - {docker_run} \ + {docker_run_ccache} \ -e IU="$IU" \ -e WITH_MANUALS="$WITH_MANUALS" \ - {docker_img} /build/contrib/jenkins.sh + {docker_img} {timeout_cmd} /build/contrib/jenkins.sh - osmo-sip-connector: - email: gerrit-log@lists.osmocom.org laforge@gnumonks.org holger@freyther.de + email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org holger@freyther.de - osmo-tetra: - email: gerrit-log@lists.osmocom.org laforge@gnumonks.org 246tnt@gmail.com + email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org 246tnt@gmail.com - osmo-trx: - slave_axis: !!python/tuple [osmocom-master-debian9,rpi4-deb9build-ansible] + slave_axis: !!python/tuple [osmocom-master,rpi4-raspbian11] a1_name: INSTR a1: !!python/tuple [--with-sse, --without-sse, --with-neon, --with-neon-vfpv4] a2_name: WITH_MANUALS a2: !!python/tuple ["1", "0"] combination_filter: > - (INSTR == "--without-sse" && WITH_MANUALS == "1" && label == "osmocom-master-debian9") || - (INSTR == "--with-sse" && WITH_MANUALS == "0" && label == "osmocom-master-debian9") || - (INSTR == "--with-neon" && WITH_MANUALS == "0" && label == "rpi4-deb9build-ansible") || - (INSTR == "--with-neon-vfpv4" && WITH_MANUALS == "0" && label == "rpi4-deb9build-ansible") - cmd: 'PUBLISH=1 ASCIIDOC_WARNINGS_CHECK=1 ./contrib/jenkins.sh' + (INSTR == "--without-sse" && WITH_MANUALS == "1" && label == "osmocom-master") || + (INSTR == "--with-sse" && WITH_MANUALS == "0" && label == "osmocom-master") || + (INSTR == "--with-neon" && WITH_MANUALS == "0" && label == "rpi4-raspbian11") || + (INSTR == "--with-neon-vfpv4" && WITH_MANUALS == "0" && label == "rpi4-raspbian11") + cmd: | + DOCKER_IMG="{docker_img}" + case "$(arch)" in + arm*) DOCKER_IMG="$DOCKER_IMG-arm" ;; + esac + {docker_run_ccache} \ + -e INSTR="$INSTR" \ + -e WITH_MANUALS="$WITH_MANUALS" \ + "$DOCKER_IMG" {timeout_cmd} /build/contrib/jenkins.sh - osmocom-bb - osmo-sysmon - osmo-remsim - osmo-asf4-dfu: - cmd: '{docker_run} {docker_img} /build/contrib/jenkins.sh --publish' - email: gerrit-log@lists.osmocom.org laforge@gnumonks.org ewild@sysmocom.de + 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} /build/contrib/jenkins.sh --publish' - email: gerrit-log@lists.osmocom.org laforge@gnumonks.org ewild@sysmocom.de + 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 + - simtrace: + repos_url: '{gitea_url}/sim-card/{repos}' + email: jenkins-notifications@lists.osmocom.org laforge@gnumonks.org kredon@sysmocom.de - simtrace2: - cmd: '{docker_run} {docker_img} /build/contrib/jenkins.sh --publish' - email: gerrit-log@lists.osmocom.org laforge@gnumonks.org kredon@sysmocom.de + 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 + - docs_ftp.osmocom.org + - osmo-opencm3-projects: + repos_url: '{gitea_url}/electronics/{repos}' + cmd: '{docker_run} {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 + - docs_ftp.osmocom.org - osmo-e1d - osmo-cbc @@ -330,15 +495,63 @@ - osmo-uecups - osmo-el2tpd - osmo-smlc + - osmo-gbproxy + - osmo-hnodeb + + - osmo-hnbgw: + a1_name: PFCP + a1: !!python/tuple ["1", "0"] + a2_name: WITH_MANUALS + a2: !!python/tuple ["1", "0"] + combination_filter: > + (PFCP == "1" && WITH_MANUALS == "1") || + (PFCP == "0" && WITH_MANUALS == "0") + cmd: | + {docker_run_ccache} \ + -e PFCP="$PFCP" \ + -e WITH_MANUALS="$WITH_MANUALS" \ + {docker_img} {timeout_cmd} /build/contrib/jenkins.sh - rtl-sdr: + repos_url: '{gitea_url}/sdr/{repos}' email: laforge@gnumonks.org steve@steve-m.de + - pysim: + concurrent: false + slave_axis: !!python/tuple [simtester,osmocom-master] + a2_name: JOB_TYPE + a2: !!python/tuple ["test", "pylint", "docs"] + combination_filter: > + (JOB_TYPE == "test" && label == "simtester") || + (JOB_TYPE == "pylint" && label == "osmocom-master") || + (JOB_TYPE == "docs" && label == "osmocom-master") + cmd: | + case "$JOB_TYPE" in + "test") + {timeout_cmd} ./contrib/jenkins.sh + ;; + *) + {docker_run} \ + -e JOB_TYPE="$JOB_TYPE" \ + {docker_img} \ + {timeout_cmd} /build/contrib/jenkins.sh + ;; + esac + - sysmo-usim-tool: concurrent: false - cmd: cd ./tests; ./run-tests + cmd: cd ./tests; {timeout_cmd} ./run-tests slave_axis: !!python/tuple [simtester] - git_base_url: git.sysmocom.de + repos_url: 'https://gitea.sysmocom.de/sysmocom/{repos}' + + - dahdi-tools + + - xgoldmon: + repos_url: 'https://github.com/2b-as/{repos}' + cmd: | + rm -rf osmo-ci + git clone --depth=1 https://gerrit.osmocom.org/osmo-ci -b master + {docker_run_ccache} {docker_img} {timeout_cmd} /build/osmo-ci/scripts/xgoldmon-jenkins.sh jobs: - 'master-{repos}' @@ -353,11 +566,9 @@ - build-discarder: days-to-keep: 30 num-to-keep: 120 - artifact-days-to-keep: -1 - artifact-num-to-keep: -1 description: | Automatic jenkins test job of - <a href="http://{git_base_url}/{repos}">{repos}</a> + <a href="{repos_url}">{repos}</a> <br/><br/> <b>Auto-generated using Jenkins Job Builder. DO NOT EDIT MANUALLY!</b> @@ -365,7 +576,6 @@ sequential: '{obj:sequential}' combination-filter: | {obj:combination_filter} - node: '{obj:node}' axes: - axis: type: slave @@ -390,13 +600,14 @@ scm: - git: - url: git://{git_base_url}/{repos} - branches: - - 'origin/master' + url: '{obj:repos_url}' + branches: '{obj:branches}' refspec: name: wipe-workspace: false skip-tag: true + submodule: + recursive: true triggers: - pollscm: @@ -408,15 +619,22 @@ - shell: '{obj:cmd}' publishers: + - archive: + allow-empty: true + artifacts: '**/core, **/testsuite.log, **/workspace.tar.xz' - warnings: console-log-parsers: - 'GNU C Compiler 4 (gcc)' resolve-relative-paths: true - trigger: project: '{obj:trigger}' + - trigger: + project: 'Osmocom_OBS_master' - email: recipients: '{obj:email}' send-to-individuals: true - wrappers: '{obj:wrappers}' + wrappers: + - ssh-agent-credentials: + users: '{obj:ssh}' # vim: expandtab tabstop=2 shiftwidth=2 |