mircomasa.jenkins_slave
jenkins-slave 角色
此角色设置一个新的 Jenkins 从节点并将其添加到 Jenkins 主节点。
需求
- 安装的 ansible 版本:>=2.8
- 支持的操作系统
- EL
- 7
- 8
- 亚马逊 Linux 2
- Ubuntu
- xenial
- bionic
- Debian
- stretch
- Windows
- 2016
- 2019
- EL
依赖项
角色变量
必填项
master_usernameJenkins 主节点 CLI 用户名。默认值为admin。master_passwordJenkins 主节点 CLI 用户密码。默认值为admin。master_hostJenkins 主节点的 FQDN 名称或 IP 地址。默认值为{{ ansible_host }}。master_portJenkins 主节点的 HTTP 端口。默认值为8080。
一般默认设置
slave_agent_name从节点的代理名称。默认值为agent。slave_executors_num从节点的执行器数量。默认值为1。slave_environments要在从节点上设置的环境变量字典。默认值为{}slave_mode_exclusive设置此节点的使用方式。如果为 true,则节点仅构建与匹配标签表达式的作业。默认值为false。master_urlJenkins 主节点的 URL。默认值为http://{{ master_host }}:{{ master_port }}。
Linux 默认设置
slave_linux_jenkins_cred_idJenkins 主节点上已存在的凭证 ID:默认值为ci_slave。slave_linux_jenkins_username在slave_linux_jenkins_cred_id中定义的用户名。将在从节点上创建新用户。默认值为user。slave_linux_jenkins_password从节点上新用户的密码。如果其类型为 '带密码的用户名',则必须与凭证密码匹配。默认值为 'password'。slave_linux_jenkins_public_key要添加到受权的从用户的 key 文件中的公钥。如果其类型为 '带私钥的 SSH 用户名',则私钥放置在 Jenkins 主节点的凭证中。默认值为""。slave_linux_home部署 Jenkins 从节点二进制文件的主路径。默认值为/opt/jenkins。slave_linux_user_group从节点上新用户的组。默认值为user。slave_linux_host安装 Jenkins 从节点的主机。默认值为"{{ ansible_host }}"。slave_linux_ssh_port从节点的 SSH 端口。默认值为22。slave_linux_selinux_ports从节点的 Selinux 端口。默认值为"{{ master_port }},49187,{{ slave_linux_ssh_port }}"。slave_linux_labels从节点的标签列表。默认值为['linux']。
Windows 默认设置
slave_windows_workdir部署 Jenkins 从节点二进制文件的主路径。默认值为C:/Jenkins_Slave。slave_windows_serviceWindows 服务名称。默认值为jenkins-slave。slave_windows_java_opts传递给 Java 的附加选项。默认值为""。slave_windows_labels从节点的标签列表。默认值为['windows']。slave_windows_service_user设置服务启动时的用户名。slave_windows_service_password设置服务启动时的给定用户名的密码。
示例剧本
- name: "在远程主机上使用默认的 '带密码的用户名' 凭证安装 jenkins-slave"
hosts: slave
vars:
master_host: master.example.com
roles:
- role: lean_delivery.jenkins_slave
- name: "在远程主机上使用创建的 '带密码的用户名' 凭证安装 jenkins-slave"
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: "在远程主机上使用创建的 '带私钥的 SSH 用户名' 凭证安装 jenkins-slave"
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:
Nck6x4HPrsdfkjhwhf98239hfoijhpowifnYXRXAW1GYGC3lsq7FpWjCeN8wT5QzRsblTh6HZKqh96K3Jj6kpob8ykjhsdkfjhskdfuhksdjfhksjdfhksfjhhkjhUHKUHDKFksjdfhkjshdfXPlx2xSUINDsH2IACLjIrxSAppxITzR7fHZyLmkjsdhfkuwhe98237982fhksdfhksdfhkuhCmcvH6fdVtozo42lXt4QgKytGtiuGAT+lN+uJ4LVGOq32WiEbYKbc7WE7N
roles:
- role: lean_delivery.jenkins_slave
库存示例
[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
许可证
作者信息
作者:
- Lean Delivery 团队 team@lean-delivery.com
