jenkins에서 proxy 설정, update-center 작업을 수작업으로 일반적으로 작업한다.
절차는 다음과 같다.
1. Use browser for metadata download 설정
Manage Jenkins -> Configure Global Security -> Plugin Manager -> Use browser for metadata download를 check on한다.
2. plugin 관리에서 Proxy 서버를 추가
http://jenkins장비:8080/pluginManager/advanced에서 proxy 설정 넣어야 한다.
이런 작업을 ansible로 자동화 할 수 있다. (1:1로 매핑하기 보다는 잘 동작하게)
- name: Configure Proxy
environment:
no_proxy: "localhost"
jenkins_script:
url: "http://localhost:8080"
script: "{{ lookup('template', 'proxy.groovy') }}"
validate_certs: False
timeout: 120
- name: Change Update-Center protocol
replace:
path: "{{ jenkins_home }}/hudson.model.UpdateCenter.xml"
regexp: 'https://updates.jenkins.io/update-center.json'
replace: 'http://updates.jenkins.io/update-center.json'
templates/proxy.groovy 파일
import jenkins.model.*
def instance = Jenkins.getInstance()
final String name = 'proxy.daumkakao.io'
final int port = 3128
final String noProxyHost = [
'localhost', '127.0.0.1', '127.0.0.0/8',
'...'
].join('\n')
final def proxyConfig = new hudson.ProxyConfiguration(
name, port, null, null, noProxyHost)
instance.proxy = proxyConfig
instance.save()
'Ansible-Puppet-Chef' 카테고리의 다른 글
[ansible] proxy 서버로 인한 Cannot get CSRF 에러 발생 (0) | 2019.06.18 |
---|---|
[ansible] key로 git clone하는 다운로드 예제 (0) | 2019.06.18 |
DNS와 앤서블 (0) | 2019.06.17 |
[ansible] 실행하기 전에 플레이북 확인하기 (0) | 2019.02.17 |
[ansible] 실행할 태스크를 제한할 수 있다. (0) | 2019.02.16 |