pro_vision.jenkins_pv_pipeline_library
pro_vision.jenkins_pv_pipeline_library
这个角色是一个实用角色,用于设定Jenkins实例,以便使用pro!vision的jenkins-pv-pipeline-library。
此角色安装所有必要的插件,并确保使用特定版本,以保证共享的管道库始终与最新的兼容插件一起运行。
版本管理
版本号将遵循以下版本管理模式:
[JenkinsVersion]-[ReleaseCount]
例如:
2.107.2-1
- Jenkins 2.107.2的第一个版本2.107.2-2
- Jenkins 2.107.2的第二个版本2.107.2-N
- Jenkins 2.107.2的第N个版本2.138.1-1
- Jenkins 2.107.3的第一个版本
需求
此角色需要Ansible 2.4或更高版本,以及在目标实例上运行的Jenkins。
角色变量
jenkins_pv_pipeline_library_jenkins_process_user: jenkins
Linux下的jenkins用户。
jenkins_pv_pipeline_library_jenkins_process_group: "{{ jenkins_pv_pipeline_library_jenkins_process_user }}"
Linux下的jenkins用户组。
jenkins_pv_pipeline_library_admin_username: admin
Jenkins管理员用户名。
jenkins_pv_pipeline_library_admin_password: admin
Jenkins管理员密码。
jenkins_pv_pipeline_library_jenkins_home: /var/lib/jenkins
Jenkins目录的路径。
jenkins_pv_pipeline_library_jenkins_hostname: localhost
Jenkins实例的主机名。
jenkins_pv_pipeline_library_jenkins_port: 8080
Jenkins实例的HTTP端口。
jenkins_pv_pipeline_library_jenkins_url_prefix: ""
Jenkins实例的URL前缀,例如,当在tomcat中运行时。
jenkins_pv_pipeline_library_jenkins_update_dir: "{{ jenkins_pv_pipeline_library_jenkins_home }}/updates"
Jenkins更新目录的路径。
jenkins_pv_pipeline_library_jenkins_base_url: "http://{{ jenkins_facts_jenkins_hostname }}:{{ jenkins_facts_jenkins_port }}{{ jenkins_facts_jenkins_url_prefix }}"
Jenkins实例的基本URL。
jenkins_pv_pipeline_library_updates_expiration: 86400
上次Jenkins插件更新检查以来的最大秒数。
jenkins_pv_pipeline_library_updates_timeout: 60
Jenkins更新操作的超时。
jenkins_pv_pipeline_library_debug: false
当设置为启用时,该角色将记录一些调试信息。
jenkins_pv_pipeline_library_plugins_present: [...]
对于jenkins-pv-pipeline-library,必须存在的插件及其版本。
:bulb: 由于这个列表较长,请参阅defaults
jenkins_pv_pipeline_library_plugins_absent: []
对于jenkins-pv-pipeline-library,必须不存在的插件。
依赖关系
此角色依赖于wcm_io_devops.jenkins_plugins角色,以安装/卸载jenkins-pipeline-library所需的插件。
作为传递依赖,此角色使用wcm_io_devops.jenkins_facts角色,以从Jenkins实例中获取已安装插件的列表。
示例剧本
准备Jenkins实例,以使用jenkins-pv-pipeline-library。
- hosts: jenkins
roles:
- role: pro_vision.jenkins_pv_pipeline_library
许可证
Apache 2.0