mircomasa.jenkins_slave
jenkins-slave Role
This role sets up a new Jenkins slave node and connects it to the Jenkins master.
Requirements
- Ansible version: >=2.8
- Supported Operating Systems
- EL (Enterprise Linux)
- 7
- 8
- Amazon Linux 2
- Ubuntu
- xenial
- bionic
- Debian
- stretch
- Windows
- 2016
- 2019
- EL (Enterprise Linux)
Dependencies
Role Variables
Required
master_username: Jenkins master CLI username. Default isadmin.master_password: Jenkins master CLI password. Default isadmin.master_host: Fully Qualified Domain Name or IP of Jenkins master. Default is{{ ansible_host }}.master_port: Jenkins master HTTP port. Default is8080.
General Defaults
slave_agent_name: Name of the slave node. Default isagent.slave_executors_num: Number of executors on the slave. Default is1.slave_environments: Environment variables for the slave. Default is{}.slave_mode_exclusive: If true, the node only builds jobs matching specific labels. Default isfalse.master_url: URL of the Jenkins master. Default ishttp://{{ master_host }}:{{ master_port }}.
Linux Defaults
slave_linux_jenkins_cred_id: Existing credentials ID on the Jenkins master. Default isci_slave.slave_linux_jenkins_username: Username defined inslave_linux_jenkins_cred_id. Default isuser.slave_linux_jenkins_password: Password for the new user. Default ispassword.slave_linux_jenkins_public_key: Public key for the slave user. Default is"".slave_linux_home: Path for Jenkins slave binaries. Default is/opt/jenkins.slave_linux_user_group: Group for the new user. Default isuser.slave_linux_host: Host for the Jenkins slave. Default is"{{ ansible_host }}".slave_linux_ssh_port: SSH port. Default is22.slave_linux_selinux_ports: SELinux ports. Default is"{{ master_port }},49187,{{ slave_linux_ssh_port }}".slave_linux_labels: Labels for the slave node. Default is['linux'].
Windows Defaults
slave_windows_workdir: Path for Jenkins slave binaries. Default isC:/Jenkins_Slave.slave_windows_service: Windows service name. Default isjenkins-slave.slave_windows_java_opts: Additional Java options. Default is"".slave_windows_labels: Labels for the slave node. Default is['windows'].slave_windows_service_user: Username for the service.slave_windows_service_password: Password for the service username.
Example Playbook
- name: "Install Jenkins slave on remote hosts with default credentials"
hosts: slave
vars:
master_host: master.example.com
roles:
- role: lean_delivery.jenkins_slave
- name: "Install Jenkins slave on remote hosts with custom credentials"
hosts: one_slave
vars:
master_host: master.example.com
slave_linux_jenkins_cred_id: new_cred
slave_linux_jenkins_username: new_user
slave_linux_jenkins_password: new_password
slave_agent_name: new_linux_slave
roles:
- role: lean_delivery.jenkins_slave
- name: "Install Jenkins slave on remote hosts with SSH credentials"
hosts: many_slaves
vars:
master_host: master.example.com
slave_linux_jenkins_cred_id: new_cred
slave_linux_jenkins_username: new_user
slave_linux_jenkins_public_key: |
Nck6x4HPr... (Your public key here)
roles:
- role: lean_delivery.jenkins_slave
Inventory Example
[master]
master.example.com
[one_slave]
slave.example.com
[many_slaves]
slave1.example.com slave_agent_name=slave1
slave2.example.com slave_agent_name=slave2
License
Author Information
Authors:
- Lean Delivery Team team@lean-delivery.com
Informazioni sul progetto
Ansible Role - Jenkins Slaves installation and configuration
Installa
ansible-galaxy install mircomasa.jenkins_slaveLicenza
apache-2.0
Download
4.1k
Proprietario
