ansible을 사용하여 호스트 변수를 env 파일로 변환하는 속도가 정말 느립니다.

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초가 걸리며 실제로는 합산됩니다.

답변1

template모듈을 사용하고 Jinja2 파일을 작성해 보세요 . lineinfile루프를 처리할 때보 다 더 빠른 경향이 있습니다 .

관련 정보