일종의 템플릿을 사용하여 가능한 작업 상용구를 줄이시겠습니까?

일종의 템플릿을 사용하여 가능한 작업 상용구를 줄이시겠습니까?

저는 일부 Ansible 작업에 투입해야 하는 보일러 플레이트 구성의 양을 줄이는 방법을 찾고 있습니다.

예를 들어 저는 docker_container모듈을 사용하는 많은 작업을 수행하고 있으며 각 작업에는 동일한 ~10개의 동일한 옵션 세트가 있습니다. 저는 이러한 표준 옵션을 중앙 어딘가에 정의하고 각 작업이 필요한 고유 옵션만 정의하도록 하고 싶습니다.

(이 연구의 문제점은 이 주제에 대한 검색 결과의 99.9%가 복사/템플릿 모듈 자체에 관한 것이라는 것입니다.)

docker_container 모듈을 확장하는 Python으로 사용자 정의 모듈을 작성할 수 있을 것 같지만 정말 과잉인 것 같습니다.

상용구 구성을 줄이는 방법에 대한 아이디어가 있습니까?

답변1

당신이 사용할 수있는module defaults

- hosts: localhost
  module_defaults:
    ansible.builtin.file:
      owner: root
      group: root
      mode: 0755
  tasks:
    - name: Create file1
      ansible.builtin.file:
        state: touch
        path: /tmp/file1

    - name: Create file2
      ansible.builtin.file:
        state: touch
        path: /tmp/file2

    - name: Create file3
      ansible.builtin.file:
        state: touch
        path: /tmp/file3

관련 정보