사용 가능한 심볼릭 링크에 대한 올바른 구문


24

ansible을 사용하여 심볼릭 링크를 만드는 올바른 구문은 무엇입니까? Vagrant 가상 환경을 만들고 프로비저닝 자로 사용할 수 있습니다. 사이트 사용 가능에서 내 사이트 nginx 구성 파일에 심볼릭 링크를 시도 할 때까지 모든 것이 잘 작동합니다. 여기 내가 시도한 것이 있습니다.

- name: Create symlink to example.com
  file: 
    path: /etc/nginx/sites-enabled/example.com 
    dest: /etc/nginx/sites-available/example.com 
    state: link
  notify: nginx reload

이 작업을 수행하면 다음 오류가 발생합니다.

오류 : YAML 스크립트, /Users/username/project/ansible/roles/nginx/tasks/main.yml을로드하는 동안 구문 오류

참고 : 오류는 실제로이 위치 앞에 나타날 수 있습니다. 24 행, 1 열

-이름 : example.dev.conf에 대한 Symlink

파일 : path = / etc / nginx / sites-enabled / example.dev.conf

state = link

^ Ansible을 성공적으로 완료하지 못했습니다. 모든 오류 출력이 위에 표시되어야합니다. 이 오류를 수정하고 다시 시도하십시오.

나는 또한 src=/etc/nginx/sites-enabled대신에 사용하려고했지만 path웹에서 이것의 확실한 예를 찾을 수없는 것 같습니다.

명세서:

  • OSX 매버릭스
  • 방랑자 1.6.3
  • VirtualBox 4.3
  • nginx 1.6.0
  • ansible 1.6.2
  • 우분투 14.04

답변:


35

에서 문서 :

src , 링크 할 파일의 경로입니다 (state = link에만 적용됨). 절대, 상대 및 존재하지 않는 경로를 허용합니다. 상대 경로는 확장되지 않습니다.

당신은 사용해야 src하고 dest사용하는 경우 state=link,하지 path. 또한 (당신이 정말로에 연결할 가정의 주위 길을 잘못 것으로 보인다 소스 및 대상, 반전 필요 sites-available에서 sites-enabled) - src링크의 경로입니다, dest심볼릭 링크를 만드는 곳입니다.

- name: Create symlink to example.com
  file: src=/etc/nginx/sites-available/example.com dest=/etc/nginx/sites-enabled/example.com state=link
  notify: nginx reload
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.