- defaults:
name: reproducible
project-type: freestyle
triggers:
- timed: '{my_timed}'
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/reproducible
text: reproducible builds jobs
icon: /userContent/images/debian-jenkins-24x24.png
- sidebar:
url: http://www.profitbricks.com
text: Sponsored by Profitbricks
icon: /userContent/images/profitbricks-24x24.png
description: '{my_description}
Job configuration source is reproducible.yaml.
Results are available at https://reproducible.debian.net.'
logrotate:
daysToKeep: 90
numToKeep: 30
artifactDaysToKeep: -1
artifactNumToKeep: -1
builders:
- shell: '{my_shell}'
publishers:
- logparser:
parse-rules: '/srv/jenkins/logparse/reproducible.rules'
unstable-on-warning: 'true'
fail-on-error: 'true'
- email:
recipients: '{my_recipients}'
- defaults:
name: reproducible_notes
project-type: freestyle
triggers:
- timed: '{my_timed}'
- pollscm: '*/6 * * * *'
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/reproducible
text: reproducible builds jobs
icon: /userContent/images/debian-jenkins-24x24.png
- sidebar:
url: http://www.profitbricks.com
text: Sponsored by Profitbricks
icon: /userContent/images/profitbricks-24x24.png
description: '{my_description}
Job configuration source is reproducible.yaml.
Results are available at https://reproducible.debian.net.'
logrotate:
daysToKeep: 90
numToKeep: 20
artifactDaysToKeep: -1
artifactNumToKeep: -1
builders:
- shell: '{my_shell}'
publishers:
- logparser:
parse-rules: '/srv/jenkins/logparse/reproducible.rules'
unstable-on-warning: 'true'
fail-on-error: 'true'
- email:
recipients: '{my_recipients}'
scm:
- git:
url: '{my_gitrepo}'
branches:
- master
- defaults:
name: reproducible_builder
project-type: freestyle
triggers:
- timed: '{my_timed}'
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/reproducible
text: reproducible builds jobs
icon: /userContent/images/debian-jenkins-24x24.png
- sidebar:
url: http://www.profitbricks.com
text: Sponsored by Profitbricks
icon: /userContent/images/profitbricks-24x24.png
- priority:
job-prio: '150'
- throttle:
max-total: 3
max-per-node: 3
enabled: true
option: category
categories:
- reproducible
description: '{my_description}
Job configuration source is reproducible.yaml.
Results are available at https://reproducible.debian.net.'
wrappers:
- timeout:
timeout: 1560
logrotate:
daysToKeep: 14
numToKeep: 750
artifactDaysToKeep: -1
artifactNumToKeep: -1
builders:
- shell: '{my_shell}'
publishers:
- logparser:
parse-rules: '/srv/jenkins/logparse/reproducible.rules'
unstable-on-warning: 'true'
fail-on-error: 'true'
- email:
recipients: '{my_recipients}'
notify-every-unstable-build: false
- job-template:
defaults: reproducible
name: '{name}_maintainance'
- job-template:
defaults: reproducible
name: '{name}_setup_pbuilder'
- job-template:
defaults: reproducible
name: '{name}_setup_schroot'
- job-template:
defaults: reproducible
name: '{name}_scheduler'
- job-template:
defaults: reproducible
name: '{name}_html_graphs'
- job-template:
defaults: reproducible
name: '{name}_html_indexes'
- job-template:
defaults: reproducible
name: '{name}_html_dd_list'
- job-template:
defaults: reproducible_notes
name: '{name}_html_notes'
- job-template:
defaults: reproducible
name: '{name}_html_all_packages'
-
job-template:
defaults: reproducible
name: '{name}_create_meta_pkg_sets'
- job-template:
defaults: reproducible
name: '{name}_json'
- job-template:
defaults: reproducible_builder
name: '{name}_builder_alpha'
- job-template:
defaults: reproducible_builder
name: '{name}_builder_beta'
- job-template:
defaults: reproducible_builder
name: '{name}_builder_gamma'
#
# sometimes used for development:
#
#- job-template:
# defaults: reproducible_builder
# name: '{name}_builder_delta'
- project:
name: reproducible
jobs:
- '{name}_maintainance':
my_description: 'Do some maintainance: check for old directories laying around, do backups, etc.'
my_timed: '5 0,4,8,12,16,20 * * *'
my_shell: '/srv/jenkins/bin/reproducible_maintainance.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_setup_pbuilder':
my_description: 'Setup pbuilder for reproducible builds as described in https://wiki.debian.org/ReproducibleBuilds#Usage_example'
my_timed: '23 0 * * *'
my_shell: '/srv/jenkins/bin/reproducible_setup_pbuilder.sh'
my_recipients: 'jenkins+debian-reproducible holger@layer-acht.org'
- '{name}_setup_schroot':
my_description: 'Setup schroot for running debbindiff in a sid environment (this is needed to be able to correctly investigate haskell binaries...)'
my_timed: '23 0 * * *'
my_shell: '/srv/jenkins/bin/reproducible_setup_schroot.sh reproducible-sid sid debbindiff'
my_recipients: 'holger@layer-acht.org'
- '{name}_scheduler':
my_description: 'Schedule packages to be tested for reproducibility.'
my_timed: '42 * * * *'
my_shell: '/srv/jenkins/bin/reproducible_scheduler.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_html_graphs':
my_description: 'Generate HTML results (stats with graphs) for reproducible builds.'
my_timed: '0 * * * *'
my_shell: '/srv/jenkins/bin/reproducible_html_graphs.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_html_indexes':
my_description: 'Generate HTML results (indexes) for reproducible builds.'
my_timed: '59 */1 * * *'
my_shell: '/srv/jenkins/bin/reproducible_html_indexes.py'
my_recipients: 'holger@layer-acht.org'
- '{name}_html_dd_list':
my_description: 'Generate HTML results (dd-list) for reproducible builds.'
my_timed: '55 23 * * *'
my_shell: '/srv/jenkins/bin/reproducible_html_dd_list.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_html_notes':
my_description: 'Generate HTML results (notes) for reproducible builds, triggered by changes to the notes.git repository.'
my_timed: '57 0 * * *'
my_gitrepo: 'git://git.debian.org/git/reproducible/notes.git'
my_shell: '/srv/jenkins/bin/reproducible_html_notes.py'
my_recipients: 'jenkins+debian-reproducible holger@layer-acht.org mattia@mapreri.org'
- '{name}_html_all_packages':
my_description: 'Generate HTML results (for all packages) for reproducible builds. This job is normally not needed and only run once a year.'
my_timed: '12 12 30 12 *'
my_shell: '/srv/jenkins/bin/reproducible_html_all_packages.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_json':
my_description: 'Generate https://reproducible.debian.net/userContent/reproducible.json for consumption by tracker.debian.org.'
my_timed: '1 0 * * *'
my_shell: '/srv/jenkins/bin/reproducible_json.py'
my_recipients: 'holger@layer-acht.org'
- '{name}_create_meta_pkg_sets':
my_description: 'Create meta package sets for later consumption when generating HTML stats.'
my_timed: '0 6 * * H/3'
my_shell: '/srv/jenkins/bin/reproducible_create_meta_pkg_sets.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_builder_alpha':
my_description: 'Try to reproducibly build a scheduled package. This is one of several builder jobs.'
my_timed: 'H/2 * * * *'
my_shell: '/srv/jenkins/bin/reproducible_build.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_builder_beta':
my_description: 'Try to reproducibly build a scheduled package. This is one of several builder jobs.'
my_timed: 'H/2 * * * *'
my_shell: '/srv/jenkins/bin/reproducible_build.sh'
my_recipients: 'holger@layer-acht.org'
- '{name}_builder_gamma':
my_description: 'Try to reproducibly build a scheduled package. This is one of several builder jobs.'
my_timed: 'H/2 * * * *'
my_shell: '/srv/jenkins/bin/reproducible_build.sh'
my_recipients: 'holger@layer-acht.org'
# - '{name}_builder_delta':
# my_description: 'This is a builder job only used for development.'
# my_timed: ''
# my_shell: '/srv/jenkins/bin/reproducible_build_delta.sh'
# my_recipients: 'holger@layer-acht.org'