d5c6af46d1
Change-Id: I3c8ca151f48b94a86646dbcc8dbd2d950c4e22b9
130 lines
2.6 KiB
Puppet
130 lines
2.6 KiB
Puppet
class jenkins_slave {
|
|
|
|
jenkinsuser { "jenkins":
|
|
ensure => present
|
|
}
|
|
|
|
slavecirepo { "openstack-ci":
|
|
ensure => present,
|
|
require => [ Package[git], Jenkinsuser[jenkins] ]
|
|
}
|
|
|
|
apt::ppa { "ppa:tarmac/ppa":
|
|
ensure => present,
|
|
}
|
|
|
|
cron { "updatepuppet":
|
|
user => root,
|
|
minute => "*/15",
|
|
command => "cd /root/openstack-ci-puppet && /usr/bin/git pull && /var/lib/gems/1.8/bin/puppet apply -l /tmp/manifest.log --modulepath=/root/openstack-ci-puppet/modules manifests/this.pp",
|
|
require => [ Jenkinsuser[jenkins] ]
|
|
}
|
|
|
|
cron { "updateci":
|
|
user => jenkins,
|
|
minute => "*/15",
|
|
command => "cd /home/jenkins/openstack-ci && /usr/bin/git pull origin master"
|
|
}
|
|
|
|
file { 'aptsources':
|
|
name => '/etc/apt/sources.list',
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => 644,
|
|
ensure => 'present',
|
|
source => [
|
|
"puppet:///modules/jenkins_slave/sources.list",
|
|
],
|
|
}
|
|
|
|
file { 'profilerubygems':
|
|
name => '/etc/profile.d/rubygems.sh',
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => 644,
|
|
ensure => 'present',
|
|
source => [
|
|
"puppet:///modules/jenkins_slave/rubygems.sh",
|
|
],
|
|
}
|
|
|
|
package { "python-software-properties":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "openjdk-6-jre":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "devscripts":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "puppet":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "bzr":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "git":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "python-setuptools":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "python-sphinx":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "graphviz":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "pep8":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "pylint":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "byobu":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "python-dev":
|
|
ensure => latest
|
|
}
|
|
|
|
package { "tarmac":
|
|
ensure => latest,
|
|
require => Apt::Ppa["ppa:tarmac/ppa"]
|
|
}
|
|
|
|
package { "python-pip":
|
|
ensure => latest,
|
|
require => Package[python-dev]
|
|
}
|
|
|
|
package { "python-coverage":
|
|
ensure => latest,
|
|
require => Package[python-nose]
|
|
}
|
|
|
|
package { "python-nose":
|
|
ensure => latest,
|
|
require => Package[python-pip]
|
|
}
|
|
|
|
package { "nosexcover":
|
|
ensure => latest,
|
|
provider => pip,
|
|
require => Package[python-coverage]
|
|
}
|
|
|
|
}
|