+ fastpoll: true
+ basedir: src/lttng-modules
+ wipe-workspace: false
+ skip-tag: true
+
+ triggers:
+ - pollscm:
+ cron: "@hourly"
+
+ properties:
+ - build-discarder:
+ num-to-keep: 10
+ artifact-num-to-keep: 2
+ - github:
+ url: https://github.com/{github_user}/{github_name}
+
+ publishers:
+ - workspace-cleanup
+ - ircbot: <tng-modules_publisher_ircbot_defaults
+ strategy: statechange-only
+ message-type: summary
+ matrix-notifier: only-parent
+ - email-ext: <tng-modules_publisher_email-ext_defaults
+ recipients: '{obj:email_to}'
+ reply-to: ci-notification@lists.lttng.org
+ always: false
+ unstable: false
+ first-failure: true
+ first-unstable: true
+ not-built: false
+ aborted: false
+ regression: false
+ failure: false
+ second-failure: false
+ improvement: false
+ still-failing: false
+ success: false
+ fixed: false
+ fixed-unhealthy: true
+ still-unstable: false
+ pre-build: false
+ matrix-trigger: only-parent
+ send-to:
+ - recipients
+
+
+## Anchors
+- _lttng-modules_build_parameters_defaults: <tng-modules_build_parameters_defaults
+ name: 'lttng-modules_build_parameters_defaults'
+ 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: '{kverrc|true}'
+ description: 'Add latest RC to kernel versions list.'
+ - string:
+ name: 'kgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.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.'
+
+- _lttng-modules_build_parameters_review: <tng-modules_build_parameters_review
+ name: 'lttng-modules_build_parameters_review'
+ parameters:
+ - string:
+ name: 'maxConcurrentBuild'
+ default: '10'
+ 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: '{kverrc|true}'
+ description: 'Add latest RC to kernel versions list.'
+ - string:
+ name: 'kgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
+ description: 'The linux kernel git repository url.'
+ - string:
+ name: 'kbuildjob'
+ 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:
+ - 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/ubuntu-{uversion}.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: 'uversion'
+ default: '{uversion}'
+ description: 'The lowest kernel version to build.'
+
+- _lttng-modules_build_parameters_rt: <tng-modules_build_parameters_rt
+ name: 'lttng-modules_build_parameters_rt'
+ 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/kernel/rt/linux-stable-rt.git'
+ description: 'The linux kernel git repository url.'
+ - string:
+ name: 'kbuildjob'
+ default: 'lttng-modules_PARAM_build'
+ description: 'The parametrized job to use for child builds.'
+
+- _lttng-modules_build_builders_defaults: <tng-modules_build_builders_defaults
+ name: 'lttng-modules_build_builders_defaults'
+ builders:
+ - system-groovy:
+ command:
+ !include-raw-escape: scripts/lttng-modules/master.groovy
+
+- _lttng-modules_build_rt_builders_defaults: <tng-modules_build_rt_builders_defaults
+ name: 'lttng-modules_build_rt_builders_defaults'
+ builders:
+ - system-groovy:
+ command:
+ !include-raw-escape: scripts/lttng-modules/master-rt.groovy
+
+
+## Templates
+- job-template:
+ name: lttng-modules_ALL_trigger-vanilla
+ defaults: lttng-modules
+ description: |
+ The LTTng modules provide Linux kernel tracing capability to the LTTng
+ 2.0 tracer toolset.
+
+ This job will trigger the build jobs when a new tag is added to the vanilla
+ and stable kernel trees.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ node: 'master'
+
+ wrappers:
+ - timestamps
+ - ansicolor
+
+ scm: []
+
+ triggers:
+ # Check for new kernel tags everay day at 22:00
+ - timed: "0 22 * * *"
+
+ builders:
+ - system-groovy:
+ command:
+ !include-raw-escape: scripts/lttng-modules/trigger-vanilla.groovy
+
+ publishers: []
+
+- job-template:
+ name: lttng-modules_{mversion}_{buildtype}-vanilla
+ defaults: lttng-modules
+ description: |
+ The LTTng modules provide Linux kernel tracing capability to the LTTng
+ 2.0 tracer toolset.
+
+ This job will build the {mversion} branch against stable vanilla
+ kernel tags.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ node: 'master'
+
+ triggers:
+ # Check for new commits every hour
+ - pollscm:
+ cron: "@hourly"
+
+ <<: *lttng-modules_build_parameters_defaults
+ <<: *lttng-modules_build_builders_defaults
+
+- job-template:
+ name: dev_mjeanson_lttng-modules_{mversion}_{buildtype}-vanilla
+ defaults: lttng-modules
+ description: |
+ The LTTng modules provide Linux kernel tracing capability to the LTTng
+ 2.0 tracer toolset.
+
+ This job will build the {mversion} branch against stable vanilla
+ kernel tags.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ node: 'master'
+
+ # This is a test job, no triggers
+ triggers: []
+
+ 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: 'true'
+ description: 'Add latest RC to kernel versions list.'
+ - string:
+ name: 'kgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
+ description: 'The linux kernel git repository url.'
+ - string:
+ name: 'kbuildjob'
+ default: 'dev_mjeanson_lttng-modules_PARAM_{parambuildtype}'
+ description: 'The parametrized job to use for child builds.'
+
+ <<: *lttng-modules_build_builders_defaults
+
+- job-template:
+ name: dev_review_lttng-modules_{mversion}_build
+ defaults: lttng-modules
+ concurrent: true
+
+ node: 'master'
+
+ scm: