web-dev-qa-db-ja.com

Ansible:相対シンボリックリンクを作成します

私のプレイブックでは、レポのシンボリックリンクを作成する必要があります。

コマンド(シェル)を使用すると、次のように動作します。

########## Create symbolic link 
- name: Create symbolic link 
  Shell : ln   -s  "{{SOURCE_FOLDER}}"  SYMLINK
  args :
    chdir : "/opt/application/i99/"
  when:
    - ansible_Host in groups['ihm']

->このように私のシンボリックリンクはi99 repo /内に直接作成されます

SYMLINK->SOURCE_FOLDER

しかし、次のように、Ansibleファイルモジュールを使用してそれを行います:

########## Create symbolic link 
- name: Create symbolic link 
  file:
   src: "/opt/application/i99/{{SOURCE_FOLDER}}/"
   dest: "/opt/application/i99/SYMLINK"
   state: link
  when:
    - ansible_Host in groups['ihm']

私の出力はこれです:

SYMLINK->/opt/application/i99/SOURCE_FOLDER

パス全体を指すのは望ましくないので、最初の形式を取得する必要があります。

SYMLINK-> SOURCE_FOLDER

どうすればいいですか?

24
firasKoubaa

単に:

- name: Create symbolic link 
  file:
    src: "{{SOURCE_FOLDER}}"
    dest: "/opt/application/i99/SYMLINK"
    state: link

fileモジュールのマニュアル でわかるように:

src絶対パス、相対パス、および存在しないパスを受け入れます。相対パスは展開されません。

44
techraf