# Copyright 2013 OpenStack Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. # # Install a host that manages the devstack node pool. class openstack_project::devstack_launch_slave ( $jenkins_api_user, $jenkins_api_key, $jenkins_ssh_public_key, $jenkins_ssh_private_key, ) { class { 'openstack_project::slave': bare => true, ssh_key => $jenkins_ssh_public_key, } package { [ 'python-novaclient', 'python-jenkins', 'rackspace-auth-openstack', 'statsd', 'paramiko']: ensure => latest, provider => pip, require => Class['pip'], } package { [ 'python-sqlalchemy', 'sqlite3']: ensure => present, } file { '/home/jenkins/devstack-gate-secure.conf': ensure => present, owner => 'jenkins', group => 'jenkins', mode => '0600', content => template('openstack_project/devstack-gate-secure.conf.erb'), require => File['/home/jenkins'], } file { '/home/jenkins/.ssh/id_rsa': owner => 'jenkins', group => 'jenkins', mode => '0400', require => File['/home/jenkins/.ssh'], content => $jenkins_ssh_private_key, } }