From 1618d8102adba0d65834ee01ea818a985eea1b8e Mon Sep 17 00:00:00 2001 From: Philip Hands Date: Sat, 12 Dec 2015 17:33:06 +0100 Subject: lvc: use yaml interpolation to dispense with .py --- job-cfg/lvc.yaml | 88 ++++++++++++++++++++++++++++++++++++++++++ job-cfg/lvc.yaml.py | 107 ---------------------------------------------------- 2 files changed, 88 insertions(+), 107 deletions(-) create mode 100644 job-cfg/lvc.yaml delete mode 100755 job-cfg/lvc.yaml.py diff --git a/job-cfg/lvc.yaml b/job-cfg/lvc.yaml new file mode 100644 index 00000000..9666f5ed --- /dev/null +++ b/job-cfg/lvc.yaml @@ -0,0 +1,88 @@ +- defaults: + name: lvc + project-type: freestyle + description: '{my_description}

Job configuration source is lvc.yaml.py.' + properties: + - sidebar: + url: https://jenkins.debian.net/userContent/about.html + text: About jenkins.debian.net + icon: /userContent/images/debian-swirl-24x24.png + - sidebar: + url: https://jenkins.debian.net/view/lvc + text: Jobs for libvirt and cucumber based tests + icon: /userContent/images/debian-jenkins-24x24.png + - sidebar: + url: http://www.profitbricks.co.uk + text: Sponsored by Profitbricks + icon: /userContent/images/profitbricks-24x24.png + - throttle: + max-total: 1 + max-per-node: 1 + enabled: true + option: category + categories: + - lvc + logrotate: + daysToKeep: 90 + numToKeep: 20 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + publishers: + - email: + recipients: 'qa-jenkins-scm@lists.alioth.debian.org' + - archive: + artifacts: '*.webm, {my_pngs}' + latest-only: false + - image-gallery: + - title: '{my_title}' + includes: '{my_pngs}' + image-width: 300 + wrappers: + - live-screenshot + builders: + - shell: 'rm $WORKSPACE/*.png -f >/dev/null; /srv/jenkins/bin/lvc/run_test_suite {my_params}' + triggers: + - timed: '{my_time}' + +- job-template: + defaults: lvc + name: '{name}_debian-live_{distro}_{flavour}_apt' + +- project: + name: lvc + my_title: '{dist_name} {flav_name}' + my_time: '23 45 31 12 *' + my_pngs: 'apt-*.png' + my_description: 'Work in progress...' + my_params: '--debug --capture lvc_debian-live_{distro}_{flavour}_apt.webm --temp-dir $WORKSPACE --iso /srv/live-build/results/{distro}_{flavour}_live_amd64.iso DebianLive/apt.feature' + jobs: + - '{name}_debian-live_{distro}_{flavour}_apt': + distro: + - 'debian-edu_jessie': {dist_name: 'Debian Edu Live 8'} + flavour: + - 'standalone': {flav_name: 'Standalone'} + - 'workstation': {flav_name: 'Workstation'} + my_iso: '/srv/live-build/results/{distro}_{flavour}_live_amd64.iso' + + - '{name}_debian-live_{distro}_{flavour}_apt': + distro: + - 'debian_jessie': {dist_name: 'Debian Live 8'} + flavour: + - 'gnome': {flav_name: 'GNOME Desktop'} + - 'xfce': {flav_name: 'Xfce Desktop'} + my_iso: '/srv/live-build/results/{distro}_{flavour}_live_amd64.iso' + + - '{name}_debian-live_{distro}_{flavour}_apt': + distro: + - 'debian_sid': {dist_name: 'Debian Live Sid'} + flavour: + - 'xfce': {flav_name: 'Xfce Desktop'} + my_iso: '/srv/live-build/results/{distro}_{flavour}_live_amd64.iso' + + - '{name}_debian-live_{distro}_{flavour}_apt': + distro: + - 'wheezy': {dist_name: 'Debian Live 7'} + flavour: + - 'gnome-desktop': {flav_name: 'GNOME desktop'} + - 'standard': {flav_name: 'standard'} + my_params: '--debug --capture lvc_debian-live_{distro}_{flavour}_apt.webm --temp-dir $WORKSPACE --iso /var/lib/jenkins/debian-live-7.7.0-amd64-{flavour}.iso DebianLive/apt.feature' diff --git a/job-cfg/lvc.yaml.py b/job-cfg/lvc.yaml.py deleted file mode 100755 index 31959171..00000000 --- a/job-cfg/lvc.yaml.py +++ /dev/null @@ -1,107 +0,0 @@ -#!/usr/bin/python - -images = """ - wheezy_standard - wheezy_gnome-desktop - debian-edu_jessie_standalone - debian-edu_jessie_workstation - debian_jessie_gnome - debian_jessie_xfce - debian_sid_xfce - """.split() - -features = """ - apt - """.split() - -files = { 'wheezy_standard': '/var/lib/jenkins/debian-live-7.7.0-amd64-standard.iso', - 'wheezy_gnome-desktop': '/var/lib/jenkins/debian-live-7.7.0-amd64-gnome-desktop.iso', - 'debian-edu_jessie_standalone': '/srv/live-build/results/debian-edu_jessie_standalone_live_amd64.iso', - 'debian-edu_jessie_workstation': '/srv/live-build/results/debian-edu_jessie_workstation_live_amd64.iso', - 'debian_jessie_gnome': '/srv/live-build/results/debian_jessie_gnome_live_amd64.iso', - 'debian_jessie_xfce': '/srv/live-build/results/debian_jessie_xfce_live_amd64.iso', - 'debian_sid_xfce': '/srv/live-build/results/debian_sid_xfce_live_amd64.iso' - } - -titles = { 'wheezy_standard': 'Debian Live 7 standard', - 'wheezy_gnome-desktop': 'Debian Live 7 GNOME desktop', - 'debian-edu_jessie_standalone': 'Debian Edu Live 8 Standalone', - 'debian-edu_jessie_workstation': 'Debian Edu Live 8 Workstation', - 'debian_jessie_gnome': 'Debian Live 8 GNOME Desktop', - 'debian_jessie_xfce': 'Debian Live 8 Xfce Desktop', - 'debian_sid_xfce': 'Debian Live Sid Xfce Desktop', - } - -print(""" -- defaults: - name: lvc - project-type: freestyle - description: '{my_description}

Job configuration source is lvc.yaml.py.' - properties: - - sidebar: - url: https://jenkins.debian.net/userContent/about.html - text: About jenkins.debian.net - icon: /userContent/images/debian-swirl-24x24.png - - sidebar: - url: https://jenkins.debian.net/view/lvc - text: Jobs for libvirt and cucumber based tests - icon: /userContent/images/debian-jenkins-24x24.png - - sidebar: - url: http://www.profitbricks.co.uk - text: Sponsored by Profitbricks - icon: /userContent/images/profitbricks-24x24.png - - throttle: - max-total: 1 - max-per-node: 1 - enabled: true - option: category - categories: - - lvc - logrotate: - daysToKeep: 90 - numToKeep: 20 - artifactDaysToKeep: -1 - artifactNumToKeep: -1 - publishers: - - email: - recipients: 'qa-jenkins-scm@lists.alioth.debian.org' - - archive: - artifacts: '*.webm, {my_pngs}' - latest-only: false - - image-gallery: - - title: '{my_title}' - includes: '{my_pngs}' - image-width: 300 - wrappers: - - live-screenshot - builders: - - shell: 'rm $WORKSPACE/*.png -f >/dev/null; /srv/jenkins/bin/lvc/run_test_suite {my_params}' - triggers: - - timed: '{my_time}' -""") - -for image in sorted(images): - for feature in sorted(features): - print("""- job-template: - defaults: lvc - name: '{name}_debian-live_%(image)s_%(feature)s' -""" % dict(image=image, - feature=feature)) - -print(""" -- project: - name: lvc - jobs:""") -for image in sorted(images): - for feature in sorted(features): - print(""" - '{name}_debian-live_%(image)s_%(feature)s': - my_title: '%(title)s' - my_time: '23 45 31 12 *' - my_params: '--debug --capture lvc_debian-live_%(image)s_%(feature)s.webm --temp-dir $WORKSPACE --iso %(iso)s DebianLive/%(feature)s.feature' - my_pngs: '%(feature)s-*.png' - my_description: 'Work in progress...' -""" % dict(image=image, - feature=feature, - iso=files[image], - title=titles[image])) - -- cgit v1.2.3-70-g09d2