Git의 Ansible 버전 관리

Git의 Ansible 버전 관리

git repo도 있고, 플레이북과 호스트도 있어요. 이제 뭐?

내 GitLab에 /etc/ansible 폴더를 가져오는 데 권장되는 방법은 무엇입니까? 리포지토리를 생성하면 되지만, 언제 어떻게 가져와야 합니까? .git 폴더는 어떻습니까?

/home/user/git/ansible에 복사본을 보관하고 /etc/ansible에 심볼릭 링크를 시도했지만 ansible이 이를 따를 수 없습니다.

이 작업을 어떻게 수행해야 합니까?

(나는 또한 git을 제대로 사용하는 방법에 대한 좋은 내용을 읽고 싶습니다.)

답변1

개인적으로 나는 /etc/ansible에 아무것도 저장하지 않습니다. 하지만 저는 virtualenv를 사용하여 ansible을 설치하고 실행하므로 /etc/ansible이 전혀 존재하지 않습니다.

당신은 확실히 봐야합니다공식 추천 레이아웃, 그러나 내 최소 Ansible 계층 구조는 다음과 같습니다.

inventories
    hosts
    vars
roles
    role1
    role2
    ....
ansible.cfg
site.yml

저장소를 /home/victor/git/ansible에 복제하고 bashrc에 다음 줄을 넣어 기본 ansible 경로를 설정했습니다.

export ANSIBLE_INVENTORY=/home/victor/git/ansible/inventories/hosts
export ANSIBLE_CONFIG=/home/victor/git/ansible/ansible.cfg

제가 항상 따르는 두 가지 규칙이 있습니다.

  1. 플레이북을 실행하기 전에 항상 최신 버전이 실행되고 있는지 확인하기 위해 git에서 풀링합니다.
  2. 플레이북을 변경할 때마다 항상 플레이북을 먼저 실행하여 저장소에 커밋하기 전에 오류가 없는지 확인했습니다.

Ansible을 사용하여 비밀이나 자격 증명을 배포하는 경우 git에 커밋하기 전에 ansible-vault를 사용하여 암호화하는 것이 좋습니다.git 저장소에 일반 자격 증명을 넣지 마십시오.

이 사용 사례에서는 .git 폴더가 있는 것이 전혀 문제가 되지 않는다고 가정합니다(/etc/ 어딘가에 .git 폴더를 원하지 않는 것 같습니다).

관련 정보