---
+## Defaults
- defaults:
name: lttng-modules
description: |
project-type: freestyle
- logrotate:
- numToKeep: 2
-
wrappers:
- workspace-cleanup
- timestamps
scm:
- git:
- url: git://github.com/{github_user}/{github_name}.git
+ url: https://github.com/{github_user}/{github_name}.git
browser: githubweb
browser-url: https://github.com/{github_user}/{github_name}
branches:
- - "{mversion}"
+ - "refs/heads/{mversion}"
shallow-clone: true
- skip-tag: true
fastpoll: true
- basedir: lttng-modules
+ 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:
+ 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: '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: '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_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_{mversion}_{kversion}_{buildtype}
+ 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.
- project-type: matrix
- node: 'master' # Applies only to matrix flyweight task
- axes:
- - axis:
- type: slave
- name: arch
- values: '{obj:arch}'
+ 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:
- - copyartifact:
- project: kernel_{kversion}_{buildtype}/arch=$arch
- which-build: last-successful
- stable: true
- filter: 'build/**'
- target: 'deps/linux'
- do-not-fingerprint: true
- - shell: |
- git clone --depth=1 -b "v{kversion}" --reference $HOME/gitcache/linux-stable.git/ git://artifacts.internal.efficios.com/git/linux-stable.git linux
- - shell:
- !include-raw-escape: scripts/lttng-modules/build.sh
+ - system-groovy:
+ command:
+ !include-raw-escape: scripts/lttng-modules/trigger-vanilla.groovy
- publishers:
- - archive:
- artifacts: 'build/**'
- allow-empty: false
- - workspace-cleanup
+ publishers: []
- job-template:
- name: lttng-modules_{mversion}_build-vanilla
+ 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 all stable vanilla
+ 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: 'mversion'
- default: '{mversion}'
- description: 'The lttng-modules branch to build.'
- string:
name: 'maxConcurrentBuild'
- default: '4'
+ default: '20'
description: 'The maximum number of concurrent child build to run.'
- string:
name: 'kverfloor'
- default: 'v2.6.36'
+ 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://artifacts.internal.efficios.com/git/linux-stable.git'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
description: 'The linux kernel git repository url.'
- string:
name: 'kbuildjob'
- default: 'lttng-modules_VERSION_param-build'
+ default: 'dev_mjeanson_lttng-modules_PARAM_{parambuildtype}'
description: 'The parametrized job to use for child builds.'
- builders:
- - system-groovy:
- command:
- !include-raw-escape: scripts/lttng-modules/master-vanilla.groovy
+ <<: *lttng-modules_build_builders_defaults
+
+- job-template:
+ name: dev_review_lttng-modules_{mversion}_build
+ 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_review
+ <<: *lttng-modules_build_builders_defaults
publishers:
- workspace-cleanup
- job-template:
- name: lttng-modules_{mversion}_build-{uversion}
+ 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
+ description: |
+ The LTTng modules provide Linux kernel tracing capability to the LTTng
+ 2.0 tracer toolset.
+
+ This job will build the {mversion} branch against all stable vanilla
+ kernel tags.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ node: 'master'
+
+ <<: *lttng-modules_build_parameters_defaults
+ <<: *lttng-modules_build_builders_defaults
+
+ triggers:
+ # Check for new commits every friday at midnight
+ - pollscm:
+ cron: "0 0 * * 5"
+
+- 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}
+ 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 Ubuntu {uversion}
+ released kernels, including the LTS backport kernels.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ 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
+
+- job-template:
+ name: lttng-modules_{mversion}_fullbuild-{uversion}
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 all Ubuntu {uversion}
+ This job will build the {mversion} branch against Ubuntu {uversion}
released kernels, including the LTS backport kernels.
<p>Job is managed by Jenkins Job Builder.</p>
node: 'master'
+ <<: *lttng-modules_build_parameters_ubuntu
+ <<: *lttng-modules_build_builders_defaults
+
+ triggers:
+ - pollscm:
+ cron: "@midnight"
+
+- job-template:
+ name: lttng-modules_{mversion}_build-rt
+ 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 all Linutronix RT
+ kernels.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ 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
+
+- job-template:
+ name: lttng-modules_PARAM_build
+ defaults: lttng-modules
+ description: |
+ This is a parametrized job used by 'master' jobs to build any combinations
+ of lttng-modules and linux kernel versions.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ project-type: matrix
+ node: 'master' # Applies only to matrix flyweight task
+ axes:
+ - axis:
+ type: slave
+ name: platforms
+ values: '{obj:platforms}'
+
+ properties:
+ - build-discarder:
+ days-to-keep: 2
+
parameters:
- string:
name: 'mversion'
- default: '{mversion}'
+ default: 'master'
description: 'The lttng-modules branch to build.'
- string:
- name: 'maxConcurrentBuild'
- default: '4'
- description: 'The maximum number of concurrent child build to run.'
+ name: 'mgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
+ description: 'The lttng-modules git repository url.'
- string:
- name: 'uversion'
- default: '{uversion}'
- description: 'The lowest kernel version to build.'
+ name: 'ktag'
+ default: ''
+ description: 'The linux kernel git tag to build against.'
- string:
name: 'kgitrepo'
- default: 'git://artifacts.internal.efficios.com/git/ubuntu-{uversion}.git'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
description: 'The linux kernel git repository url.'
- - string:
- name: 'kbuildjob'
- default: 'lttng-modules_VERSION_param-build'
- description: 'The parametrized job to use for child builds.'
+
+ concurrent: true
+
+ scm: []
+
+ triggers: []
builders:
- - system-groovy:
- command:
- !include-raw-escape: scripts/lttng-modules/master-ubuntu.groovy
+ - shell:
+ !include-raw-escape: scripts/lttng-modules/param-build.sh
publishers:
- workspace-cleanup
- job-template:
- name: lttng-modules_{mversion}_build-rt
+ name: dev_mjeanson_lttng-modules_PARAM_build
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 all Linutronix RT
- kernels.
+ This is a parametrized job used by 'master' jobs to build any combinations
+ of lttng-modules and linux kernel versions.
<p>Job is managed by Jenkins Job Builder.</p>
- node: 'master'
+ project-type: matrix
+ node: 'master' # Applies only to matrix flyweight task
+ axes:
+ - axis:
+ type: slave
+ name: platforms
+ values: '{obj:platforms}'
+
+ properties:
+ - build-discarder:
+ days-to-keep: 2
parameters:
- string:
name: 'mversion'
- default: '{mversion}'
+ default: 'master'
description: 'The lttng-modules branch to build.'
- string:
- name: 'maxConcurrentBuild'
- default: '4'
- description: 'The maximum number of concurrent child build to run.'
+ name: 'mgitrepo'
+ default: 'https://github.com/{github_user}/lttng-modules.git'
+ description: 'The lttng-modules git repository url.'
- string:
- name: 'kverfloor'
- default: 'v2.6.36-rt0-rebase'
- description: 'The lowest kernel version to build.'
+ name: 'ktag'
+ default: ''
+ description: 'The linux kernel git tag to build against.'
- string:
name: 'kgitrepo'
- default: 'git://artifacts.internal.efficios.com/git/linux-rt-devel.git'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
description: 'The linux kernel git repository url.'
+
+ concurrent: true
+
+ scm: []
+
+ triggers: []
+
+ builders:
+ - shell:
+ !include-raw-escape: scripts/lttng-modules/param-build.sh
+
+ publishers:
+ - workspace-cleanup
+
+
+- job-template:
+ name: dev_mjeanson_lttng-modules_PARAM_crossbuild
+ defaults: lttng-modules
+ description: |
+ This is a parametrized job used by 'master' jobs to build any combinations
+ of lttng-modules and linux kernel versions.
+
+ <p>Job is managed by Jenkins Job Builder.</p>
+
+ project-type: matrix
+ node: 'master' # Applies only to matrix flyweight task
+ axes:
+ - axis:
+ type: user-defined
+ name: cross_arch
+ values: '{obj:cross_arch}'
+ - axis:
+ type: slave
+ name: platforms
+ values: '{obj:platforms}'
+
+ properties:
+ - build-discarder:
+ days-to-keep: 2
+
+ parameters:
- string:
- name: 'kbuildjob'
- default: 'lttng-modules_VERSION_param-build'
- description: 'The parametrized job to use for child builds.'
+ name: 'mversion'
+ default: 'master'
+ description: 'The lttng-modules branch to build.'
+ - string:
+ name: 'mgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
+ description: 'The lttng-modules git repository url.'
+ - string:
+ name: 'ktag'
+ default: ''
+ description: 'The linux kernel git tag to build against.'
+ - string:
+ name: 'kgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
+ description: 'The linux kernel git repository url.'
+
+ concurrent: true
+
+ scm: []
+
+ triggers: []
builders:
- - system-groovy:
- command:
- !include-raw-escape: scripts/lttng-modules/master-rt.groovy
+ - shell:
+ !include-raw-escape: scripts/lttng-modules/param-build.sh
publishers:
- workspace-cleanup
- job-template:
- name: lttng-modules_VERSION_param-build
+ name: lttng-modules_PARAM_crossbuild
defaults: lttng-modules
description: |
This is a parametrized job used by 'master' jobs to build any combinations
project-type: matrix
node: 'master' # Applies only to matrix flyweight task
axes:
+ - axis:
+ type: user-defined
+ name: cross_arch
+ values: '{obj:cross_arch}'
- axis:
type: slave
- name: arch
- values: '{obj:arch}'
+ name: platforms
+ values: '{obj:platforms}'
+
+ properties:
+ - build-discarder:
+ days-to-keep: 2
parameters:
- string:
default: 'master'
description: 'The lttng-modules branch to build.'
- string:
- name: 'kversion'
+ name: 'mgitrepo'
+ default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
+ description: 'The lttng-modules git repository url.'
+ - string:
+ name: 'ktag'
default: ''
description: 'The linux kernel git tag to build against.'
- string:
name: 'kgitrepo'
- default: 'git://artifacts.internal.efficios.com/git/linux-stable.git'
+ default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
description: 'The linux kernel git repository url.'
concurrent: true
- logrotate:
- daysToKeep: 2
- scm:
- - git:
- url: git://github.com/lttng/lttng-modules.git
- browser: githubweb
- browser-url: https://github.com/lttng/lttng-modules
- branches:
- - "${{mversion}}"
- skip-tag: true
- basedir: lttng-modules
+ scm: []
- triggers:
+ triggers: []
builders:
- - shell: |
- git clone --depth=1 -b "$kversion" --reference $HOME/gitcache/linux-stable.git/ "$kgitrepo" linux
- shell:
!include-raw-escape: scripts/lttng-modules/param-build.sh
- job-template:
name: lttng-modules_{mversion}_coverity
defaults: lttng-modules
- node: 'x86-64'
+ node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
- scm:
- - git:
- url: git://github.com/lttng/lttng-modules.git
- browser: githubweb
- browser-url: https://github.com/lttng/lttng-modules
- branches:
- - "{mversion}"
-
wrappers:
- workspace-cleanup
- timestamps
builders:
- shell: |
- git clone --depth=1 -b v4.4 --reference $HOME/gitcache/linux-stable.git/ git://artifacts.internal.efficios.com/git/linux-stable.git linux
- cd linux
- make defconfig
+ 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
make modules_prepare
- cd ..
- shell:
!include-raw-escape: scripts/common/coverity.sh
publishers:
+ - archive:
+ artifacts: 'analysis-results.tgz,cov-int/**'
+ allow-empty: false
+ - ircbot: *lttng-modules_publisher_ircbot_defaults
- workspace-cleanup
-- job-template:
- name: lttng-modules_{mversion}_cppcheck
- defaults: lttng-modules
- triggers:
- - pollscm:
- cron: "@daily"
+## Project
+- project:
+ name: lttng-modules
+ github_user: lttng
+ github_name: lttng-modules
+ email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
+ mversion:
+ - stable-2.12
+ - stable-2.13
+ - master
+ jobs:
- scm:
- - git:
- url: git://github.com/lttng/lttng-modules.git
- browser: githubweb
- browser-url: https://github.com/lttng/lttng-modules
- branches:
- - "{mversion}"
+# Vanilla normal builds
+ - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - master
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v4.4
+ kverceil: ''
+ kverfilter: stable-head
+ - 'lttng-modules_{mversion}_fullbuild-vanilla':
+ mversion:
+ - master
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v4.4
+ kverceil: ''
+ kverfilter: none
- builders:
- - shell: |
- rm -f cppcheck.xml
- cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> cppcheck.xml
+ - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - stable-2.13
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v3.0
+ kverceil: ''
+ kverfilter: stable-head
+ - 'lttng-modules_{mversion}_fullbuild-vanilla':
+ mversion:
+ - stable-2.13
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v3.0
+ kverceil: ''
+ kverfilter: none
- publishers:
- - archive:
- artifacts: 'cppcheck.xml'
- allow-empty: false
- - cppcheck:
- pattern: 'cppcheck.xml'
- - email:
- recipients: 'ci-notification@lists.lttng.org'
- notify-every-unstable-build: true
- send-to-individuals: false
+ - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - stable-2.12
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v3.0
+ kverceil: v5.18-rc1
+ kverfilter: stable-head
+ - 'lttng-modules_{mversion}_fullbuild-vanilla':
+ mversion:
+ - stable-2.12
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v3.0
+ kverceil: v5.18-rc1
+ kverfilter: none
-- job-template:
- name: lttng-modules_{mversion}_sloccount
- defaults: lttng-modules
- description: |
- The LTTng modules provide Linux kernel tracing capability to the LTTng
- 2.0 tracer toolset.
+# RT normal builds
+ - 'lttng-modules_{mversion}_build-rt':
+ mversion: master
+ kverfloor: v4.4.0-rt1-rebase
+ kverceil: ''
+ kverfilter: stable-head
- This job runs the sloccount utility and generates a trend report.
+# 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
- <p>Job is managed by Jenkins Job Builder.</p>
+# Ubuntu normal builds
+ - 'lttng-modules_{mversion}_{buildtype}-{uversion}':
+ mversion:
+ - master
+ - stable-2.13
+ uversion:
+ - focal
+ - jammy
+ - noble
+ buildtype: build
+ parambuildtype: build
+ kverfloor: ''
+ kverceil: ''
+ kverfilter: stable-head
- triggers:
- - pollscm:
- cron: "@daily"
+ - '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
- builders:
- - shell: |
- cloc --by-file --xml --out=cloc.xml lttng-modules/
+# Vanilla crossbuilds
+ - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - master
+ buildtype: crossbuild
+ parambuildtype: crossbuild
+ kverfloor: v4.4
+ kverceil: ''
+ kverfilter: stable-head
- publishers:
- - archive:
- artifacts: 'cloc.xml'
- allow-empty: false
- - sloccount:
- report-files: 'cloc.xml'
+ - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - stable-2.13
+ buildtype: crossbuild
+ parambuildtype: crossbuild
+ kverfloor: v3.18
+ kverceil: ''
+ kverfilter: stable-head
+ - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - stable-2.12
+ buildtype: crossbuild
+ parambuildtype: crossbuild
+ kverfloor: v3.18
+ kverceil: v5.18-rc1
+ kverfilter: stable-head
-## Project
-- project:
- name: lttng-modules
- github_user: lttng
- github_name: lttng-modules
- mversion:
- !include: jobs/inc/lttng-modules-versions.yaml.inc
- jobs:
- - 'lttng-modules_{mversion}_build-vanilla'
- - 'lttng-modules_{mversion}_build-rt':
- mversion: master
- - 'lttng-modules_{mversion}_build-{uversion}':
+# Ubuntu cross builds
+ - 'lttng-modules_{mversion}_{buildtype}-{uversion}':
+ mversion:
+ - master
+ - stable-2.13
uversion:
- - trusty
- - xenial
- - 'lttng-modules_VERSION_param-build':
- arch: !!python/tuple [x86-32, x86-64]
- - 'lttng-modules_{mversion}_cppcheck'
- - 'lttng-modules_{mversion}_sloccount':
- mversion: master
+ - 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 [deb12-amd64]
+ - 'lttng-modules_PARAM_crossbuild':
+ platforms: !!python/tuple [deb12-amd64]
+ cross_arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, riscv64]
+
+# Misc jobs
+ - 'lttng-modules_ALL_trigger-vanilla'
- 'lttng-modules_{mversion}_coverity':
mversion: master
+
+- project:
+ name: lttng-modules-review
+ jobs:
+ - 'dev_review_lttng-modules_{mversion}_build':
+ mversion: master
+ kverfloor: v4.4
+ kverceil: ''
+ kverfilter: lts-head
+ - 'dev_review_lttng-modules_{mversion}_build':
+ mversion: stable-2.13
+ kverfloor: v3.0
+ kverceil: ''
+ kverfilter: lts-head
+ - 'dev_review_lttng-modules_{mversion}_build':
+ mversion: stable-2.12
+ kverfloor: v3.0
+ kverceil: v5.18
+ kverfilter: lts-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
+ github_user: mjeanson
+ github_name: lttng-modules
+ email_to: ''
+ jobs:
+ - 'dev_mjeanson_lttng-modules_PARAM_build':
+ platforms: !!python/tuple [deb12-amd64]
+ - 'dev_mjeanson_lttng-modules_PARAM_crossbuild':
+ platforms: !!python/tuple [deb12-amd64]
+ cross_arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
+ - 'dev_mjeanson_lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - master
+ buildtype: build
+ parambuildtype: build
+ kverfloor: v3.0
+ kverceil: ''
+ kverfilter: stable-head
+ - 'dev_mjeanson_lttng-modules_{mversion}_{buildtype}-vanilla':
+ mversion:
+ - master
+ buildtype: crossbuild
+ parambuildtype: crossbuild
+ kverfloor: v4.4
+ kverceil: ''
+ kverfilter: lts-head