git 上的 Ansible 版本控制

git 上的 Ansible 版本控制

我有一個 git 儲存庫,我有我的劇本和主機。怎麼辦?

在我的 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. 每次運行 playbook 之前,我都會從 git 中提取內容以確保運行的是最新版本。
  2. 每當我對劇本進行更改時,我總是會先運行它們,以確保在提交到儲存庫之前沒有錯誤。

如果您使用 ansible 分發機密或憑證,您還需要在提交到 git 之前使用 ansible-vault 對其進行加密。不要將任何普通憑證放在 git 儲存庫上。

我想在這個用例中,擁有 .git 資料夾根本不是問題(我猜您不希望 /etc/ 中的某個位置有 .git 資料夾)。

相關內容