roles/jenkins-slave: Prepare host for Jenkins

The *jenkins-slave* role prepares a host to have the Jenkins slave
agent deployed on it. Deploying the agent itself is done by the Jenkins
master, through the web UI.
jenkins-master
Dustin 2018-04-08 11:59:18 -05:00
parent 9a2dfa261c
commit fd347fa600
2 changed files with 45 additions and 0 deletions

View File

@ -0,0 +1,42 @@
- name: ensure required packages are installed
package:
name={{ jenkins_slave_required_packages|join(',') }}
state=present
tags:
- install
- name: ensure jenkins group exists
group:
name=jenkins
system=yes
- name: ensure jenkins user exists
user:
name=jenkins
system=yes
home=/var/lib/jenkins
createhome=yes
groups=jenkins
append=yes
state=present
- name: ensure jenkins home directory permissions are correct
file:
path=/var/lib/jenkins
owner=jenkins
group=jenkins
mode=0755
state=directory
- name: ensure jenkins ssh client directory exists
file:
path=/var/lib/jenkins/.ssh
owner=jenkins
group=jenkins
mode=0700
setype=ssh_home_t
state=directory
- name: ensure jenkins master ssh key is authorized
authorized_key:
user: jenkins
key: '{{ jenkins_master_ssh_key }}'
state: present
when: jenkins_master_ssh_key is defined

View File

@ -0,0 +1,3 @@
jenkins_slave_required_packages:
- git-core
- java-1.8.0-openjdk-headless