project-config/jenkins/jobs/puppet-module-jobs.yaml
Emilien Macchi d480c48d91 Puppet OpenStack: enable Puppet 4.0 as non voting
Puppet 4.0 is out [1] so we want to support this release for our
modules.
* Create gate-puppet-{module}-puppet-unit-4.0 jobs for all Puppet
  OpenStack modules
* Enable the job in check as non-voting jobs

[1] https://github.com/puppetlabs/puppet/releases/tag/4.0.0

Change-Id: I9646bcd6f1d5f87753b9c862e029a563a4fd8da1
2015-04-19 14:02:30 +00:00

144 lines
3.4 KiB
YAML

- job-template:
name: 'gate-{name}-puppet-unit-{puppet_version}'
node: '{node}'
builders:
- uninstall-puppet
- revoke-sudo
- gerrit-git-prep
- shell: |
export PUPPET_GEM_VERSION='~> {puppet_version}.0'
mkdir .bundled_gems
export GEM_HOME=`pwd`/.bundled_gems
bundle install
bundle exec rake spec SPEC_OPTS='--format documentation'
wrappers:
- build-timeout:
timeout: 60
- timestamps
publishers:
- console-log
- job-template:
name: 'gate-{name}-puppet-beaker-rspec'
node: '{node}'
builders:
- uninstall-puppet
- shell: |
sudo apt-get install -y libxml2-dev libxslt-dev
- gerrit-git-prep
- shell: |
echo "" | sudo tee -a /etc/ssh/sshd_config
echo "Match address 127.0.0.1" | sudo tee -a /etc/ssh/sshd_config
echo " PermitRootLogin without-password" | sudo tee -a /etc/ssh/sshd_config
echo "" | sudo tee -a /etc/ssh/sshd_config
echo "Match address ::1" | sudo tee -a /etc/ssh/sshd_config
echo " PermitRootLogin without-password" | sudo tee -a /etc/ssh/sshd_config
mkdir -p .ssh
ssh-keygen -f ~/.ssh/id_rsa -b 2048 -C "beaker key" -P ""
sudo mkdir -p /root/.ssh
cat ~/.ssh/id_rsa.pub | sudo tee -a /root/.ssh/authorized_keys
sudo service ssh restart
- revoke-sudo
- shell: |
mkdir .bundled_gems
export GEM_HOME=`pwd`/.bundled_gems
bundle install
export BEAKER_set=nodepool
bundle exec rspec spec/acceptance
wrappers:
- build-timeout:
timeout: 60
- timestamps
publishers:
- console-log
- job-template:
name: '{name}-forge-upload'
node: pypi
builders:
- revoke-sudo
- gerrit-git-prep
- shell: |
#!/bin/bash
cat > Rakefile << EOF
require 'puppet_blacksmith/rake_tasks'
EOF
TAG=${{ZUUL_REF:10}}
sed -i -e 's/ "version":.*/ "version": "'$TAG'",/' metadata.json
mkdir .bundled_gems
export GEM_HOME=`pwd`/.bundled_gems
gem install --no-ri --no-rdoc puppetlabs_spec_helper puppet-blacksmith
rake module:push
publishers:
- console-log
- job-template:
name: 'gate-{name}-puppet-lint'
node: '{node}'
builders:
- revoke-sudo
- gerrit-git-prep
- puppet-lint
publishers:
- console-log
- job-template:
name: 'gate-{name}-puppet-syntax'
node: '{node}'
builders:
- revoke-sudo
- gerrit-git-prep
- puppet-syntax
publishers:
- console-log
- job-template:
name: 'gate-{name}-puppet-syntax-future'
node: '{node}'
builders:
- uninstall-puppet
- revoke-sudo
- gerrit-git-prep
- shell: |
export PUPPET_GEM_VERSION='~> 3.7.0'
mkdir .bundled_gems
export GEM_HOME=`pwd`/.bundled_gems
bundle install
export FUTURE_PARSER=yes
bundle exec rake syntax
publishers:
- console-log
- job-group:
name: 'puppet-check-jobs'
jobs:
- 'gate-{name}-puppet-lint'
- 'gate-{name}-puppet-syntax'
- job-group:
name: 'puppet-module-unit'
puppet_version:
- 3.3
- 3.4
- 3.6
- 3.7
- 4.0
jobs:
- 'gate-{name}-puppet-unit-{puppet_version}'