2016-02-28 78 views
1

我試圖寫一個劇本的格式一定體積,但我不能讓我的頭圍繞選擇正確的驅動Ansible發現卷磁盤名

這裏是我工作的

--- 
- hosts: all 
    gather_facts: no 
    remote_user: root 
    tasks: 
    - name: create file system on storage lun 
    filesystem: fstype=xfs dev=/dev/mapper/mpath* 

我試圖匹配mpath後的任何單個字符,但*似乎不起作用。

回答

3

通配符不會在那裏工作。您需要在額外的任務中或者從設置模塊中獲取這些信息。

實施例:

- command: ls /dev/mapper/mpath* 
    register: mapper 
- filesystem: fstype=xfs dev="{{ mapper.stdout_lines[0] }}" 

沒有測試上述但那是一般的想法。

+1

這樣做,謝謝 – Deano

+0

對於誰來說,這是一個非常討厭的和不專業的行爲,downvote完全工作的接受答案,沒有任何解釋。 – Wtower

+0

然後這裏出現你的解釋。無論是工作解決方案還是接受的解決方案本身都不是一個好答案。這個解決方案需要額外的任務,在這種情況下,執行時間加倍。由於有一種方法可以完成一項任務,因此這可能是一個可行的解決方案,但不是最好的。投票是反映這一點。 – udondan