The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Запрет копирования файлов в Ansible, если нет dest-директории"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Системное и пользовательское ПО / Linux)
Изначальное сообщение [ Отслеживать ]

"Запрет копирования файлов в Ansible, если нет dest-директории"  +/
Сообщение от xintrea (??), 25-Май-20, 13:08 
Мне нужно скопировать файл в несколько директорий по списку, но только в те директории, которые реально существуют на диске.

Я пытаюсь сделать через when:


  - name: Копирование индексной страницы во все каталоги документации
    copy:
      src:  "{{ gitReposPath }}/doxygen_documentation/idk2/html/rootindex.html"
      dest: "{{ gitReposPath }}/doxygen_documentation/{{ item[gitTable_DirectoryName] }}/html/rootindex.html"
      remote_src: yes
    when: "{{ gitReposPath }}/doxygen_documentation/{{ item[gitTable_DirectoryName] }}/html/" | is_dir
    with_items:
    - "{{ gitRepos }}"

Но когда добавляю строку с when, то появляется ошибка:

ERROR! Syntax Error while loading YAML.
  did not find expected comment or line break

The error appears to be in '/home/xi/work/develop/cpp/surfProjects/iksProjects/iks_ansible_script/level0002-iksCdBuild/step0180-generateDoc.plb.yml': line 51, column 97, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:

      remote_src: yes
    when: "{{ gitReposPath }}/doxygen_documentation/{{ item[gitTable_DirectoryName] }}/html/" | is_dir
                                                                                                ^ here
We could be wrong, but this one looks like it might be an issue with
missing quotes. Always quote template expression brackets when they
start a value. For instance:

    with_items:
      - {{ foo }}

Should be written as:

    with_items:
      - "{{ foo }}"


Как еще можно сделать копирование? Да, я знаю что можно отключить ошибку failed_when: false, но так делать не хотелось бы.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Запрет копирования файлов в Ansible, если нет dest-директории"  +/
Сообщение от ALex_hha (ok), 27-Май-20, 17:47 
Как выглядит gitRepos ?
Ответить | Правка | Наверх | Cообщить модератору

2. "Запрет копирования файлов в Ansible, если нет dest-директории"  +/
Сообщение от ALex_hha (ok), 27-Май-20, 18:13 
Если я правильно понял задачу, то как то так

- name: Копирование индексной страницы во все каталоги документации
  copy:
    src:  "{{ gitReposPath }}/doxygen_documentation/idk2/html/rootindex.html"
    dest: "{{ gitReposPath }}/doxygen_documentation/{{ item['gitTable_DirectoryName'] }}/html/rootindex.html"
    remote_src: yes
  when: (gitReposPath + "/doxygen_documentation/" + item['gitTable_DirectoryName'] + "/html/") is directory
  loop:
    - "{{ gitRepos }}"


Только не совсем понятно, откуда у словаря который передается в loop вдруг появился атрибут - item[gitTable_DirectoryName] ?

Ответить | Правка | Наверх | Cообщить модератору

3. "Запрет копирования файлов в Ansible, если нет dest-директории"  +/
Сообщение от Аноним (3), 29-Май-20, 16:18 
> Как выглядит gitRepos ?

по мне так не очень https://www.opennet.ru/openforum/vsluhforumID1/97576.html

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру