X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;ds=sidebyside;f=jobs%2Flttng-modules.yaml;h=45ef167791d031256413ad14f4b23fb81b2c27f6;hb=e5f5905a0b96d2911a3bb8a7f8fba6cfd49d8b67;hp=0df201ae96a1ea1cb8eeede3b9707c5a5b55c053;hpb=3a01c580582e4697b1554ed3695e57ef5911e919;p=lttng-ci.git diff --git a/jobs/lttng-modules.yaml b/jobs/lttng-modules.yaml index 0df201a..45ef167 100644 --- a/jobs/lttng-modules.yaml +++ b/jobs/lttng-modules.yaml @@ -3,10 +3,6 @@ - lttng-modules_build_parameters_defaults: <tng-modules_build_parameters_defaults name: 'lttng-modules_build_parameters_defaults' parameters: - - string: - name: 'mversion' - default: '{mversion}' - description: 'The lttng-modules branch to build.' - string: name: 'maxConcurrentBuild' default: '20' @@ -23,22 +19,54 @@ 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_gerrit: <tng-modules_build_parameters_gerrit + name: 'lttng-modules_build_parameters_defaults' + 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: 'false' + 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_VERSION_param-{parambuildtype}' + default: 'lttng-modules_PARAM_build' description: 'The parametrized job to use for child builds.' - lttng-modules_build_parameters_ubuntu: <tng-modules_build_parameters_ubuntu name: 'lttng-modules_build_parameters_ubuntu' parameters: - - string: - name: 'mversion' - default: '{mversion}' - description: 'The lttng-modules branch to build.' - string: name: 'maxConcurrentBuild' default: '20' @@ -55,13 +83,17 @@ 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_VERSION_param-{parambuildtype}' + default: 'lttng-modules_PARAM_{parambuildtype}' description: 'The parametrized job to use for child builds.' - string: name: 'uversion' @@ -71,10 +103,6 @@ - lttng-modules_build_parameters_rt: <tng-modules_build_parameters_rt name: 'lttng-modules_build_parameters_rt' parameters: - - string: - name: 'mversion' - default: '{mversion}' - description: 'The lttng-modules branch to build.' - string: name: 'maxConcurrentBuild' default: '20' @@ -83,13 +111,25 @@ name: 'kverfloor' default: 'v2.6.36-rt0-rebase' 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-rt-devel.git' + 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_VERSION_param-build' + default: 'lttng-modules_PARAM_build' description: 'The parametrized job to use for child builds.' - lttng-modules_build_builders_defaults: <tng-modules_build_builders_defaults @@ -125,11 +165,11 @@ scm: - git: - url: git://github.com/{github_user}/{github_name}.git + url: git://git-mirror.internal.efficios.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 fastpoll: true basedir: src/lttng-modules @@ -148,9 +188,61 @@ publishers: - workspace-cleanup + - 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 ## 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. + +
Job is managed by Jenkins Job Builder.
+ + node: 'master' + + wrappers: + - timestamps + - ansicolor + + scm: [] + + triggers: + - timed: "@hourly" + + 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 @@ -168,6 +260,50 @@ <<: *lttng-modules_build_parameters_defaults <<: *lttng-modules_build_builders_defaults +- job-template: + name: dev_gerrit_lttng-modules_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: 'ANT' + branch-pattern: '**' + trigger-for-unreviewed-patches: true + + properties: + - build-discarder: + days-to-keep: 1 + - throttle: + option: 'category' + categories: + - 'gerrit-build' + + <<: *lttng-modules_build_parameters_gerrit + <<: *lttng-modules_build_builders_defaults + + publishers: + - workspace-cleanup + - job-template: name: lttng-modules_{mversion}_fullbuild-vanilla defaults: lttng-modules @@ -245,7 +381,7 @@ <<: *lttng-modules_build_rt_builders_defaults - job-template: - name: lttng-modules_VERSION_param-build + name: lttng-modules_PARAM_build defaults: lttng-modules description: | This is a parametrized job used by 'master' jobs to build any combinations @@ -271,7 +407,11 @@ 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: @@ -281,26 +421,20 @@ concurrent: true - 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: src/lttng-modules + scm: [] triggers: builders: - - shell: | - git clone --depth=1 -b "$kversion" --reference $HOME/gitcache/linux-stable.git/ "$kgitrepo" src/linux - shell: !include-raw-escape: scripts/lttng-modules/param-build.sh + publishers: + - workspace-cleanup + + - job-template: - name: lttng-modules_VERSION_param-crossbuild + name: lttng-modules_PARAM_crossbuild defaults: lttng-modules description: | This is a parametrized job used by 'master' jobs to build any combinations @@ -326,7 +460,11 @@ 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: @@ -336,28 +474,21 @@ concurrent: true - 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: src/lttng-modules + scm: [] triggers: builders: - - shell: | - git clone --depth=1 -b "$kversion" --reference $HOME/gitcache/linux-stable.git/ "$kgitrepo" src/linux - shell: !include-raw-escape: scripts/lttng-modules/param-build.sh + publishers: + - workspace-cleanup + - job-template: name: lttng-modules_{mversion}_coverity defaults: lttng-modules - node: 'x86-64' + node: 'amd64' triggers: - pollscm: @@ -376,14 +507,20 @@ builders: - shell: | - git clone --depth=1 -b v4.10 --reference $HOME/gitcache/linux-stable.git/ git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git src/linux + 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 cd src/linux - make defconfig + make allyesconfig sed -i "s/# CONFIG_KALLSYMS_ALL is not set/CONFIG_KALLSYMS_ALL=y/g" .config make modules_prepare - shell: !include-raw-escape: scripts/common/coverity.sh + publishers: + - archive: + artifacts: 'analysis-results.tgz,cov-int/**' + allow-empty: false + - workspace-cleanup + - job-template: name: lttng-modules_{mversion}_cppcheck defaults: lttng-modules @@ -394,15 +531,15 @@ builders: - shell: | - rm -f cppcheck.xml - cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/lttng-modules 2> cppcheck.xml + rm -f cppcheck-result.xml + cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/lttng-modules 2> cppcheck-result.xml publishers: - archive: - artifacts: 'cppcheck.xml' + artifacts: 'cppcheck-result.xml' allow-empty: false - cppcheck: - pattern: 'cppcheck.xml' + pattern: 'cppcheck-result.xml' - job-template: name: lttng-modules_{mversion}_sloccount @@ -437,57 +574,64 @@ name: lttng-modules github_user: lttng github_name: lttng-modules + email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com' jobs: # Vanilla normal builds - 'lttng-modules_{mversion}_{buildtype}-vanilla': mversion: - - stable-2.8 - - stable-2.9 + - stable-2.12 - master buildtype: build parambuildtype: build - kverfloor: v2.6.36 + kverfloor: v3.0 kverceil: '' kverfilter: stable-head - 'lttng-modules_{mversion}_{buildtype}-vanilla': - mversion: stable-2.7 + mversion: + - stable-2.10 + - stable-2.11 buildtype: build parambuildtype: build kverfloor: v2.6.36 - kverceil: v4.8-rc0 + kverceil: '' kverfilter: stable-head - 'lttng-modules_{mversion}_fullbuild-vanilla': mversion: - - stable-2.8 - - stable-2.9 + - stable-2.12 - master buildtype: build parambuildtype: build - kverfloor: v2.6.36 + kverfloor: v3.0 kverceil: '' kverfilter: none - 'lttng-modules_{mversion}_fullbuild-vanilla': - mversion: stable-2.7 + mversion: + - stable-2.10 + - stable-2.11 buildtype: build parambuildtype: build kverfloor: v2.6.36 - kverceil: v4.8-rc0 + kverceil: '' kverfilter: none # RT normal builds - 'lttng-modules_{mversion}_build-rt': mversion: master + kverceil: '' + kverfilter: stable-head # Ubuntu normal builds - 'lttng-modules_{mversion}_{buildtype}-{uversion}': mversion: - - stable-2.8 - - stable-2.9 + - stable-2.10 + - stable-2.11 + - stable-2.12 - master uversion: - - trusty - xenial + - bionic + - focal buildtype: build parambuildtype: build kverfloor: '' @@ -497,31 +641,26 @@ # Vanilla crossbuilds - 'lttng-modules_{mversion}_{buildtype}-vanilla': mversion: - - stable-2.8 - - stable-2.9 + - stable-2.10 + - stable-2.11 + - stable-2.12 - master buildtype: crossbuild parambuildtype: crossbuild - kverfloor: v3.16 + kverfloor: v3.18 kverceil: '' kverfilter: stable-head - - 'lttng-modules_{mversion}_{buildtype}-vanilla': - mversion: stable-2.7 - buildtype: crossbuild - parambuildtype: crossbuild - kverfloor: v3.16 - kverceil: v4.8-rc0 - kverfilter: stable-head # Ubuntu cross builds - 'lttng-modules_{mversion}_{buildtype}-{uversion}': mversion: - - stable-2.8 - - stable-2.9 + - stable-2.10 + - stable-2.11 + - stable-2.12 - master uversion: - - trusty - xenial + - bionic buildtype: crossbuild parambuildtype: crossbuild kverfloor: '' @@ -529,18 +668,28 @@ kverfilter: stable-head # Parametrized kernel and modules build jobs - - 'lttng-modules_VERSION_param-build': - arch: !!python/tuple [x86-32, x86-64] - - 'lttng-modules_VERSION_param-crossbuild': + - 'lttng-modules_PARAM_build': + arch: !!python/tuple [amd64] + - 'lttng-modules_PARAM_crossbuild': cross_arch: !!python/tuple [armhf, arm64, powerpc, ppc64el] # Misc jobs + - 'lttng-modules_ALL_trigger-vanilla' - 'lttng-modules_{mversion}_cppcheck': mversion: - - stable-2.8 - - stable-2.9 + - stable-2.10 + - stable-2.11 + - stable-2.12 - master - 'lttng-modules_{mversion}_sloccount': mversion: master - 'lttng-modules_{mversion}_coverity': mversion: master + +- project: + name: lttng-modules-gerrit + jobs: + - 'dev_gerrit_lttng-modules_build': + kverfloor: v5.5 + kverceil: v5.6 + kverfilter: stable-head