Ansible - переменная пути Windows - PullRequest
0 голосов
/ 07 мая 2019

Можно ли использовать переменные и строку вместе?Например, я хотел бы определить мой путь и другие параметры, объединяющие переменные и строку?

#Add Directory
- name: Add Directory
win_file: 
      path: "{{directory_path}}\AppName-{{env}}"
      state: directory

#Add IUSR to directory path
- name: ADD IUSR
win_acl:
      path: "{{directory_path}}\AppName-{{env}}"
      user: IUSR
      rights: Read
      type: allow
      state: present
      propagation: 'NoPropagateInherit'

#Add website
- name: "{{env}} Add App Name"
win_iis_website:
      name: "AppName-{{env}}"
      state: started
      port: 80
      ip: "{{serverip}}"
      hostname: "appname-{{env}}.com"
      application_pool: "{{application_pool4}}"
      physical_path: "{{directory_path}}\AppName-{{env}}"
register: website

Конечно, есть простой ответ, но не могу найти его в минуту

1 Ответ

2 голосов
/ 07 мая 2019

Объявления path должны быть заключены в одинарные кавычки (').Тогда обратная косая черта (\) не будет интерпретироваться как escape-символ.См. Gotchas

Разница между одинарными и двойными кавычками заключается в том, что в двойных кавычках можно использовать экранированные символы

path: '{{ directory_path }}\AppName-{{ env }}'

Отступ откод неверный.Правильный синтаксис ниже:

tasks:
    #Add Directory
  - name: Add Directory
    win_file:
      path: '{{ directory_path }}\AppName-{{ env }}'
      state: directory
    #Add IUSR to directory path
  - name: ADD IUSR
    win_acl:
      path: '{{ directory_path }}\AppName-{{ env }}'
      user: IUSR
      rights: Read
      type: allow
      state: present
      propagation: 'NoPropagateInherit'
    #Add website
  - name: "{{ env }} Add App Name"
    win_iis_website:
      name: "AppName-{{ env }}"
      state: started
      port: 80
      ip: "{{ serverip }}"
      hostname: "appname-{{ env }}.com"
      application_pool: "{{ application_pool4 }}"
      physical_path: '{{ directory_path }}\AppName-{{ env }}'
    register: website

Хорошая идея - протестировать playbooks с ansible-lint .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...