X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=jobs%2Flttng-baremetal-tests.yaml;h=60594b14e47656da2278d52378d24ebfdde3b663;hb=767b9687e93607e3b7240bf8ce8393b99ae1334b;hp=9f6a664d276d80deb435be74a3afc1b64144969e;hpb=57928d1311643884bafb05e308ff01e84b626d2a;p=lttng-ci.git diff --git a/jobs/lttng-baremetal-tests.yaml b/jobs/lttng-baremetal-tests.yaml index 9f6a664..60594b1 100644 --- a/jobs/lttng-baremetal-tests.yaml +++ b/jobs/lttng-baremetal-tests.yaml @@ -1,11 +1,50 @@ - 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 + numToKeep: 10 + properties: + - 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 @@ -32,26 +71,36 @@ 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 +- defaults: + name: vm_tests + description: | + Runs baremetal kernel tests over different combination of kernel and lttng configurations. + project-type: freestyle + node: 'master' properties: - throttle: - max-total: 3 + max-total: 2 option: 'category' categories: - - 'baremetal-tests' - publishers: - - email: - recipients: 'francis.deslauriers@efficios.com' + - 'kvm-tests' + triggers: + - pollscm: + cron: "H * * * 1-5" + logrotate: + numToKeep: 10 -## Templates -- job-template: - name: baremetal_tests_k{kversion}_l{lttngversion} - description: | - Runs baremetal kernel tests over different combination of kernel and lttng configurations. - defaults: lttng-baremetal-tests wrappers: - workspace-cleanup - timestamps @@ -59,11 +108,47 @@ - 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} + 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 @@ -73,16 +158,38 @@ 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: baremetal_tests description: | - Runs baremetal kernel benchmarks over different combination of kernel and lttng configurations. - defaults: lttng-baremetal-tests + Runs baremetal kernel tests over different combination of kernel and lttng configurations. + project-type: freestyle + node: 'master' + properties: + - throttle: + max-total: 2 + option: 'category' + categories: + - 'baremetal-tests' + triggers: + - pollscm: + cron: "H * * * 1-5" logrotate: - numToKeep: 5 + numToKeep: 10 + 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 @@ -108,14 +215,17 @@ skip-tag: true fastpoll: true basedir: src/linux - wrappers: + + publishers: + - email: + recipients: 'francis.deslauriers@efficios.com' + - ircbot: + strategy: new-failure-and-fixed + message-type: summary + channels: + - name: '#lttng' - workspace-cleanup - - timestamps - - ansicolor - - credentials-binding: - - text: - credential-id: jenkins_lava_key - variable: LAVA_FRDESO_TOKEN + builders: - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh - trigger-builds: @@ -124,7 +234,173 @@ block: true - inject: properties-file: properties.txt - - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-benchmarks.sh + - 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 + 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 + +- 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 + - 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 +- 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-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 @@ -134,7 +410,7 @@ concurrent: true logrotate: - numToKeep: 2 + numToKeep: 100 node: 'x86-64' wrappers: @@ -143,7 +419,7 @@ - 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 @@ -171,6 +447,10 @@ - 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.' @@ -189,21 +469,27 @@ - string: name: 'STORAGE_LTTNG_MODULES' description: 'Path to store the LTTng Modules' + - string: + 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 @@ -213,5 +499,30 @@ 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}' + - 'baremetal_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}' + - 'baremetal_benchmarks_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'