Ansible
使用ansible將主機變數轉換為env文件真的很慢
我在ansible中有以下任務:
- name: Set env vars lineinfile: path: "~/.env" mode: 0600 create: yes line: "{{ item.key|upper }}=\"{{ item.value }}\"" regexp: "^{{ item.key|upper }}=" loop: "{{ env_file |dict2items }}"
.env
它正在逐行創建文件,但它真的很慢。有沒有更好的辦法?.yml 文件如下所示:
env_file: key1: "value1" key2: "value2"
生成的文件具有以下格式:
KEY1="value1" KEY2="value2"
每行大約需要 20 秒來處理,而且確實加起來。
嘗試使用該
template
模組並編寫一個 Jinja2 文件。它往往比lineinfile
處理循環時更快。