jjb: lttng-modules: Add mjeanson dev jobs
[lttng-ci.git] / jobs / lttng-modules.yaml
index 0d99488ee6a0dbf2c41e2633bd6d8735d2fa7626..83f7981ea2f19b4208c60bcf3d7d6f8eea4d7019 100644 (file)
@@ -3,10 +3,6 @@
 - lttng-modules_build_parameters_defaults: &lttng-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'
           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'
           default: 'lttng-modules_PARAM_{parambuildtype}'
           description: 'The parametrized job to use for child builds.'
 
+- lttng-modules_build_parameters_gerrit: &lttng-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_PARAM_build'
+          description: 'The parametrized job to use for child builds.'
+
 - lttng-modules_build_parameters_ubuntu: &lttng-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'
           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'
 - lttng-modules_build_parameters_rt: &lttng-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'
           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'
 
     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
           fastpoll: true
           basedir: src/lttng-modules
     <<: *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'
+
+    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_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: '**'
+
+    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
           description: 'The lttng-modules branch to build.'
       - string:
           name: 'mgitrepo'
-          default: 'git://github.com/lttng/lttng-modules.git'
+          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:
+      - shell:
+          !include-raw-escape: scripts/lttng-modules/param-build.sh
+
+    publishers:
+      - workspace-cleanup
+
+- job-template:
+    name: dev_mjeanson_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: arch
+          values: '{obj:arch}'
+
+    properties:
+      - build-discarder:
+          days-to-keep: 2
+
+    parameters:
+      - string:
+          name: 'mversion'
+          default: 'master'
+          description: 'The lttng-modules branch to build.'
+      - string:
+          name: 'mgitrepo'
+          default: 'https://github.com/{github_user}/lttng-modules.git'
           description: 'The lttng-modules git repository url.'
       - string:
           name: 'ktag'
           description: 'The lttng-modules branch to build.'
       - string:
           name: 'mgitrepo'
-          default: 'git://github.com/lttng/lttng-modules.git'
+          default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
           description: 'The lttng-modules git repository url.'
       - string:
           name: 'ktag'
 
     builders:
       - shell: |
-         git clone --depth=1 -b v4.20 --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:
 # Vanilla normal builds
       - 'lttng-modules_{mversion}_{buildtype}-vanilla':
           mversion:
+            - stable-2.12
             - master
           buildtype: build
           parambuildtype: build
           kverfilter: stable-head
       - 'lttng-modules_{mversion}_{buildtype}-vanilla':
           mversion:
-            - stable-2.10
             - stable-2.11
           buildtype: build
           parambuildtype: build
           kverfloor: v2.6.36
           kverceil: ''
           kverfilter: stable-head
+      - 'lttng-modules_{mversion}_{buildtype}-vanilla':
+          mversion:
+            - stable-2.10
+          buildtype: build
+          parambuildtype: build
+          kverfloor: v2.6.36
+          kverceil: v5.7-rc1
+          kverfilter: stable-head
       - 'lttng-modules_{mversion}_fullbuild-vanilla':
           mversion:
+            - stable-2.12
             - master
           buildtype: build
           parambuildtype: build
           kverfilter: none
       - 'lttng-modules_{mversion}_fullbuild-vanilla':
           mversion:
-            - stable-2.10
             - stable-2.11
           buildtype: build
           parambuildtype: build
           kverfloor: v2.6.36
           kverceil: ''
           kverfilter: none
+      - 'lttng-modules_{mversion}_fullbuild-vanilla':
+          mversion:
+            - stable-2.10
+          buildtype: build
+          parambuildtype: build
+          kverfloor: v2.6.36
+          kverceil: v5.7-rc1
+          kverfilter: none
 
 # RT normal builds
       - 'lttng-modules_{mversion}_build-rt':
           mversion:
             - stable-2.10
             - stable-2.11
+            - stable-2.12
             - master
           uversion:
             - xenial
 # Vanilla crossbuilds
       - 'lttng-modules_{mversion}_{buildtype}-vanilla':
           mversion:
-            - stable-2.10
             - stable-2.11
+            - stable-2.12
             - master
           buildtype: crossbuild
           parambuildtype: crossbuild
           mversion:
             - stable-2.10
             - stable-2.11
+            - stable-2.12
             - master
           uversion:
             - xenial
       - 'lttng-modules_ALL_trigger-vanilla'
       - 'lttng-modules_{mversion}_cppcheck':
           mversion:
-            - 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
+
+- project:
+    name: lttng-modules-dev-mjeanson
+    github_user: mjeanson
+    github_name: lttng-modules
+    email_to: ''
+    jobs:
+      - 'dev_mjeanson_lttng-modules_PARAM_build':
+          arch: !!python/tuple [amd64]
+      - 'dev_mjeanson_lttng-modules_{mversion}_{buildtype}-vanilla':
+          mversion:
+            - master
+          buildtype: build
+          parambuildtype: build
+          kverfloor: v3.0
+          kverceil: ''
+          kverfilter: stable-head
This page took 0.028527 seconds and 4 git commands to generate.