ansibleを使用してシンボリックリンクを作成するための適切な構文は何ですか? Vagrant仮想環境を作成して、プロビジョニング担当者としてansibleを実行しています。サイトが有効になっているサイトから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へのシンボリックリンク
ファイル:path =/etc/nginx/sites-enabled/example.dev.conf
状態=リンク
^ Ansibleは正常に完了できませんでした。エラー出力は上に表示されます。これらのエラーを修正して、もう一度お試しください。
また、path
の代わりにsrc=/etc/nginx/sites-enabled
を使用してみましたが、Webでこれの決定的な例を見つけることができないようです。
スペック:
ドキュメント から:
src、リンクするファイルのパス(state = linkにのみ適用)。絶対パス、相対パス、存在しないパスを受け入れます。相対パスは展開されません。
src
ではなくstate=link
を使用する場合は、dest
および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