From 255d17904c615c495146a6ba11658436c777ee31 Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Fri, 22 Jul 2011 15:41:06 -0400 Subject: [PATCH] Manage apt and gems path with puppet. Add tarmac.conf and key. Change-Id: I04c6edd049935b4f825ea2e70686e0803f75ba35 --- modules/jenkins_slave/files/rubygems.sh | 2 + modules/jenkins_slave/files/sources.list | 8 ++++ modules/jenkins_slave/files/tarmac.conf | 32 +++++++++++++ modules/jenkins_slave/manifests/init.pp | 22 +++++++++ .../jenkins_slave/manifests/jenkinsuser.pp | 45 ++++++++++++++++++- 5 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 modules/jenkins_slave/files/rubygems.sh create mode 100644 modules/jenkins_slave/files/sources.list create mode 100755 modules/jenkins_slave/files/tarmac.conf diff --git a/modules/jenkins_slave/files/rubygems.sh b/modules/jenkins_slave/files/rubygems.sh new file mode 100644 index 0000000000..e139bd709c --- /dev/null +++ b/modules/jenkins_slave/files/rubygems.sh @@ -0,0 +1,2 @@ +PATH=/var/lib/gems/1.8/bin:$PATH +export PATH diff --git a/modules/jenkins_slave/files/sources.list b/modules/jenkins_slave/files/sources.list new file mode 100644 index 0000000000..2d99d8077e --- /dev/null +++ b/modules/jenkins_slave/files/sources.list @@ -0,0 +1,8 @@ +deb http://archive.ubuntu.com/ubuntu/ natty main restricted universe +deb-src http://archive.ubuntu.com/ubuntu/ natty main restricted universe + +deb http://archive.ubuntu.com/ubuntu/ natty-updates main restricted universe +deb-src http://archive.ubuntu.com/ubuntu/ natty-updates main restricted universe + +deb http://security.ubuntu.com/ubuntu natty-security main restricted universe +deb-src http://security.ubuntu.com/ubuntu natty-security main restricted universe diff --git a/modules/jenkins_slave/files/tarmac.conf b/modules/jenkins_slave/files/tarmac.conf new file mode 100755 index 0000000000..fcfd87099b --- /dev/null +++ b/modules/jenkins_slave/files/tarmac.conf @@ -0,0 +1,32 @@ +[Tarmac] +rejected_branch_status = Work in progress + +[lp:nova] +verify_command=/home/jenkins/openstack-ci/test_nova.sh + +[lp:~hudson-openstack/nova/milestone-proposed] +verify_command=/home/jenkins/openstack-ci/test_nova.sh + +[lp:openstack-dashboard] +verify_command=bash run_tests.sh + +[lp:glance] +verify_command=python setup.py test + +[lp:~hudson-openstack/glance/milestone-proposed] +verify_command=python setup.py test + +[lp:swift] +verify_command=python setup.py test + +[lp:swift/1.1] +verify_command=python setup.py test + +[lp:swift/1.2] +verify_command=python setup.py test + +[lp:~hudson-openstack/swift/milestone-proposed] +verify_command=python setup.py test + +[lp:burrow] +verify_command=python setup.py test diff --git a/modules/jenkins_slave/manifests/init.pp b/modules/jenkins_slave/manifests/init.pp index e9ebf8668b..8761c6c3e4 100644 --- a/modules/jenkins_slave/manifests/init.pp +++ b/modules/jenkins_slave/manifests/init.pp @@ -21,6 +21,28 @@ class jenkins_slave { command => "cd /home/jenkins/openstack-ci && /usr/bin/git pull" } + 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 } diff --git a/modules/jenkins_slave/manifests/jenkinsuser.pp b/modules/jenkins_slave/manifests/jenkinsuser.pp index d622522d7b..75c090cbba 100644 --- a/modules/jenkins_slave/manifests/jenkinsuser.pp +++ b/modules/jenkins_slave/manifests/jenkinsuser.pp @@ -119,7 +119,7 @@ define jenkinsuser($ensure = present) { name => '/home/jenkins/.gnupg', owner => 'jenkins', group => 'jenkins', - mode => 600, + mode => 700, ensure => 'directory', require => File['jenkinshome'], } @@ -147,4 +147,47 @@ define jenkinsuser($ensure = present) { "puppet:///modules/jenkins_slave/slave_gpg_key", ], } + + file { 'jenkinsconfigdir': + name => '/home/jenkins/.config', + owner => 'jenkins', + group => 'jenkins', + mode => 755, + ensure => 'directory', + require => File['jenkinshome'], + } + + file { 'jenkinsconftarmacdir': + name => '/home/jenkins/.config/tarmac', + owner => 'jenkins', + group => 'jenkins', + mode => 755, + ensure => 'directory', + require => File['jenkinsconfigdir'], + } + + file { 'jenkinstarmacconf': + name => '/home/jenkins/.config/tarmac/tarmac.conf', + owner => 'jenkins', + group => 'jenkins', + mode => 644, + ensure => 'present', + require => File['jenkinsconftarmacdir'], + source => [ + "puppet:///modules/jenkins_slave/tarmac.conf", + ], + } + + file { 'jenkinstarmaccredentials': + name => '/home/jenkins/.config/tarmac/credentials', + owner => 'jenkins', + group => 'jenkins', + mode => 640, + ensure => 'present', + require => File['jenkinsconftarmacdir'], + source => [ + "puppet:///modules/jenkins_slave/slave_tarmac_key", + ], + } + }