project-config/jenkins/jobs/chef-jobs.yaml
Jeremy Stanley 0af9b2c178 Get rid of precise||trusty job node declarations
Between the Icehouse and Juno releases, OpenStack changed its
supported Ubuntu LTS platform from Precise to Trusty. In support of
continuing testing stable/icehouse and prior branches on Precise
while starting to test newer branches on Trusty, a branch-based
decision tree was introduced into our Zuul configuration by way of
complex parameter functions with an ever growing list of regular
expression matches on job names.

Now that Icehouse is EOL (in fact, Juno is too) this simply adds
unnecessary complexity and an attractive nuisance for cargo-cult
copying into new job and job-template definitions which don't even
need it. In preparation to remove the associated parameter
functions, get rid of multiple labels in all jobs and set them to
whatever label Zuul would ultimately select.

This change touches a vast number, possibly a majority, of our jobs
and so manual jenkins-jobs updates on all Jenkins masters will be
needed after this merges, before it's safe to approve the
corresponding Zuul configuration cleanup.

Change-Id: Ic952ee02da2c77fe2ace81c4e2fa87531be6119c
2015-12-21 20:52:17 +00:00

158 lines
3.4 KiB
YAML

- job-template:
name: 'gate-{name}-chef-unit'
node: bare-precise
wrappers:
- build-timeout:
timeout: 60
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- ruby-191-prep
- chef-bundler-prep
- revoke-sudo
- chef-berkshelf-prep
- chef-cookbook-chefspec
publishers:
- console-log
# this job template requires a bootstrap.sh script (which installs chefdk and other dependencies)
# and a Rakefile with the tests that should be executed in the cookbook
- job-template:
name: 'gate-{name}-chef-rake'
node: '{node}'
wrappers:
- build-timeout:
timeout: 60
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- chef-bootstrap
- revoke-sudo
- chef-rake-test
publishers:
- console-log
# this job template requires a bootstrap.sh script (which installs chefdk and other dependencies)
# and a Rakefile with the integration tests that should be executed
# sudo privileges for jenkins are not revoked, since they are needed during the chef run executed for integration testing
- job-template:
name: 'gate-{name}-chef-rake-integration'
node: '{node}'
wrappers:
- build-timeout:
timeout: 60
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- chef-bootstrap
- chef-rake-integration
publishers:
- console-log
- job-template:
name: 'periodic-{name}-chef-rake-integration'
node: '{node}'
wrappers:
- build-timeout:
timeout: 60
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- branch-git-prep:
branch: master
- chef-bootstrap
- chef-rake-integration
publishers:
- console-log
- job-template:
name: 'gate-{name}-chef-lint'
node: bare-precise
wrappers:
- build-timeout:
timeout: 60
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- ruby-191-prep
- chef-bundler-prep
- revoke-sudo
- chef-berkshelf-prep
- chef-cookbook-foodcritic
publishers:
- console-log
- job-template:
name: 'gate-{name}-chef-style'
node: bare-precise
wrappers:
- build-timeout:
timeout: 60
- timestamps
builders:
- print-template-name:
template-name: "{template-name}"
- gerrit-git-prep
- ruby-191-prep
- chef-bundler-prep
- revoke-sudo
- chef-berkshelf-prep
- chef-cookbook-rubocop
publishers:
- console-log
- job:
name: gate-openstack-chef-repo
node: bare-precise
builders:
- gerrit-git-prep
- ruby-191-prep
- chef-bundler-prep
- revoke-sudo
- chef-berkshelf-prep
- shell: |
#!/bin/bash -xe
# Validates roles
bundle exec spiceweasel infrastructure.yml --debug
publishers:
- console-log
- job-group:
name: chef-test-jobs
jobs:
- 'gate-{name}-chef-lint'
- 'gate-{name}-chef-style'
- 'gate-{name}-chef-unit'
- 'gate-{name}-chef-rake'
- 'gate-{name}-chef-rake-integration'
- 'periodic-{name}-chef-rake-integration'