- defaults:
- name: lttng-baremetal-tests
+ name: baremetal_benchmarks
+ description: |
+ Runs baremetal kernel tests over different combination of kernel and lttng configurations.
+
+ triggers:
+ - pollscm:
+ cron: "H * * * 1-5"
- logrotate:
- numToKeep: 5
+ properties:
+ - build-discarder:
+ num-to-keep: 10
+ - throttle:
+ max-total: 2
+ option: 'category'
+ categories:
+ - 'baremetal-tests'
project-type: freestyle
- node: 'master'
+ node: 'x86-64'
+ wrappers:
+ - workspace-cleanup
+ - timestamps
+ - ansicolor
+ - credentials-binding:
+ - text:
+ credential-id: jenkins_lava_key
+ variable: LAVA_JENKINS_TOKEN
+ - file:
+ credential-id: system_tests_storage_key
+ variable: identity_file
+ - inject:
+ properties-content: |
+ TOOLS_BRANCH={lttngversion}
+ UST_BRANCH={lttngversion}
+ BUILD_DEVICE=baremetal
+
+ publishers:
+ - archive:
+ artifacts: '*.png,*.csv'
+ stable: true
+ do-not-fingerprint: true
+ - email:
+ recipients: 'francis.deslauriers@efficios.com'
+ - image-gallery:
+ - gallery-type: archived-images-gallery
+ title: Results
+ includes: '*.png'
+ - workspace-cleanup
+
scm:
- git:
url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
fastpoll: true
basedir: src/linux
- triggers:
- - pollscm:
- cron: "@hourly"
+ builders:
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/inject-ssh-commands.sh
+ - trigger-builds:
+ - project: "build_kernel_PARAM"
+ property-file: 'properties.txt'
+ block: true
+ - inject:
+ properties-file: properties.txt
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-baremetal-benchmarks.sh
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/summarize-results.sh
- publishers:
- - email:
- recipients: 'francis.deslauriers@efficios.com'
-## Templates
-- job-template:
- name: baremetal_tests_k{kversion}_l{lttngversion}
+- defaults:
+ name: vm_tests
description: |
Runs baremetal kernel tests over different combination of kernel and lttng configurations.
- defaults: lttng-baremetal-tests
+ project-type: freestyle
+ node: 'master'
+
properties:
+ - build-discarder:
+ num-to-keep: 10
- throttle:
max-total: 2
option: 'category'
categories:
- 'kvm-tests'
+
+ triggers:
+ - pollscm:
+ cron: "H * * * 1-5"
+
wrappers:
- workspace-cleanup
- timestamps
- credentials-binding:
- text:
credential-id: jenkins_lava_key
- variable: LAVA_FRDESO_TOKEN
+ variable: LAVA_JENKINS_TOKEN
- inject:
properties-content: |
+ BUILD_DEVICE=kvm
TOOLS_BRANCH={lttngversion}
UST_BRANCH={lttngversion}
- BUILD_DEVICE=kvm
+
+ scm:
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
+ branches:
+ - "{lttngversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-tools
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
+ branches:
+ - "{lttngversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-modules
+ - git:
+ url: git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git
+ branches:
+ - "{kversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/linux
+
+ publishers:
+ - email:
+ recipients: 'francis.deslauriers@efficios.com'
+ - ircbot:
+ strategy: new-failure-and-fixed
+ message-type: summary
+ channels:
+ - name: '#lttng'
+ - workspace-cleanup
builders:
- shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
block: true
- inject:
properties-file: properties.txt
- - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-tests.sh
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-kvm-tests.sh
-- job-template:
- name: baremetal_benchmarks_k{kversion}_l{lttngversion}
+
+- defaults:
+ name: vm_tests_kmainline
+ defaults: vm_tests
+
+ triggers:
+ - pollscm:
+ cron: "0 1 * * 1-5"
+
+ wrappers:
+ - workspace-cleanup
+ - timestamps
+ - ansicolor
+ - credentials-binding:
+ - text:
+ credential-id: jenkins_lava_key
+ variable: LAVA_JENKINS_TOKEN
+ - inject:
+ properties-content: |
+ TOOLS_BRANCH={toolsversion}
+ MODULES_BRANCH={modulesversion}
+ UST_BRANCH={ustversion}
+ BUILD_DEVICE=baremetal
+ scm:
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
+ branches:
+ - "{toolsversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-tools
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
+ branches:
+ - "{modulesversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-modules
+ - git:
+ url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
+ refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
+ branches:
+ - "master"
+ fastpoll: true
+ basedir: src/linux
+
+
+- defaults:
+ name: baremetal_tests
description: |
- Runs baremetal kernel benchmarks over different combination of kernel and lttng configurations.
- defaults: lttng-baremetal-tests
- logrotate:
- numToKeep: 5
+ Runs baremetal kernel tests over different combination of kernel and lttng configurations.
+ project-type: freestyle
+ node: 'master'
properties:
+ - build-discarder:
+ num-to-keep: 10
- throttle:
max-total: 2
option: 'category'
categories:
- 'baremetal-tests'
+
+ triggers:
+ - pollscm:
+ cron: "H * * * 1-5"
+
+ wrappers:
+ - workspace-cleanup
+ - timestamps
+ - ansicolor
+ - credentials-binding:
+ - text:
+ credential-id: jenkins_lava_key
+ variable: LAVA_JENKINS_TOKEN
+ - inject:
+ properties-content: |
+ UST_BRANCH={lttngversion}
+ BUILD_DEVICE=baremetal
+
scm:
- git:
url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
skip-tag: true
fastpoll: true
basedir: src/linux
+
+ publishers:
+ - email:
+ recipients: 'francis.deslauriers@efficios.com'
+ - ircbot:
+ strategy: new-failure-and-fixed
+ message-type: summary
+ channels:
+ - name: '#lttng'
+ - workspace-cleanup
+
+ builders:
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
+ - trigger-builds:
+ - project: "build_kernel_PARAM"
+ property-file: 'properties.txt'
+ block: true
+ - inject:
+ properties-file: properties.txt
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-baremetal-tests.sh
+
+
+- job-template:
+ name: baremetal_benchmarks_k{kversion}_l{lttngversion}
+ defaults: baremetal_benchmarks
+- job-template:
+ name: vm_tests_k{kversion}_l{lttngversion}
+ defaults: vm_tests
+- job-template:
+ name: baremetal_tests_k{kversion}_l{lttngversion}
+ defaults: baremetal_tests
+
+
+# Canary jobs are made to confirm that the whole Lava pipeline is working.
+# They are scheduled once a day always on the same (LTTng, Kernel) code. If any
+# of those jobs fails, it means that there is an issue with the configuration
+- job-template:
+ name: baremetal_tests_k{kversion}_l{lttngversion}_canary
+ defaults: baremetal_tests
+ triggers:
+ - timed: "0 1 * * 1-5"
+- job-template:
+ name: vm_tests_k{kversion}_l{lttngversion}_canary
+ defaults: vm_tests
+ triggers:
+ - timed: "0 1 * * 1-5"
+- job-template:
+ name: baremetal_benchmarks_k{kversion}_l{lttngversion}_canary
+ defaults: baremetal_benchmarks
+ triggers:
+ - timed: "0 1 * * 1-5"
+- job-template:
+ name: vm_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
+ defaults: vm_tests_kmainline
+
+- job-template:
+ name: vm_tests_fuzzing_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
+ defaults: vm_tests_kmainline
+
+ builders:
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
+ - trigger-builds:
+ - project: "build_kernel_PARAM"
+ property-file: 'properties.txt'
+ block: true
+ - inject:
+ properties-file: properties.txt
+ - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-kvm-fuzzing-tests.sh
+
+- job-template:
+ name: baremetal_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
+ defaults: baremetal_tests
+
+ triggers:
+ - pollscm:
+ cron: "0 1 * * 1-5"
+
wrappers:
- workspace-cleanup
- timestamps
- credentials-binding:
- text:
credential-id: jenkins_lava_key
- variable: LAVA_FRDESO_TOKEN
+ variable: LAVA_JENKINS_TOKEN
- inject:
properties-content: |
+ TOOLS_BRANCH={toolsversion}
+ MODULES_BRANCH={modulesversion}
+ UST_BRANCH={ustversion}
BUILD_DEVICE=baremetal
- builders:
- - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
- - trigger-builds:
- - project: "build_kernel_PARAM"
- property-file: 'properties.txt'
- block: true
+
+ scm:
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
+ branches:
+ - "{toolsversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-tools
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
+ branches:
+ - "{modulesversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-modules
+ - git:
+ url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
+ refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
+ branches:
+ - "master"
+ fastpoll: true
+ basedir: src/linux
+
+
+- job-template:
+ name: baremetal_benchmarks_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
+ defaults: baremetal_benchmarks
+
+ triggers:
+ - pollscm:
+ cron: "0 1 * * 1-5"
+
+ wrappers:
+ - workspace-cleanup
+ - timestamps
+ - ansicolor
+ - credentials-binding:
+ - text:
+ credential-id: jenkins_lava_key
+ variable: LAVA_JENKINS_TOKEN
+ - file:
+ credential-id: system_tests_storage_key
+ variable: identity_file
- inject:
- properties-file: properties.txt
- - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-benchmarks.sh
+ properties-content: |
+ TOOLS_BRANCH={toolsversion}
+ MODULES_BRANCH={modulesversion}
+ UST_BRANCH={ustversion}
+ BUILD_DEVICE=baremetal
+
+ scm:
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
+ branches:
+ - "{toolsversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-tools
+ - git:
+ url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
+ branches:
+ - "{modulesversion}"
+ shallow-clone: true
+ skip-tag: true
+ fastpoll: true
+ basedir: src/lttng-modules
+ - git:
+ url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
+ refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
+ branches:
+ - "master"
+ fastpoll: true
+ basedir: src/linux
+
- job:
name: build_kernel_PARAM
description: |
Builds a Linux Kernel and LTTng Modules if necessary
- defaults: global
concurrent: true
-
- logrotate:
- numToKeep: 2
node: 'x86-64'
+ properties:
+ - build-discarder:
+ num-to-keep: 100
+
wrappers:
- workspace-cleanup
- timestamps
- ansicolor
- credentials-binding:
- file:
- credential-id: lava_jenkins_storage_frdeso
+ credential-id: system_tests_storage_key
variable: identity_file
+
builders:
- shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-slave.sh
- inject:
- string:
name: 'LTTNG_MODULES_COMMIT_ID'
description: 'The lttng-modules commmit to build.'
+ - string:
+ name: 'LTTNG_MODULES_REPO'
+ description: 'The LTTng Modules git repo to fetch from'
+ default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
- string:
name: 'KERNEL_COMMIT_ID'
description: 'The kernel commit to build.'
name: 'BUILD_DEVICE'
description: 'The target device. (kvm or baremetal)'
+ publishers:
+ - workspace-cleanup
+
+
## Project
- project:
name: lttng-kernel-tests
kversion:
- linux-4.4.y
- - linux-4.8.y
+ - linux-4.9.y
- v4.8.1
lttngversion:
- master
- - stable-2.8
- stable-2.9
+ - stable-2.10
jobs:
- - 'baremetal_tests_k{kversion}_l{lttngversion}'
+ - 'vm_tests_k{kversion}_l{lttngversion}'
- 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
+ - 'baremetal_tests_k{kversion}_l{lttngversion}'
- project:
name: lttng-kernel-tests-oldkernel
lttngversion:
- stable-2.7
jobs:
+ - 'vm_tests_k{kversion}_l{lttngversion}':
- 'baremetal_tests_k{kversion}_l{lttngversion}':
- 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
+
+- project:
+ name: lttng-kernel-tests-canary
+ kversion:
+ - v4.4.9
+ lttngversion:
+ - v2.8.1
+ jobs:
+ - 'vm_tests_k{kversion}_l{lttngversion}_canary'
+ - 'baremetal_tests_k{kversion}_l{lttngversion}_canary'
+ - 'baremetal_benchmarks_k{kversion}_l{lttngversion}_canary'
+
+- project:
+ name: lttng-kernel-tests-mainline
+ toolsversion:
+ - v2.9.3
+ ustversion:
+ - v2.9.0
+ modulesversion:
+ - stable-2.9
+ jobs:
+ - 'vm_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'
+ - 'vm_tests_fuzzing_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'
+ - 'baremetal_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'
+ - 'baremetal_benchmarks_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'