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
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'
description: 'Kernel versions list filtering strategy.'
- string:
name: 'kverrc'
- default: 'false'
+ default: '{kverrc|true}'
description: 'Add latest RC to kernel versions list.'
- string:
name: 'kgitrepo'
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:
scm: []
triggers:
- - timed: "@hourly"
+ # Check for new kernel tags everay day at 22:00
+ - timed: "0 22 * * *"
builders:
- system-groovy:
node: 'master'
+ triggers:
+ # Check for new commits every hour
+ - pollscm:
+ cron: "@hourly"
+
<<: *lttng-modules_build_parameters_defaults
<<: *lttng-modules_build_builders_defaults
node: 'master'
+ # This is a test job, no triggers
+ triggers: []
+
parameters:
- string:
name: 'maxConcurrentBuild'
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
<<: *lttng-modules_build_builders_defaults
triggers:
+ # Check for new commits every friday at midnight
- pollscm:
- cron: "@midnight"
+ 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.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ 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.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ 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}
node: 'master'
+ triggers:
+ # Check for new commits every hour
+ - pollscm:
+ cron: "@hourly"
+ # Also run every saturday at midnight to catch new ubuntu kernel tags
+ - timed: "0 0 * * 6"
+
<<: *lttng-modules_build_parameters_ubuntu
<<: *lttng-modules_build_builders_defaults
node: 'master'
+ triggers:
+ # Check for new commits every hour
+ - pollscm:
+ cron: "@hourly"
+ # Also run every sunday at midnight to catch new rt kernel tags
+ - timed: "0 0 * * 7"
+
<<: *lttng-modules_build_parameters_rt
<<: *lttng-modules_build_rt_builders_defaults
- string:
name: 'mversion'
default: 'master'
- description: 'The lttng-modules branch to build.'
+ description: 'The lttng-modules branch to build. Use `refs/XXX` for a specific ref, or a commit hash.'
- string:
name: 'mgitrepo'
default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
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'
+ - bool:
+ name: 'DEBUG'
+ default: false
+ description: "Enable verbose builds"
+ - bool:
+ name: 'FAIL_ON_WARNINGS'
+ default: false
+ description: "Fail the lttng-modules build if there are any warnings"
concurrent: true
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
type: user-defined
name: cross_arch
values: '{obj:cross_arch}'
+ - axis:
+ type: slave
+ name: platforms
+ values: '{obj:platforms}'
properties:
- build-discarder:
- job-template:
name: lttng-modules_{mversion}_coverity
defaults: lttng-modules
- node: 'amd64'
+ node: 'deb12-amd64'
triggers:
- pollscm:
builders:
- shell: |
- git clone --depth=1 -b v5.5 --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
kverfloor: v3.0
kverceil: v5.18-rc1
kverfilter: stable-head
+ kverrc: false
- 'lttng-modules_{mversion}_fullbuild-vanilla':
mversion:
- stable-2.12
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':
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:
+ - master
+ - stable-2.13
uversion:
- - xenial
- - bionic
- focal
- jammy
+ - noble
buildtype: build
parambuildtype: build
kverfloor: ''
kverceil: ''
kverfilter: stable-head
+ - 'lttng-modules_{mversion}_{buildtype}-{uversion}':
+ mversion:
+ - stable-2.12
+ uversion:
+ - focal
+ - jammy
+ buildtype: build
+ parambuildtype: build
+ kverfloor: ''
+ kverceil: Ubuntu-hwe-5.18.0-0.0
+ kverfilter: stable-head
+
# Vanilla crossbuilds
- 'lttng-modules_{mversion}_{buildtype}-vanilla':
mversion:
kverfloor: v3.18
kverceil: v5.18-rc1
kverfilter: stable-head
+ kverrc: false
# Ubuntu cross builds
- 'lttng-modules_{mversion}_{buildtype}-{uversion}':
+ mversion:
+ - master
+ - stable-2.13
uversion:
- - xenial
- - bionic
+ - focal
+ - jammy
+ - noble
buildtype: crossbuild
parambuildtype: crossbuild
kverfloor: ''
kverceil: ''
kverfilter: stable-head
+ - 'lttng-modules_{mversion}_{buildtype}-{uversion}':
+ mversion:
+ - stable-2.12
+ uversion:
+ - focal
+ - jammy
+ buildtype: crossbuild
+ parambuildtype: crossbuild
+ kverfloor: ''
+ kverceil: Ubuntu-hwe-5.18.0-0.0
+ kverfilter: stable-head
+
# Parametrized kernel and modules build jobs
- 'lttng-modules_PARAM_build':
- platforms: !!python/tuple [amd64]
+ platforms: !!python/tuple [deb12-amd64]
- 'lttng-modules_PARAM_crossbuild':
- cross_arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
+ platforms: !!python/tuple [deb12-amd64]
+ cross_arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, riscv64]
# Misc jobs
- 'lttng-modules_ALL_trigger-vanilla'
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