X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=jobs%2Flttng-modules.yaml;h=744a712e3b24a14debc33bce469d212605aca031;hb=f295b56d1540f4098e2a1e5ad3571f76b7b31961;hp=22c1e3050672a60c74ebcda5ecf05bd659a08af0;hpb=009efde7cc10501549ae77eded54ef059aee76c3;p=lttng-ci.git diff --git a/jobs/lttng-modules.yaml b/jobs/lttng-modules.yaml index 22c1e30..744a712 100644 --- a/jobs/lttng-modules.yaml +++ b/jobs/lttng-modules.yaml @@ -45,7 +45,7 @@ strategy: statechange-only message-type: summary matrix-notifier: only-parent - - email-ext: + - email-ext: <tng-modules_publisher_email-ext_defaults recipients: '{obj:email_to}' reply-to: ci-notification@lists.lttng.org always: false @@ -91,7 +91,7 @@ description: 'Kernel versions list filtering strategy.' - string: name: 'kverrc' - default: 'true' + default: '{kverrc|true}' description: 'Add latest RC to kernel versions list.' - string: name: 'kgitrepo' @@ -123,7 +123,7 @@ description: 'Kernel versions list filtering strategy.' - string: name: 'kverrc' - default: 'true' + default: '{kverrc|true}' description: 'Add latest RC to kernel versions list.' - string: name: 'kgitrepo' @@ -134,6 +134,86 @@ default: 'lttng-modules_PARAM_build' description: 'The parametrized job to use for child builds.' +- _lttng-modules_build_parameters_ubuntu: <tng-modules_build_parameters_el + name: 'lttng-modules_build_parameters_el' + parameters: + - string: + name: 'maxConcurrentBuild' + default: '20' + description: 'The maximum number of concurrent child build to run.' + - string: + name: 'kverfloor' + default: '{kverfloor}' + description: 'The lowest kernel version to build.' + - string: + name: 'kverceil' + default: '{kverceil}' + description: 'The highest kernel version to build. (excluded)' + - string: + name: 'kverfilter' + default: '{kverfilter}' + description: 'Kernel versions list filtering strategy.' + - string: + name: 'kverrc' + default: 'false' + description: 'Add latest RC to kernel versions list.' + - string: + name: 'kgitrepo' + default: 'git://git-mirror.internal.efficios.com/git/rocky.git' + description: 'The linux kernel git repository url.' + - string: + name: 'kbuildjob' + default: 'lttng-modules_PARAM_{parambuildtype}' + description: 'The parametrized job to use for child builds.' + - string: + name: 'elversion' + default: '{elversion}' + description: 'The EL release (eg. el8)' + - string: + name: 'getsrc_repo' + default: 'https://github.com/rocky-linux/rocky-tools.git' + description: 'The git repository that contains the getsrc tool' + - string: + name: 'getsrc_version' + default: 'main' + description: 'The tag or commit to use when cloning the getsrc tool' + +- _lttng-modules_build_parameters_ubuntu: <tng-modules_build_parameters_sles + name: 'lttng-modules_build_parameters_sles' + parameters: + - string: + name: 'maxConcurrentBuild' + default: '20' + description: 'The maximum number of concurrent child build to run.' + - string: + name: 'kverfloor' + default: '{kverfloor}' + description: 'The lowest kernel version to build.' + - string: + name: 'kverceil' + default: '{kverceil}' + description: 'The highest kernel version to build. (excluded)' + - string: + name: 'kverfilter' + default: '{kverfilter}' + description: 'Kernel versions list filtering strategy.' + - string: + name: 'kverrc' + default: 'false' + description: 'Add latest RC to kernel versions list.' + - string: + name: 'kgitrepo' + default: 'git://git-mirror.internal.efficios.com/git/sles.git' + description: 'The linux kernel git repository url.' + - string: + name: 'kbuildjob' + default: 'lttng-modules_PARAM_{parambuildtype}' + description: 'The parametrized job to use for child builds.' + - string: + name: 'slesversion' + default: '{slesversion}' + description: 'The SLES release (eg. sles15sp4)' + - _lttng-modules_build_parameters_ubuntu: <tng-modules_build_parameters_ubuntu name: 'lttng-modules_build_parameters_ubuntu' parameters: @@ -363,6 +443,92 @@ publishers: - workspace-cleanup +- job-template: + name: 'dev_review_lttng-modules_{mversion}_build-{elversion}' + defaults: lttng-modules + concurrent: true + + node: 'master' + + scm: + - git: + url: https://review.lttng.org/lttng-modules + refspec: 'refs/changes/*:refs/changes/*' + branches: + - '$GERRIT_REFSPEC' + basedir: src/lttng-modules + skip-tag: true + + triggers: + - gerrit: + trigger-on: + - comment-added-event: + approval-category: 'CI-Build' + approval-value: 1 + projects: + - project-compare-type: 'PLAIN' + project-pattern: 'lttng-modules' + branches: + - branch-compare-type: 'PLAIN' + branch-pattern: '{mversion}' + + properties: + - build-discarder: + days-to-keep: 1 + - throttle: + option: 'category' + categories: + - 'gerrit-build' + + <<: *lttng-modules_build_parameters_el + <<: *lttng-modules_build_builders_defaults + + publishers: + - workspace-cleanup + +- job-template: + name: 'dev_review_lttng-modules_{mversion}_build-{slesversion}' + defaults: lttng-modules + concurrent: true + + node: 'master' + + scm: + - git: + url: https://review.lttng.org/lttng-modules + refspec: 'refs/changes/*:refs/changes/*' + branches: + - '$GERRIT_REFSPEC' + basedir: src/lttng-modules + skip-tag: true + + triggers: + - gerrit: + trigger-on: + - comment-added-event: + approval-category: 'CI-Build' + approval-value: 1 + projects: + - project-compare-type: 'PLAIN' + project-pattern: 'lttng-modules' + branches: + - branch-compare-type: 'PLAIN' + branch-pattern: '{mversion}' + + properties: + - build-discarder: + days-to-keep: 1 + - throttle: + option: 'category' + categories: + - 'gerrit-build' + + <<: *lttng-modules_build_parameters_sles + <<: *lttng-modules_build_builders_defaults + + publishers: + - workspace-cleanup + - job-template: name: lttng-modules_{mversion}_fullbuild-vanilla defaults: lttng-modules @@ -385,6 +551,46 @@ - pollscm: cron: "0 0 * * 5" +- job-template: + name: 'lttng-modules_{mversion}_{buildtype}-{elversion}' + defaults: lttng-modules + description: | + The LTTng modules provide Linux kernel tracing capability to the LTTng + 2.0 tracer toolset. + + This job will the {mversion} branch against EL {elversion} released + kernels. + +
Job is managed by Jenkins Job Builder.
+ + node: 'master' + triggers: + - pollscm: + cron: "@hourly" + - timed: "H 0 * * 6" + <<: *lttng-modules_build_parameters_el + <<: *lttng-modules_build_builders_defaults + +- job-template: + name: lttng-modules_{mversion}_{buildtype}-{slesversion} + defaults: lttng-modules + description: | + The LTTng modules provide Linux kernel tracing capability to the LTTng + 2.0 tracer toolset. + + This job will the {mversion} branch against SLES {slesversion} released + kernels. + +Job is managed by Jenkins Job Builder.
+ + node: 'master' + triggers: + - pollscm: + cron: "@hourly" + - timed: "H 0 * * 6" + <<: *lttng-modules_build_parameters_sles + <<: *lttng-modules_build_builders_defaults + - job-template: name: lttng-modules_{mversion}_{buildtype}-{uversion} defaults: lttng-modules @@ -492,6 +698,18 @@ name: 'kgitrepo' default: 'git://git-mirror.internal.efficios.com/git/linux-all.git' description: 'The linux kernel git repository url.' + - string: + name: 'distroversion' + default: '' + description: 'Supplementary distribution version, eg. sles15sp4 or el8' + - string: + name: 'getsrc_repo' + default: 'https://github.com/rocky-linux/rocky-tools.git' + description: 'The git repository that contains the getsrc tool' + - string: + name: 'getsrc_version' + default: 'main' + description: 'The tag or commit to use when cloning the getsrc tool' concurrent: true @@ -500,6 +718,15 @@ triggers: [] builders: + - conditional-step: + condition-kind: regex-match + label: '$distroversion' + regex: '^el.*$' + steps: + - shell: | + #!/bin/bash + set -exu + git clone -b "$getsrc_version" "$getsrc_repo" src/getsrc - shell: !include-raw-escape: scripts/lttng-modules/param-build.sh @@ -693,7 +920,7 @@ builders: - shell: | - git clone --depth=1 -b v6.1 --reference $HOME/gitcache/linux-stable.git/ git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git src/linux + git clone --depth=1 -b v6.1 --reference-if-able $HOME/gitcache/linux-stable.git/ git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git src/linux cd src/linux make allyesconfig sed -i "s/# CONFIG_KALLSYMS_ALL is not set/CONFIG_KALLSYMS_ALL=y/g" .config @@ -764,6 +991,7 @@ kverfloor: v3.0 kverceil: v5.18-rc1 kverfilter: stable-head + kverrc: false - 'lttng-modules_{mversion}_fullbuild-vanilla': mversion: - stable-2.12 @@ -772,6 +1000,21 @@ kverfloor: v3.0 kverceil: v5.18-rc1 kverfilter: none + kverrc: false + +# EL normal builds + - 'lttng-modules_{mversion}_{buildtype}-{elversion}': + mversion: + - master + - stable-2.13 + - stable-2.12 + elversion: + - el8 + buildtype: build + parambuildtype: build + kverfloor: '' + kverceil: '' + kverfilter: stable-head # RT normal builds - 'lttng-modules_{mversion}_build-rt': @@ -780,6 +1023,20 @@ kverceil: '' kverfilter: stable-head +# SLES normal builders + - 'lttng-modules_{mversion}_{buildtype}-{slesversion}': + mversion: + - master + - stable-2.13 + - stable-2.12 + slesversion: + - sles15sp4 + buildtype: build + parambuildtype: build + kverfloor: '' + kverceil: '' + kverfilter: stable-head + # Ubuntu normal builds - 'lttng-modules_{mversion}_{buildtype}-{uversion}': mversion: @@ -834,6 +1091,7 @@ kverfloor: v3.18 kverceil: v5.18-rc1 kverfilter: stable-head + kverrc: false # Ubuntu cross builds - 'lttng-modules_{mversion}_{buildtype}-{uversion}': @@ -892,6 +1150,31 @@ kverfloor: v3.0 kverceil: v5.18 kverfilter: lts-head + kverrc: false + - 'dev_review_lttng-modules_{mversion}_build-{elversion}': + mversion: + - master + - stable-2.13 + - stable-2.12 + elversion: + - el8 + buildtype: build + parambuildtype: build + kverfloor: '' + kverceil: '' + kverfilter: stable-head + - 'dev_review_lttng-modules_{mversion}_build-{slesversion}': + mversion: + - master + - stable-2.13 + - stable-2.12 + slesversion: + - sles15sp4 + buildtype: build + parambuildtype: build + kverfloor: '' + kverceil: '' + kverfilter: stable-head - project: name: lttng-modules-dev-mjeanson