diff options
author | Matt Clay <matt@mystile.com> | 2019-01-25 04:25:06 +0100 |
---|---|---|
committer | Matt Clay <matt@mystile.com> | 2019-01-25 04:57:04 +0100 |
commit | d2a7cc0b9f835d972941168d5c49e398c65d88a9 (patch) | |
tree | 4f92f74e1072b6d7f9abd931699b620eeff35944 /test/integration/targets/fetch | |
parent | mso_contract_filter: Improve logic (#51315) (diff) | |
download | ansible-d2a7cc0b9f835d972941168d5c49e398c65d88a9.tar.xz ansible-d2a7cc0b9f835d972941168d5c49e398c65d88a9.zip |
Fix integration tests to support remote hosts.
Diffstat (limited to 'test/integration/targets/fetch')
-rw-r--r-- | test/integration/targets/fetch/meta/main.yml | 1 | ||||
-rw-r--r-- | test/integration/targets/fetch/tasks/main.yml | 51 |
2 files changed, 22 insertions, 30 deletions
diff --git a/test/integration/targets/fetch/meta/main.yml b/test/integration/targets/fetch/meta/main.yml index 07faa21776..cb6005d042 100644 --- a/test/integration/targets/fetch/meta/main.yml +++ b/test/integration/targets/fetch/meta/main.yml @@ -1,2 +1,3 @@ dependencies: - prepare_tests + - setup_remote_tmp_dir diff --git a/test/integration/targets/fetch/tasks/main.yml b/test/integration/targets/fetch/tasks/main.yml index d7ea3ea947..af213698af 100644 --- a/test/integration/targets/fetch/tasks/main.yml +++ b/test/integration/targets/fetch/tasks/main.yml @@ -17,10 +17,10 @@ # along with Ansible. If not, see <http://www.gnu.org/licenses/>. - name: create a file that we can use to fetch - copy: content="test" dest={{ output_dir }}/orig + copy: content="test" dest={{ remote_tmp_dir }}/orig - name: fetch the motd - fetch: src={{ output_dir }}/orig dest={{ output_dir }}/fetched + fetch: src={{ remote_tmp_dir }}/orig dest={{ output_dir }}/fetched register: fetched - debug: var=fetched @@ -31,22 +31,14 @@ - 'fetched["changed"] == True' - 'fetched["checksum"] == "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"' - 'fetched["remote_checksum"] == "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"' + - 'lookup("file", output_dir + "/fetched/" + inventory_hostname + remote_tmp_dir + "/orig") == "test"' # TODO: check the become and non-become forms of fetch because in one form we'll do # the get method of the connection plugin and in the become case we'll use the # fetch module. -- name: diff what we fetched with the original file - shell: diff {{ output_dir }}/orig {{ output_dir }}/fetched/{{inventory_hostname}}{{ output_dir | expanduser }}/orig - register: diff - -- name: check the diff to make sure they are the same - assert: - that: - 'diff.stdout == ""' - - name: fetch a second time to show idempotence - fetch: src={{ output_dir }}/orig dest={{ output_dir }}/fetched + fetch: src={{ remote_tmp_dir }}/orig dest={{ output_dir }}/fetched register: fetched - name: Assert that the file was not fetched the second time @@ -56,7 +48,7 @@ - 'fetched["checksum"] == "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"' - name: attempt to fetch a non-existent file - do not fail on missing - fetch: src={{ output_dir }}/doesnotexist dest={{ output_dir }}/fetched fail_on_missing=False + fetch: src={{ remote_tmp_dir }}/doesnotexist dest={{ output_dir }}/fetched fail_on_missing=False register: fetch_missing_nofail - name: check fetch missing no fail result @@ -66,7 +58,7 @@ - "fetch_missing_nofail is not changed" - name: attempt to fetch a non-existent file - fail on missing - fetch: src={{ output_dir }}/doesnotexist dest={{ output_dir }}/fetched fail_on_missing=yes + fetch: src={{ remote_tmp_dir }}/doesnotexist dest={{ output_dir }}/fetched fail_on_missing=yes register: fetch_missing ignore_errors: true @@ -78,7 +70,7 @@ - "fetch_missing is not changed" - name: attempt to fetch a non-existent file - fail on missing implicit - fetch: src={{ output_dir }}/doesnotexist dest={{ output_dir }}/fetched + fetch: src={{ remote_tmp_dir }}/doesnotexist dest={{ output_dir }}/fetched register: fetch_missing_implicit ignore_errors: true @@ -90,7 +82,7 @@ - "fetch_missing_implicit is not changed" - name: attempt to fetch a directory - should not fail but return a message - fetch: src={{ output_dir }} dest={{ output_dir }}/somedir fail_on_missing=False + fetch: src={{ remote_tmp_dir }} dest={{ output_dir }}/somedir fail_on_missing=False register: fetch_dir - name: check fetch directory result @@ -100,7 +92,7 @@ - "fetch_dir.msg" - name: attempt to fetch a directory - should fail - fetch: src={{ output_dir }} dest={{ output_dir }}/somedir fail_on_missing=True + fetch: src={{ remote_tmp_dir }} dest={{ output_dir }}/somedir fail_on_missing=True register: failed_fetch_dir ignore_errors: true @@ -112,32 +104,31 @@ - name: create symlink to a file that we can fetch file: - path: "{{ output_dir }}/link" - src: "{{ output_dir }}/orig" + path: "{{ remote_tmp_dir }}/link" + src: "{{ remote_tmp_dir }}/orig" state: "link" - name: fetch the file via a symlink - fetch: src={{ output_dir }}/link dest={{ output_dir }}/fetched-link + fetch: src={{ remote_tmp_dir }}/link dest={{ output_dir }}/fetched-link register: fetched - debug: var=fetched +- name: Assert that we fetched correctly + assert: + that: + - 'fetched["changed"] == True' + - 'fetched["checksum"] == "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"' + - 'fetched["remote_checksum"] == "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"' + - 'lookup("file", output_dir + "/fetched-link/" + inventory_hostname + remote_tmp_dir + "/link") == "test"' + # TODO: check the become and non-become forms of fetch because in one form we'll do # the get method of the connection plugin and in the become case we'll use the # fetch module. -- name: diff what we fetched with the original file - shell: diff {{ output_dir }}/orig {{ output_dir }}/fetched-link/{{inventory_hostname}}{{ output_dir | expanduser }}/link - register: diff - -- name: check the diff to make sure they are the same - assert: - that: - 'diff.stdout == ""' - - name: dest is an existing directory name without trailing slash and flat=yes, should fail fetch: - src: "{{ output_dir }}/orig" + src: "{{ remote_tmp_dir }}/orig" dest: "{{ output_dir }}" flat: yes register: failed_fetch_dest_dir |