Ansible

AWX에서 Gitlab 연동

NWSV 2020. 4. 16. 21:29

전전, 전 포트팅을 통해서 Docker를 이용하여 AWX와 Gitlab을 만들었습니다.

이번 시간에서는 AWX와 Gitlab을 연동하여 Gitlab 프로젝트에 있는 코드를 AWX에서 읽을수 있도록 설정해 보겠습니다.

 

0. 호스트서버에서 ssh 공개키, 개인키 생성

이 부분은 1장에서 하였으므로 넘어 갑니다.

 

 

1. Gitlab SSH Keys 설정

먼저 public key 값을 복사하기 위해 호스트서버에서 아래 명령어 입력 후 값을 복사합니다.

# cat /home/ansible/.ssh/id_rsa.pub

 

Gitlab 우측 상단 계정 클릭 -> 'Settings' 클릭 -> 'SSH Keys' 클릭 -> 'key'에 public key 붙여넣기

 

 

2. AWX Credentials 설정

먼저 private key 값을 복사하기 위해 호스트서버에서 아래 명령어 입력 후 값을 복사합니다.

# cat /home/ansible/.ssh/id_rsa

AWX 좌측 Credentials 클릭 후 '+' 버튼 클릭

  • NAME: 아무렇게나
  • CREDENTIAL TYPE: source control
  • USERNAME: ansible (gitlab 로그인시 사용하는 ID 넣는다)
  • SCM PRIVATE KEY: 위에서 복사한 private key 붙여넣기

 

3. AWX Projects 설정

AWX 좌측 Projects 클릭 후 '+' 버튼 클릭

  • NAME: 아무렇게
  • SCM TYPE: Git
  • SCM CREDENTIAL: 3번에서 만든거 클릭
  • SCM URL: Gitlab에서 Clone 클릭 후 Clone with SSH 복사한다.

SCM URL의 경우 git@gitlab.example.com:~~ 으로 할 경우 연동에 문제가 생길수 있는데

이 경우 git@[gitlab컨터이너의IP]:~~ 로 하면 연동이 잘 됩니다.

(컨테이너IP확인 방법: docker inspect [컨테이너 이름])

<초록색이 보이면 성공>