Ansible을 사용하여 RHEL 7에서 yum 저장소 업데이트

Ansible을 사용하여 RHEL 7에서 yum 저장소 업데이트

나는 사용 가능한 저장소 목록에 EPEL 저장소를 추가하기 위한 플레이북을 작성하려고 했습니다.

내가 playbook가진 것은 다음과 같습니다.

- hosts: all

  # define variables.
  vars:
    epelReleaseMajorVersion: 7
    epelReleaseMinorVersion: 8

  tasks:
    - name: add epel repo
      yum-repository:
        name: add epel repo
        description: EPEL YUM repo
        baseurl:  http://dl.fedoraproject.org/pub/epel/$epelReleaseMajorVersion/x86_64/e/epel-release-$epelReleaseMajorVersion-$epelReleaseMinorVersion.noarch.rpm
        tags: addEpelRepo

나는 playbook다음과 같이 실행하려고합니다 :
ansible-playbook -v -i "localhost," -c local serverSetup.yml

다음과 같은 오류가 발생했습니다.

ERROR! no action detected in task. This often indicates a misspelled module name, or incorrect module path.

The error appears to have been in '/root/ansible/playbooks/serverSetup.yml': line 21, column 7, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

  tasks:
    - name: add epel repo
      ^ here

내 질문:
1. epelReleaseMajorVersion 등의 변수를 올바르게 사용하고 있습니까?
2. 이 오류를 해결하는 방법은 무엇입니까? 문서를 살펴봤지만 예제가 많지 않은 것 같습니다.

답변1

보다Ansible yum_repository_module 문서

귀하의 코드는

- hosts: all

  # define variables.
  vars:
    epelReleaseMajorVersion: 7
    epelReleaseMinorVersion: 8

  tasks:
    - name: add epel repo
      yum_repository:
        name: epel_repo
        description: EPEL YUM repo
        baseurl:  http://dl.fedoraproject.org/pub/epel/{{epelReleaseMajorVersion}}/x86_64/

그래서 모듈 이름을 잘못 입력했습니다. Baseurl이 잘못되었습니다. 변수 참조 오류입니다. ansible 모듈 에는 yum_repository다음과 같은 매개변수가 없습니다.tags

관련 정보