Расшифровка файлов безопасного хранилища перед rsyncing

Я зашифровал кучу файлов (сертификатов) с помощью следующего скрипта

for i in $(find . -type f); do ansible-vault encrypt $i  --vault-password-file ~/.vault && echo $i encrypted ; done

Во время rsyncing я запускаю что-то вроде этого

- name: Copy letsencrypt files 
  synchronize:
   src: "{{ path }}/letsencrypt/"
   dest: /etc/letsencrypt/
   rsync_path: "sudo rsync"
   rsync_opts:
    - "--delete"
    - "--checksum"
    - "-a"
  notify:
   - Reload Nginx

Проблема, с которой я столкнулся, заключается в том, что файлы, которые были перемещены, все еще оставались зашифрованными. Я думал, что ansible достаточно умен, чтобы определить, было ли оно зашифровано, и расшифровать, как я делаю здесь.

- name: Copy deploy private key
  copy:
    content: "{{ private_key_content }}"
    dest: "/home/deploy/.ssh/id_rsa"
    owner: deploy
    group: deploy
    mode: 0600
  no_log: true

Вернемся к предыдущему вопросу: как убедиться, что файлы в папке/файлах расшифрованы перед rsyncing?

Изменить:

Я попытался использовать модуль копирования, поскольку он поддерживает шифрование, но модуль, похоже, зависает. Заметил некоторые проблемы с модулем копирования для каталогов на ansible github, и я вернулся к синхронизации.

Я также попробовал подход with_fileglob, но он сглаживает структуру каталогов.

Редактировать 2:

У меня есть шифрование, дешифрование для работы с модулем копирования, но оно ужасно медленное.


person Quintin Par    schedule 04.09.2018    source источник


Ответы (1)


Проблема уже существует https://github.com/ansible/ansible/issues/45161 на сайте ansible открываю и вывод такой:

Synchronize is a wrapper around rsync, I doubt that you can hook into the
process like that. You might want to implement a custom module doing this
or use something, which supports it.
person JGK    schedule 10.09.2018