|
|
|
# Verify basic operation of the synchronize module.
|
|
|
|
|
|
|
|
- name: integration/action/synchronize.yml
|
|
|
|
hosts: test-targets
|
|
|
|
any_errors_fatal: true
|
|
|
|
vars:
|
|
|
|
ansible_user: mitogen__has_sudo_pubkey
|
|
|
|
ansible_become_pass: has_sudo_pubkey_password
|
|
|
|
ansible_ssh_private_key_file: /tmp/synchronize-action-key
|
|
|
|
|
|
|
|
# https://github.com/ansible/ansible/issues/56629
|
|
|
|
ansible_ssh_pass: ''
|
|
|
|
ansible_password: ''
|
|
|
|
tasks:
|
|
|
|
# must copy git file to set proper file mode.
|
|
|
|
- copy:
|
|
|
|
dest: /tmp/synchronize-action-key
|
|
|
|
src: ../../../data/docker/mitogen__has_sudo_pubkey.key
|
|
|
|
mode: u=rw,go=
|
|
|
|
delegate_to: localhost
|
|
|
|
|
|
|
|
- file:
|
|
|
|
path: /tmp/sync-test
|
|
|
|
state: absent
|
|
|
|
delegate_to: localhost
|
|
|
|
|
|
|
|
- file:
|
|
|
|
path: /tmp/sync-test
|
|
|
|
state: directory
|
|
|
|
delegate_to: localhost
|
|
|
|
|
|
|
|
- copy:
|
|
|
|
dest: /tmp/sync-test/item
|
|
|
|
content: "item!"
|
|
|
|
delegate_to: localhost
|
|
|
|
|
|
|
|
# TODO: https://github.com/dw/mitogen/issues/692
|
|
|
|
# - file:
|
|
|
|
# path: /tmp/sync-test.out
|
|
|
|
# state: absent
|
|
|
|
# become: true
|
|
|
|
|
|
|
|
- synchronize:
|
|
|
|
private_key: /tmp/synchronize-action-key
|
|
|
|
dest: /tmp/sync-test.out
|
|
|
|
src: /tmp/sync-test/
|
|
|
|
|
|
|
|
- slurp:
|
|
|
|
src: /tmp/sync-test.out/item
|
|
|
|
register: out
|
|
|
|
|
|
|
|
- set_fact: outout="{{out.content|b64decode}}"
|
|
|
|
|
|
|
|
- assert:
|
|
|
|
that: outout == "item!"
|
|
|
|
|
|
|
|
- file:
|
|
|
|
path: "{{item}}"
|
|
|
|
state: absent
|
|
|
|
become: true
|
|
|
|
with_items:
|
|
|
|
- /tmp/synchronize-action-key
|
|
|
|
- /tmp/sync-test
|
|
|
|
- /tmp/sync-test.out
|