2017-09-27 1 views
0

j'ai un PlayBookEst-il possible d'utiliser une variable dans le chemin avec le module ligné lineinfile?

--- 
- hosts: 127.0.0.1 
    connection: local 

    vars: 
    WORK_DIR: /somefolder 

    tasks: 

    - debug: 
     msg: "{{ WORK_DIR }}" 

    - lineinfile: 
     path: /somefolder/some.file 
     regexp: '"display_name":' 
     line: ' "display_name": "another_name",' 

fonctionne très bien et j'ai un débogage

ok: [127.0.0.1] => { 
    "msg": "/somefolder" 
} 

mais lorsque je tente d'utiliser la variable dans le chemin comme


- hosts: 127.0.0.1 
    connection: local 

    vars: 
    WORK_DIR: /somefolder 

    tasks: 

    - debug: 
     msg: "{{ WORK_DIR }}" 

    - lineinfile: 
     path: "{{ WORK_DIR }}"/some.file 
     regexp: '"display_name":' 
     line: ' "display_name": "another_name",' 

il y a une erreur

- lineinfile: 
    path: "{{ WORK_DIR }}"/some.file 
         ^here 

La question est pourquoi? Est-ce un bug ou une fonctionnalité ou autre chose?

Répondre

2

Les citations sont incorrectes. Vous devez utiliser path: "{{ WORK_DIR }}/some.file".