summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Hands <phil@hands.com>2015-06-01 22:59:51 +0100
committerHolger Levsen <holger@layer-acht.org>2015-06-02 16:14:48 +0200
commite6e5747c39331e95c530d6b779b63e15f068c24c (patch)
treee3f344d40a44f1e7b174e574bed18204bee20957
parentc3406e04c34737e081832b8b27ef54b70d749738 (diff)
downloadjenkins.debian.net-e6e5747c39331e95c530d6b779b63e15f068c24c.tar.xz
Let's try using yaml.dump for this
-rw-r--r--job-cfg/d-i.yaml1160
-rwxr-xr-xjob-cfg/d-i.yaml.py351
2 files changed, 351 insertions, 1160 deletions
diff --git a/job-cfg/d-i.yaml b/job-cfg/d-i.yaml
deleted file mode 100644
index 50b570fd..00000000
--- a/job-cfg/d-i.yaml
+++ /dev/null
@@ -1,1160 +0,0 @@
-- defaults:
- name: d-i
- project-type: freestyle
- logrotate:
- daysToKeep: 90
- numToKeep: 30
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
- 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/d-i_misc/
- text: Misc debian-installer jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
-
-- defaults:
- name: d-i-manual-html
- project-type: freestyle
- logrotate:
- daysToKeep: 90
- numToKeep: 30
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
- 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/d-i_manual/
- text: debian-installer manual jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '120'
- description: 'Builds the {languagename} html version of the installation-guide for all architectures. Triggered by SVN commits to <code>svn://anonscm.debian.org/svn/d-i/trunk/manual/{lang}/<code>. After successful build <a href="https://jenkins.debian.net/job/d-i_manual_{lang}_html">d-i_manual_{lang}_pdf</a> is triggered. {do_not_edit}'
- scm:
- - svn:
- url: svn://anonscm.debian.org/svn/d-i/trunk
- basedir: .
- workspaceupdater: update
- includedRegions: '/trunk/manual/{lang}/.*'
- excludedRegions: ''
- excludedUsers: ''
- excludedRevprop: ''
- excludedCommitMessages: ''
- viewvc-url: http://anonscm.debian.org/viewvc/d-i/trunk
- builders:
- - shell: '/srv/jenkins/bin/d-i_manual.sh {lang} html'
- triggers:
- - pollscm: '*/15 * * * *'
- publishers:
- - trigger:
- project: 'd-i_manual_{lang}_pdf'
- threshold: 'UNSTABLE'
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian-installer.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
- - archive:
- artifacts: 'html/**/*.*'
- latest_only: true
-
-- defaults:
- name: d-i-manual-html-po2xml
- project-type: freestyle
- logrotate:
- daysToKeep: 90
- numToKeep: 30
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
- 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/d-i_manual/
- text: debian-installer manual jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '120'
- description: 'Builds the {languagename} html version of the installation-guide for all architectures. Triggered by SVN commits to <code>svn://anonscm.debian.org/svn/d-i/trunk/manual/po/{lang}/<code>. After successful build <a href="https://jenkins.debian.net/job/d-i_manual_{lang}_html">d-i_manual_{lang}_pdf</a> is triggered. {do_not_edit}'
- scm:
- - svn:
- url: svn://anonscm.debian.org/svn/d-i/trunk
- basedir: .
- workspaceupdater: update
- includedRegions: '/trunk/manual/po/{lang}/.*'
- excludedRegions: ''
- excludedUsers: ''
- excludedRevprop: ''
- excludedCommitMessages: ''
- viewvc-url: http://anonscm.debian.org/viewvc/d-i/trunk
- builders:
- - shell: '/srv/jenkins/bin/d-i_manual.sh {lang} html po2xml'
- triggers:
- - pollscm: '*/30 * * * *'
- publishers:
- - trigger:
- project: 'd-i_manual_{lang}_pdf'
- threshold: 'UNSTABLE'
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian-installer.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
- - archive:
- artifacts: 'html/**/*.*'
- latest_only: true
-
-- defaults:
- name: d-i-manual-pdf
- project-type: freestyle
- logrotate:
- daysToKeep: 90
- numToKeep: 30
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
- 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/d-i_manual/
- text: debian-installer manual jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '120'
- description: 'Builds the {languagename} pdf version of the installation-guide for all architectures. Triggered by successful build of <a href="https://jenkins.debian.net/job/d-i_manual_{lang}_html">d-i_manual_{lang}_html</a>. {do_not_edit}'
- scm:
- - svn:
- url: svn://anonscm.debian.org/svn/d-i/trunk
- basedir: .
- workspaceupdater: update
- includedRegions: '/trunk/manual/{lang}/.*'
- excludedRegions: ''
- excludedUsers: ''
- excludedRevprop: ''
- excludedCommitMessages: ''
- viewvc-url: http://anonscm.debian.org/viewvc/d-i/trunk
- builders:
- - shell: '/srv/jenkins/bin/d-i_manual.sh {lang} pdf'
- publishers:
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian-installer.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
- - archive:
- artifacts: 'pdf/**/*.*'
- latest_only: true
-
-- defaults:
- name: d-i-manual-pdf-po2xml
- project-type: freestyle
- logrotate:
- daysToKeep: 90
- numToKeep: 30
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
- 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/d-i_manual/
- text: debian-installer manual jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '120'
- description: 'Builds the {languagename} pdf version of the installation-guide for all architectures. Triggered by successful build of <a href="https://jenkins.debian.net/job/d-i_manual_{lang}_html">d-i_manual_{lang}_html</a>. {do_not_edit}'
- scm:
- - svn:
- url: svn://anonscm.debian.org/svn/d-i/trunk
- basedir: .
- workspaceupdater: update
- includedRegions: '/trunk/manual/po/{lang}/.*'
- excludedRegions: ''
- excludedUsers: ''
- excludedRevprop: ''
- excludedCommitMessages: ''
- viewvc-url: http://anonscm.debian.org/viewvc/d-i/trunk
- builders:
- - shell: '/srv/jenkins/bin/d-i_manual.sh {lang} pdf po2xml'
- publishers:
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian-installer.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
- - archive:
- artifacts: 'pdf/**/*.*'
- latest_only: true
-
-- defaults:
- name: d-i-build
- project-type: freestyle
- logrotate:
- daysToKeep: 90
- numToKeep: 30
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
- 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/d-i_packages/
- text: debian-installer packages jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '99'
- description: 'Builds debian packages in sid from git master branch, triggered by pushes to <pre>{gitrepo}</pre> {do_not_edit}'
- scm:
- - git:
- url: '{gitrepo}'
- branches:
- - master
- - 'pu/*'
- builders:
- - shell: '/srv/jenkins/bin/d-i_build.sh'
- triggers:
- - pollscm: '*/6 * * * *'
- publishers:
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian-installer.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
-
-- job-template:
- defaults: d-i
- name: '{name}_manual'
- description: 'Builds the installation-guide package. Triggered by SVN commits to <code>svn://anonscm.debian.org/svn/d-i/</code> matching these patterns: <pre>{include}</pre> {do_not_edit}'
- 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/d-i_manual/
- text: debian-installer manual jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '125'
- scm:
- - svn:
- url: svn://anonscm.debian.org/svn/d-i/trunk
- basedir: .
- workspaceupdater: update
- includedRegions: '{include}'
- excludedRegions: ''
- excludedUsers: ''
- excludedRevprop: ''
- excludedCommitMessages: ''
- viewvc-url: http://anonscm.debian.org/viewvc/d-i/trunk
- builders:
- - shell: '/srv/jenkins/bin/d-i_manual.sh'
- triggers:
- - pollscm: '*/15 * * * *'
- publishers:
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
-## doesnt work, the artifacts reside outside the workspace
-# - archive:
-# artifacts: '*_*.dsc *_*.tar.* *_*_*.deb *_*_*.build *_*_*.changes'
-# latest_only: true
-
-- job-template:
- defaults: d-i
- name: '{name}_check_jenkins_jobs'
- description: 'Checks daily for missing jenkins jobs. {do_not_edit}'
- builders:
- - shell: '/srv/jenkins/bin/d-i_check_jobs.sh'
- triggers:
- - timed: '23 0 * * *'
- publishers:
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'qa-jenkins-scm@lists.alioth.debian.org'
-
-- job-template:
- defaults: d-i
- name: '{name}_maintenance'
- description: 'Cleanup and monitor so that there is a predictable environment.{do_not_edit}'
- 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/d-i_manual/
- text: debian-installer manual jobs
- icon: /userContent/images/debian-jenkins-24x24.png
- - sidebar:
- url: http://www.profitbricks.co.uk
- text: Sponsored by Profitbricks
- icon: /userContent/images/profitbricks-24x24.png
- - priority:
- job-prio: '150'
- triggers:
- - timed: '30 5 * * *'
- builders:
- - shell: '/srv/jenkins/bin/maintenance.sh {name}'
- publishers:
- - logparser:
- parse-rules: '/srv/jenkins/logparse/debian.rules'
- unstable-on-warning: 'true'
- fail-on-error: 'true'
- - email:
- recipients: 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'
-
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_ca_html'
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_cs_html'
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_de_html'
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_en_html'
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_fr_html'
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_it_html'
-- job-template:
- defaults: d-i-manual-html
- name: '{name}_manual_pt_BR_html'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_ca_pdf'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_cs_pdf'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_de_pdf'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_en_pdf'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_fr_pdf'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_it_pdf'
-- job-template:
- defaults: d-i-manual-pdf
- name: '{name}_manual_pt_BR_pdf'
-
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_da_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_da_html'
-#- job-template:
-# defaults: d-i-manual-pdf-po2xml
-# name: '{name}_manual_el_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_el_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_es_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_es_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_fi_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_fi_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_hu_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_hu_html'
-#- job-template:
-# defaults: d-i-manual-pdf-po2xml
-# name: '{name}_manual_ja_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_ja_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_ko_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_ko_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_nl_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_nl_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_nn_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_nn_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_pt_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_pt_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_ro_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_ro_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_ru_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_ru_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_sv_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_sv_html'
-- job-template:
- defaults: d-i-manual-pdf-po2xml
- name: '{name}_manual_tl_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_tl_html'
-#- job-template:
-# defaults: d-i-manual-pdf-po2xml
-# name: '{name}_manual_vi_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_vi_html'
-#- job-template:
-# defaults: d-i-manual-pdf-po2xml
-# name: '{name}_manual_zh_CN_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_zh_CN_html'
-#- job-template:
-# defaults: d-i-manual-pdf-po2xml
-# name: '{name}_manual_zh_TW_pdf'
-- job-template:
- defaults: d-i-manual-html-po2xml
- name: '{name}_manual_zh_TW_html'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_anna'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_apt-setup'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_arcboot-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_base-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_bterm-unifont'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_babelbox'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_busybox'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_cdebconf-entropy'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_cdebconf-terminal'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_cdebconf'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_cdrom-checker'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_cdrom-detect'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_cdrom-retriever'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_choose-mirror'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_clock-setup'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_console-setup'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_debian-installer-launcher'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_debian-installer-netboot-images'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_debian-installer-utils'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_debian-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_debootstrap'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_desktop-chooser'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_devicetype-detect'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_dh-di'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_efi-reader'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_elilo-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_finish-install'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_flash-kernel'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_grub-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_hw-detect'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_installation-locale'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_installation-report'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_iso-scan'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_kbd-chooser'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_kernel-wedge'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_kickseed'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_lenny-support'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_libdebian-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_lilo-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_live-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_localechooser'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_lowmem'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_lvmcfg'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_main-menu'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_mdcfg'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_media-retriever'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_mklibs'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_mountmedia'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_net-retriever'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_netboot-assistant'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_netcfg'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_network-console'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_nobootloader'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_oldsys-preseed'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_os-prober'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partconf'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partitioner'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-auto-crypto'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-auto-lvm'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-auto-raid'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-auto'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-base'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-basicfilesystems'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-basicmethods'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-btrfs'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-crypto'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-efi'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-ext3'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-iscsi'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-jfs'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-lvm'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-md'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-multipath'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-nbd'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-newworld'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-partitioning'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-prep'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-target'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-ufs'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-xfs'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_partman-zfs'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_pkgsel'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_prep-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_preseed'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_quik-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_rescue'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_rootskel-gtk'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_rootskel'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_s390-dasd'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_s390-netdevice'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_s390-sysconfig-writer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_sibyl-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_silo-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_tzsetup'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_udpkg'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_usb-discover'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_user-setup'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_win32-loader'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_yaboot-installer'
-- job-template:
- defaults: d-i-build
- name: '{name}_build_zipl-installer'
-
-# http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes to the rescue!
-
-- project:
- name: d-i
- do_not_edit: '<br><br>Job configuration source is <a href="http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/job-cfg/d-i.yaml">d-i.yaml</a>.'
- jobs:
- - '{name}_maintenance'
- - '{name}_check_jenkins_jobs'
- - '{name}_manual':
- include: '/trunk/manual/debian/.*
-
-/trunk/manual/po/.*
-
-/trunk/manual/doc/.*
-
-/trunk/manual/scripts/.*'
- - '{name}_manual_ca_html':
- lang: 'ca'
- languagename: 'Catalan'
- - '{name}_manual_cs_html':
- lang: 'cs'
- languagename: 'Czech'
- - '{name}_manual_de_html':
- lang: 'de'
- languagename: 'German'
- - '{name}_manual_en_html':
- lang: 'en'
- languagename: 'English'
- - '{name}_manual_fr_html':
- lang: 'fr'
- languagename: 'French'
- - '{name}_manual_it_html':
- lang: 'it'
- languagename: 'Italian'
- - '{name}_manual_pt_BR_html':
- lang: 'pt_BR'
- languagename: 'Brazilian Portuguese'
- - '{name}_manual_da_pdf':
- lang: 'da'
- languagename: 'Danish'
- - '{name}_manual_da_html':
- lang: 'da'
- languagename: 'Danish'
-# - '{name}_manual_el_pdf':
-# lang: 'el'
-# languagename: 'Greek'
- - '{name}_manual_el_html':
- lang: 'el'
- languagename: 'Greek'
- - '{name}_manual_es_pdf':
- lang: 'es'
- languagename: 'Spanish'
- - '{name}_manual_es_html':
- lang: 'es'
- languagename: 'Spanish'
- - '{name}_manual_fi_pdf':
- lang: 'fi'
- languagename: 'Finnish'
- - '{name}_manual_fi_html':
- lang: 'fi'
- languagename: 'Finnish'
- - '{name}_manual_hu_pdf':
- lang: 'hu'
- languagename: 'Hungarian'
- - '{name}_manual_hu_html':
- lang: 'hu'
- languagename: 'Hungarian'
-# - '{name}_manual_ja_pdf':
-# lang: 'ja'
-# languagename: 'Japanese'
- - '{name}_manual_ja_html':
- lang: 'ja'
- languagename: 'Japanese'
- - '{name}_manual_ko_pdf':
- lang: 'ko'
- languagename: 'Korean'
- - '{name}_manual_ko_html':
- lang: 'ko'
- languagename: 'Korean'
- - '{name}_manual_nl_pdf':
- lang: 'nl'
- languagename: 'Dutch'
- - '{name}_manual_nl_html':
- lang: 'nl'
- languagename: 'Dutch'
- - '{name}_manual_nn_pdf':
- lang: 'nn'
- languagename: 'Norwegian Nynorsk'
- - '{name}_manual_nn_html':
- lang: 'nn'
- languagename: 'Norwegian Nynorsk'
- - '{name}_manual_pt_pdf':
- lang: 'pt'
- languagename: 'Portuguese'
- - '{name}_manual_pt_html':
- lang: 'pt'
- languagename: 'Portuguese'
- - '{name}_manual_ro_pdf':
- lang: 'ro'
- languagename: 'Romanian'
- - '{name}_manual_ro_html':
- lang: 'ro'
- languagename: 'Romanian'
- - '{name}_manual_ru_pdf':
- lang: 'ru'
- languagename: 'Russian'
- - '{name}_manual_ru_html':
- lang: 'ru'
- languagename: 'Russian'
- - '{name}_manual_sv_pdf':
- lang: 'sv'
- languagename: 'Swedish'
- - '{name}_manual_sv_html':
- lang: 'sv'
- languagename: 'Swedish'
- - '{name}_manual_tl_pdf':
- lang: 'tl'
- languagename: 'Tagalog'
- - '{name}_manual_tl_html':
- lang: 'tl'
- languagename: 'Tagalog'
-# - '{name}_manual_vi_pdf':
-# lang: 'vi'
-# languagename: 'Vietnamese'
- - '{name}_manual_vi_html':
- lang: 'vi'
- languagename: 'Vietnamese'
-# - '{name}_manual_zh_CN_pdf':
-# lang: 'zh_CN'
-# languagename: 'Chinese (zh_CN)'
- - '{name}_manual_zh_CN_html':
- lang: 'zh_CN'
- languagename: 'Chinese (zh_CN)'
-# - '{name}_manual_zh_TW_pdf':
-# lang: 'zh_TW'
-# languagename: 'Chinese (zh_TW)'
- - '{name}_manual_zh_TW_html':
- lang: 'zh_TW'
- languagename: 'Chinese (zh_TW)'
- - '{name}_manual_ca_pdf':
- lang: 'ca'
- languagename: 'Catalan'
- - '{name}_manual_cs_pdf':
- lang: 'cs'
- languagename: 'Czech'
- - '{name}_manual_de_pdf':
- lang: 'de'
- languagename: 'German'
- - '{name}_manual_en_pdf':
- lang: 'en'
- languagename: 'English'
- - '{name}_manual_fr_pdf':
- lang: 'fr'
- languagename: 'French'
- - '{name}_manual_it_pdf':
- lang: 'it'
- languagename: 'Italian'
- - '{name}_manual_pt_BR_pdf':
- lang: 'pt_BR'
- languagename: 'Brazilian Portuguese'
- - '{name}_build_anna':
- gitrepo: 'git://git.debian.org/git/d-i/anna'
- - '{name}_build_apt-setup':
- gitrepo: 'git://git.debian.org/git/d-i/apt-setup'
- - '{name}_build_arcboot-installer':
- gitrepo: 'git://git.debian.org/git/d-i/arcboot-installer'
- - '{name}_build_base-installer':
- gitrepo: 'git://git.debian.org/git/d-i/base-installer'
- - '{name}_build_bterm-unifont':
- gitrepo: 'git://git.debian.org/git/d-i/bterm-unifont'
- - '{name}_build_babelbox':
- gitrepo: 'git://git.debian.org/git/d-i/babelbox'
- - '{name}_build_busybox':
- gitrepo: 'git://git.debian.org/git/d-i/busybox'
- - '{name}_build_cdebconf-entropy':
- gitrepo: 'git://git.debian.org/git/d-i/cdebconf-entropy'
- - '{name}_build_cdebconf-terminal':
- gitrepo: 'git://git.debian.org/git/d-i/cdebconf-terminal'
- - '{name}_build_cdebconf':
- gitrepo: 'git://git.debian.org/git/d-i/cdebconf'
- - '{name}_build_cdrom-checker':
- gitrepo: 'git://git.debian.org/git/d-i/cdrom-checker'
- - '{name}_build_cdrom-detect':
- gitrepo: 'git://git.debian.org/git/d-i/cdrom-detect'
- - '{name}_build_cdrom-retriever':
- gitrepo: 'git://git.debian.org/git/d-i/cdrom-retriever'
- - '{name}_build_choose-mirror':
- gitrepo: 'git://git.debian.org/git/d-i/choose-mirror'
- - '{name}_build_clock-setup':
- gitrepo: 'git://git.debian.org/git/d-i/clock-setup'
- - '{name}_build_console-setup':
- gitrepo: 'git://git.debian.org/git/d-i/console-setup'
- - '{name}_build_debian-installer-launcher':
- gitrepo: 'git://git.debian.org/git/d-i/debian-installer-launcher'
- - '{name}_build_debian-installer-netboot-images':
- gitrepo: 'git://git.debian.org/git/d-i/debian-installer-netboot-images'
- - '{name}_build_debian-installer-utils':
- gitrepo: 'git://git.debian.org/git/d-i/debian-installer-utils'
- - '{name}_build_debian-installer':
- gitrepo: 'git://git.debian.org/git/d-i/debian-installer'
- - '{name}_build_debootstrap':
- gitrepo: 'git://git.debian.org/git/d-i/debootstrap'
- - '{name}_build_desktop-chooser':
- gitrepo: 'git://git.debian.org/git/d-i/desktop-chooser'
- - '{name}_build_devicetype-detect':
- gitrepo: 'git://git.debian.org/git/d-i/devicetype-detect'
- - '{name}_build_dh-di':
- gitrepo: 'git://git.debian.org/git/d-i/dh-di'
- - '{name}_build_efi-reader':
- gitrepo: 'git://git.debian.org/git/d-i/efi-reader'
- - '{name}_build_elilo-installer':
- gitrepo: 'git://git.debian.org/git/d-i/elilo-installer'
- - '{name}_build_finish-install':
- gitrepo: 'git://git.debian.org/git/d-i/finish-install'
- - '{name}_build_flash-kernel':
- gitrepo: 'git://git.debian.org/git/d-i/flash-kernel'
- - '{name}_build_grub-installer':
- gitrepo: 'git://git.debian.org/git/d-i/grub-installer'
- - '{name}_build_hw-detect':
- gitrepo: 'git://git.debian.org/git/d-i/hw-detect'
- - '{name}_build_installation-locale':
- gitrepo: 'git://git.debian.org/git/d-i/installation-locale'
- - '{name}_build_installation-report':
- gitrepo: 'git://git.debian.org/git/d-i/installation-report'
- - '{name}_build_iso-scan':
- gitrepo: 'git://git.debian.org/git/d-i/iso-scan'
- - '{name}_build_kbd-chooser':
- gitrepo: 'git://git.debian.org/git/d-i/kbd-chooser'
- - '{name}_build_kernel-wedge':
- gitrepo: 'git://git.debian.org/git/d-i/kernel-wedge'
- - '{name}_build_kickseed':
- gitrepo: 'git://git.debian.org/git/d-i/kickseed'
- - '{name}_build_libdebian-installer':
- gitrepo: 'git://git.debian.org/git/d-i/libdebian-installer'
- - '{name}_build_lilo-installer':
- gitrepo: 'git://git.debian.org/git/d-i/lilo-installer'
- - '{name}_build_live-installer':
- gitrepo: 'git://git.debian.org/git/d-i/live-installer'
- - '{name}_build_localechooser':
- gitrepo: 'git://git.debian.org/git/d-i/localechooser'
- - '{name}_build_lowmem':
- gitrepo: 'git://git.debian.org/git/d-i/lowmem'
- - '{name}_build_lvmcfg':
- gitrepo: 'git://git.debian.org/git/d-i/lvmcfg'
- - '{name}_build_main-menu':
- gitrepo: 'git://git.debian.org/git/d-i/main-menu'
- - '{name}_build_mdcfg':
- gitrepo: 'git://git.debian.org/git/d-i/mdcfg'
- - '{name}_build_media-retriever':
- gitrepo: 'git://git.debian.org/git/d-i/media-retriever'
- - '{name}_build_mklibs':
- gitrepo: 'git://git.debian.org/git/d-i/mklibs'
- - '{name}_build_mountmedia':
- gitrepo: 'git://git.debian.org/git/d-i/mountmedia'
- - '{name}_build_net-retriever':
- gitrepo: 'git://git.debian.org/git/d-i/net-retriever'
- - '{name}_build_netboot-assistant':
- gitrepo: 'git://git.debian.org/git/d-i/netboot-assistant'
- - '{name}_build_netcfg':
- gitrepo: 'git://git.debian.org/git/d-i/netcfg'
- - '{name}_build_network-console':
- gitrepo: 'git://git.debian.org/git/d-i/network-console'
- - '{name}_build_nobootloader':
- gitrepo: 'git://git.debian.org/git/d-i/nobootloader'
- - '{name}_build_oldsys-preseed':
- gitrepo: 'git://git.debian.org/git/d-i/oldsys-preseed'
- - '{name}_build_os-prober':
- gitrepo: 'git://git.debian.org/git/d-i/os-prober'
- - '{name}_build_partconf':
- gitrepo: 'git://git.debian.org/git/d-i/partconf'
- - '{name}_build_partitioner':
- gitrepo: 'git://git.debian.org/git/d-i/partitioner'
- - '{name}_build_partman-auto-crypto':
- gitrepo: 'git://git.debian.org/git/d-i/partman-auto-crypto'
- - '{name}_build_partman-auto-lvm':
- gitrepo: 'git://git.debian.org/git/d-i/partman-auto-lvm'
- - '{name}_build_partman-auto-raid':
- gitrepo: 'git://git.debian.org/git/d-i/partman-auto-raid'
- - '{name}_build_partman-auto':
- gitrepo: 'git://git.debian.org/git/d-i/partman-auto'
- - '{name}_build_partman-base':
- gitrepo: 'git://git.debian.org/git/d-i/partman-base'
- - '{name}_build_partman-basicfilesystems':
- gitrepo: 'git://git.debian.org/git/d-i/partman-basicfilesystems'
- - '{name}_build_partman-basicmethods':
- gitrepo: 'git://git.debian.org/git/d-i/partman-basicmethods'
- - '{name}_build_partman-btrfs':
- gitrepo: 'git://git.debian.org/git/d-i/partman-btrfs'
- - '{name}_build_partman-crypto':
- gitrepo: 'git://git.debian.org/git/d-i/partman-crypto'
- - '{name}_build_partman-efi':
- gitrepo: 'git://git.debian.org/git/d-i/partman-efi'
- - '{name}_build_partman-ext3':
- gitrepo: 'git://git.debian.org/git/d-i/partman-ext3'
- - '{name}_build_partman-iscsi':
- gitrepo: 'git://git.debian.org/git/d-i/partman-iscsi'
- - '{name}_build_partman-jfs':
- gitrepo: 'git://git.debian.org/git/d-i/partman-jfs'
- - '{name}_build_partman-lvm':
- gitrepo: 'git://git.debian.org/git/d-i/partman-lvm'
- - '{name}_build_partman-md':
- gitrepo: 'git://git.debian.org/git/d-i/partman-md'
- - '{name}_build_partman-multipath':
- gitrepo: 'git://git.debian.org/git/d-i/partman-multipath'
- - '{name}_build_partman-nbd':
- gitrepo: 'git://git.debian.org/git/d-i/partman-nbd'
- - '{name}_build_partman-newworld':
- gitrepo: 'git://git.debian.org/git/d-i/partman-newworld'
- - '{name}_build_partman-partitioning':
- gitrepo: 'git://git.debian.org/git/d-i/partman-partitioning'
- - '{name}_build_partman-prep':
- gitrepo: 'git://git.debian.org/git/d-i/partman-prep'
- - '{name}_build_partman-target':
- gitrepo: 'git://git.debian.org/git/d-i/partman-target'
- - '{name}_build_partman-ufs':
- gitrepo: 'git://git.debian.org/git/d-i/partman-ufs'
- - '{name}_build_partman-xfs':
- gitrepo: 'git://git.debian.org/git/d-i/partman-xfs'
- - '{name}_build_partman-zfs':
- gitrepo: 'git://git.debian.org/git/d-i/partman-zfs'
- - '{name}_build_pkgsel':
- gitrepo: 'git://git.debian.org/git/d-i/pkgsel'
- - '{name}_build_prep-installer':
- gitrepo: 'git://git.debian.org/git/d-i/prep-installer'
- - '{name}_build_preseed':
- gitrepo: 'git://git.debian.org/git/d-i/preseed'
- - '{name}_build_quik-installer':
- gitrepo: 'git://git.debian.org/git/d-i/quik-installer'
- - '{name}_build_rescue':
- gitrepo: 'git://git.debian.org/git/d-i/rescue'
- - '{name}_build_rootskel-gtk':
- gitrepo: 'git://git.debian.org/git/d-i/rootskel-gtk'
- - '{name}_build_rootskel':
- gitrepo: 'git://git.debian.org/git/d-i/rootskel'
- - '{name}_build_s390-dasd':
- gitrepo: 'git://git.debian.org/git/d-i/s390-dasd'
- - '{name}_build_s390-netdevice':
- gitrepo: 'git://git.debian.org/git/d-i/s390-netdevice'
- - '{name}_build_s390-sysconfig-writer':
- gitrepo: 'git://git.debian.org/git/d-i/s390-sysconfig-writer'
- - '{name}_build_sibyl-installer':
- gitrepo: 'git://git.debian.org/git/d-i/sibyl-installer'
- - '{name}_build_silo-installer':
- gitrepo: 'git://git.debian.org/git/d-i/silo-installer'
- - '{name}_build_tzsetup':
- gitrepo: 'git://git.debian.org/git/d-i/tzsetup'
- - '{name}_build_udpkg':
- gitrepo: 'git://git.debian.org/git/d-i/udpkg'
- - '{name}_build_usb-discover':
- gitrepo: 'git://git.debian.org/git/d-i/usb-discover'
- - '{name}_build_user-setup':
- gitrepo: 'git://git.debian.org/git/d-i/user-setup'
- - '{name}_build_win32-loader':
- gitrepo: 'git://git.debian.org/git/d-i/win32-loader'
- - '{name}_build_yaboot-installer':
- gitrepo: 'git://git.debian.org/git/d-i/yaboot-installer'
- - '{name}_build_zipl-installer':
- gitrepo: 'git://git.debian.org/git/d-i/zipl-installer'
-
diff --git a/job-cfg/d-i.yaml.py b/job-cfg/d-i.yaml.py
new file mode 100755
index 00000000..055364a6
--- /dev/null
+++ b/job-cfg/d-i.yaml.py
@@ -0,0 +1,351 @@
+#!/usr/bin/python
+
+import sys
+from yaml import load, dump
+try:
+ from yaml import CLoader as Loader, CDumper as Dumper
+except ImportError:
+ from yaml import Loader, Dumper
+
+langs = {
+ 'ca': 'Catalan',
+ 'cs': 'Czech',
+ 'de': 'German',
+ 'en': 'English',
+ 'fr': 'French',
+ 'it': 'Italian',
+ 'pt_BR': 'Brazilian Portuguese',
+ 'da': 'Danish',
+ 'el': 'Greek',
+ 'es': 'Spanish',
+ 'fi': 'Finnish',
+ 'hu': 'Hungarian',
+ 'ja': 'Japanese',
+ 'ko': 'Korean',
+ 'nl': 'Dutch',
+ 'nn': 'Norwegian Nynorsk',
+ 'pt': 'Portuguese',
+ 'ro': 'Romanian',
+ 'ru': 'Russian',
+ 'sv': 'Swedish',
+ 'tl': 'Tagalog',
+ 'vi': 'Vietnamese',
+ 'zh_CN': 'Chinese (zh_CN)',
+ 'zh_TW': 'Chinese (zh_TW)',
+}
+
+non_pdf_langs = ['el', 'vi', 'ja', 'zh_CN', 'zh_TW']
+non_po_langs = ['ca', 'cs', 'de', 'en', 'fr', 'it', 'pt_BR']
+
+pkgs = """
+anna
+apt-setup
+arcboot-installer
+base-installer
+bterm-unifont
+babelbox
+busybox
+cdebconf-entropy
+cdebconf-terminal
+cdebconf
+cdrom-checker
+cdrom-detect
+cdrom-retriever
+choose-mirror
+clock-setup
+console-setup
+debian-installer-launcher
+debian-installer-netboot-images
+debian-installer-utils
+debian-installer
+debootstrap
+desktop-chooser
+devicetype-detect
+dh-di
+efi-reader
+elilo-installer
+finish-install
+flash-kernel
+grub-installer
+hw-detect
+installation-locale
+installation-report
+iso-scan
+kbd-chooser
+kernel-wedge
+kickseed
+lenny-support
+libdebian-installer
+lilo-installer
+live-installer
+localechooser
+lowmem
+lvmcfg
+main-menu
+mdcfg
+media-retriever
+mklibs
+mountmedia
+net-retriever
+netboot-assistant
+netcfg
+network-console
+nobootloader
+oldsys-preseed
+os-prober
+partconf
+partitioner
+partman-auto-crypto
+partman-auto-lvm
+partman-auto-raid
+partman-auto
+partman-base
+partman-basicfilesystems
+partman-basicmethods
+partman-btrfs
+partman-crypto
+partman-efi
+partman-ext3
+partman-iscsi
+partman-jfs
+partman-lvm
+partman-md
+partman-multipath
+partman-nbd
+partman-newworld
+partman-partitioning
+partman-prep
+partman-target
+partman-ufs
+partman-xfs
+partman-zfs
+pkgsel
+prep-installer
+preseed
+quik-installer
+rescue
+rootskel-gtk
+rootskel
+s390-dasd
+s390-netdevice
+s390-sysconfig-writer
+sibyl-installer
+silo-installer
+tzsetup
+udpkg
+usb-discover
+user-setup
+win32-loader
+yaboot-installer
+zipl-installer
+""".split()
+
+def scm_svn(po,inc_regs=None):
+ po_str = ''
+ if po == True:
+ po_str = 'po/'
+
+ if inc_regs == None:
+ inc_regs = '/trunk/manual/' + po_str + '{lang}/.*'
+
+ return [{'svn': {'excludedCommitMessages': '',
+ 'url': 'svn://anonscm.debian.org/svn/d-i/trunk',
+ 'basedir': '.',
+ 'workspaceupdater': 'update',
+ 'includedRegions': inc_regs,
+ 'excludedUsers': '',
+ 'excludedRevprop': '',
+ 'excludedRegions': '',
+ 'viewvc-url': 'http://anonscm.debian.org/viewvc/d-i/trunk'}}]
+
+def svn_desc(po, fmt):
+ s = 'Builds the {languagename} ' + fmt + ' version of the installation-guide for all architectures. '
+ s += 'Triggered by SVN commits to <code>svn://anonscm.debian.org/svn/d-i/trunk/manual'
+ s += '/po' if po else ''
+ s += '/{lang}/<code>. After successful build <a href="https://jenkins.debian.net/job/d-i_manual_{lang}_html">d-i_manual_{lang}_pdf</a> is triggered. {do_not_edit}'
+ return s
+
+def pdf_desc():
+ s = 'Builds the {languagename} pdf version of the installation-guide for all architectures. Triggered by successful build of <a href="https://jenkins.debian.net/job/d-i_manual_{lang}_html">d-i_manual_{lang}_html</a>. {do_not_edit}'
+ return s
+
+def instguide_desc():
+ return 'Builds the installation-guide package. Triggered by SVN commits to <code>svn://anonscm.debian.org/svn/d-i/</code> matching these patterns: <pre>{include}</pre> {do_not_edit}'
+
+def sb_about():
+ return {'sidebar': {'url': 'https://jenkins.debian.net/userContent/about.html',
+ 'text': 'About jenkins.debian.net',
+ 'icon': '/userContent/images/debian-swirl-24x24.png'}}
+def sb_misc():
+ return {'sidebar': {'url': 'https://jenkins.debian.net/view/d-i_misc/',
+ 'text': 'Misc debian-installer jobs',
+ 'icon': '/userContent/images/debian-jenkins-24x24.png'}}
+def sb_manual():
+ return {'sidebar': {'url': 'https://jenkins.debian.net/view/d-i_manual/',
+ 'text': 'debian-installer manual jobs',
+ 'icon': '/userContent/images/debian-jenkins-24x24.png'}}
+def sb_pkgs():
+ return {'sidebar': {'url': 'https://jenkins.debian.net/view/d-i_packages/',
+ 'text': 'debian-installer packages jobs',
+ 'icon': '/userContent/images/debian-jenkins-24x24.png'}}
+def sb_pbricks():
+ return {'sidebar': {'url': 'http://www.profitbricks.co.uk',
+ 'text': 'Sponsored by Profitbricks',
+ 'icon': '/userContent/images/profitbricks-24x24.png'}}
+def lr(keep):
+ return {'artifactDaysToKeep': -1, 'daysToKeep': keep, 'numToKeep': 30, 'artifactNumToKeep': -1}
+
+def publ(fmt=None,trigger=False):
+ p = []
+ if trigger:
+ p = [{'trigger': {'project': 'd-i_manual_{lang}_pdf', 'threshold': 'UNSTABLE'}}]
+ p.extend([
+ {'logparser': {'parse-rules': '/srv/jenkins/logparse/debian-installer.rules',
+ 'unstable-on-warning': 'true',
+ 'fail-on-error': 'true'}},
+ {'email': {'recipients': 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'}}])
+ if fmt != None:
+ p.append({'archive': {'artifacts': fmt + '/**/*.*', 'latest_only': True}})
+ return p
+
+def publ_email():
+ return [{'email': {'recipients': 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'}}]
+
+def prop(middle=sb_manual, priority=None):
+ arr = [sb_about(), middle(), sb_pbricks()]
+ if priority != None:
+ arr.append( {'priority': {'job-prio': str(priority)}} )
+ return arr
+
+def jtmpl(act, lang, fmt, po=False):
+ return {'job-template': {'name': '{name}_' + act + '_' + lang
+ + ('_' + fmt if fmt else ''),
+ 'defaults': 'd-i-' + act
+ + ('-' + fmt if fmt else '') + ('-po2xml' if po else '')}}
+def jobspec(name,priority=120,logkeep=None,trigger=None,publisher=None,desc=None,po=False,fmt=None,defaults=None,lang=None,inc_regs=None):
+ j = {'scm': scm_svn(po=po,inc_regs=inc_regs),
+ 'project-type': 'freestyle',
+ 'builders': [{'shell': '/srv/jenkins/bin/d-i_manual.sh'
+ + (' ' + lang if lang else '')
+ + (' ' + fmt if fmt else '')
+ + (' po2xml' if po else '')}],
+ 'properties': prop(priority=priority),
+ 'name': name}
+ j['publishers'] = publisher() if publisher != None else publ(fmt=fmt,trigger=trigger)
+ if desc != None:
+ j['description'] = desc()
+ else:
+ if fmt != None:
+ j['description'] = svn_desc(po=po,fmt=fmt)
+ if defaults != None:
+ j['defaults'] = defaults
+ if trigger != None:
+ j['triggers'] = [{'pollscm': '*/' + str(trigger) + ' * * * *'}]
+ if logkeep != None:
+ j['logrotate'] = lr(logkeep)
+ return j
+
+
+data = []
+
+data.append({'defaults':{'name': 'd-i',
+ 'logrotate': lr(90),
+ 'project-type': 'freestyle',
+ 'properties': prop(middle=sb_misc)}})
+
+data.append({'defaults': jobspec(name='d-i-manual-html',
+ fmt='html',
+ lang='{lang}',
+ trigger=15,
+ logkeep=90)})
+
+data.append({'defaults': jobspec(name='d-i-manual-html-po2xml',
+ fmt='html',
+ lang='{lang}',
+ po=True,
+ trigger=30,
+ logkeep=90)})
+
+data.append({'defaults': jobspec(name='d-i-manual-pdf',
+ fmt='pdf',
+ lang='{lang}',
+ desc=pdf_desc,
+ logkeep=90)})
+
+data.append({'defaults': jobspec(name='d-i-manual-pdf-po2xml',
+ fmt='pdf',
+ lang='{lang}',
+ desc=pdf_desc,
+ po=True,
+ logkeep=90)})
+
+data.append(
+ {'defaults': {'scm': [{'git': {'url': '{gitrepo}',
+ 'branches': ['master', 'pu/*']}}],
+ 'publishers': publ(),
+ 'description': 'Builds debian packages in sid from git master branch, triggered by pushes to <pre>{gitrepo}</pre> {do_not_edit}',
+ 'triggers': [{'pollscm': '*/6 * * * *'}],
+ 'project-type': 'freestyle',
+ 'logrotate': lr(90),
+ 'builders': [{'shell': '/srv/jenkins/bin/d-i_build.sh'}],
+ 'properties': prop(middle=sb_pkgs, priority=99),
+ 'name': 'd-i-build'}},
+)
+
+data.append({'job-template': jobspec(defaults='d-i',
+ name='{name}_manual',
+ desc=instguide_desc,
+ trigger=15, priority=125,
+ publisher=publ_email,
+ inc_regs='{include}')})
+
+data.append(
+ {'job-template': {'publishers': [{'logparser': {'parse-rules': '/srv/jenkins/logparse/debian.rules',
+ 'unstable-on-warning': 'true',
+ 'fail-on-error': 'true'}},
+ {'email': {'recipients': 'qa-jenkins-scm@lists.alioth.debian.org'}}],
+ 'name': '{name}_check_jenkins_jobs',
+ 'defaults': 'd-i',
+ 'triggers': [{'timed': '23 0 * * *'}],
+ 'builders': [{'shell': '/srv/jenkins/bin/d-i_check_jobs.sh'}],
+ 'description': 'Checks daily for missing jenkins jobs. {do_not_edit}'}},
+)
+
+data.append(
+ {'job-template': {'publishers': [{'logparser': {'parse-rules': '/srv/jenkins/logparse/debian.rules',
+ 'unstable-on-warning': 'true',
+ 'fail-on-error': 'true'}},
+ {'email': {'recipients': 'jenkins+debian-boot qa-jenkins-scm@lists.alioth.debian.org'}}],
+ 'name': '{name}_maintenance',
+ 'defaults': 'd-i',
+ 'triggers': [{'timed': '30 5 * * *'}],
+ 'builders': [{'shell': '/srv/jenkins/bin/maintenance.sh {name}'}],
+ 'properties': prop(priority=150),
+ 'description': 'Cleanup and monitor so that there is a predictable environment.{do_not_edit}'}}
+ )
+
+
+data.extend(map(lambda l: jtmpl('manual',l,'html',l not in non_po_langs), langs.keys()))
+data.extend(map(lambda l: jtmpl('manual',l,'pdf',l not in non_po_langs),
+ filter(lambda l: l not in non_pdf_langs, langs.keys())))
+
+data.extend(map(lambda l: jtmpl('build',l,None), pkgs))
+
+jobs = [
+ '{name}_maintenance',
+ '{name}_check_jenkins_jobs',
+ {'{name}_manual': {'include': '/trunk/manual/debian/.*\n/trunk/manual/po/.*\n/trunk/manual/doc/.*\n/trunk/manual/scripts/.*'}}]
+
+jobs.extend(map(lambda (l, lang): {'{name}_manual_' + l + '_html': {'lang': l, 'languagename': lang}}, langs.iteritems()))
+jobs.extend(map(lambda (l, lang): {'{name}_manual_' + l + '_pdf': {'lang': l, 'languagename': lang}},
+ filter(lambda (l, x): l not in non_pdf_langs, langs.iteritems())))
+jobs.extend(map(lambda (p): {'{name}_build_' + p: {'gitrepo': 'git://git.debian.org/git/d-i/' + p}}, pkgs))
+
+data.append(
+ {'project': {
+ 'jobs': jobs,
+ 'name': 'd-i',
+ 'do_not_edit': '<br><br>Job configuration source is <a href="http://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/tree/job-cfg/d-i.yaml">d-i.yaml</a>.'}}
+)
+
+sys.stdout.write( dump(data, Dumper=Dumper) )