mirror of
https://github.com/ansible-collections/ansible.posix.git
synced 2026-01-12 07:35:31 +01:00
* Add a stat task for almost every filesize tasks and check results (size) consistency. * Check that cmd result is always the same, in check mode or not. * Check consistency of other returned results (size_diff & filesize.bytes). add DOCUMENTATION.seealso section fix docstrings coding style (tenses, typos...) add changelog fragment (placeholder)
93 lines
2.5 KiB
YAML
93 lines
2.5 KiB
YAML
---
|
|
# Check that the module works with symlinks, as expected, i.e. as dd does:
|
|
# follow symlinks.
|
|
|
|
- name: Ensure the test file is absent
|
|
file:
|
|
path: "{{ filesize_testfile }}"
|
|
state: absent
|
|
|
|
- name: Create a broken symlink in the same directory
|
|
file:
|
|
src: "{{ filesize_testfile | basename }}"
|
|
dest: "{{ filesize_testlink }}"
|
|
state: link
|
|
force: yes
|
|
follow: no
|
|
|
|
|
|
|
|
- name: Create a file with a size of 512 kB (512000 bytes) (check mode)
|
|
filesize:
|
|
path: "{{ filesize_testlink }}"
|
|
size: "512 kB"
|
|
register: filesize_test_symlink_01
|
|
check_mode: yes
|
|
|
|
- name: Create a file with a size of 512 kB (512000 bytes)
|
|
filesize:
|
|
path: "{{ filesize_testlink }}"
|
|
size: "512 kB"
|
|
register: filesize_test_symlink_02
|
|
|
|
- name: Stat the resulting file (not the symlink)
|
|
stat:
|
|
path: "{{ filesize_test_symlink_02.path }}"
|
|
register: filesize_stat_symlink_02
|
|
|
|
|
|
- name: Create a file with a size of 500 KiB (512000 bytes) (check mode, idempotency)
|
|
filesize:
|
|
path: "{{ filesize_testlink }}"
|
|
size: "500 KiB"
|
|
register: filesize_test_symlink_03
|
|
check_mode: yes
|
|
|
|
- name: Create a file with a size of 500 KiB (512000 bytes) (idempotency)
|
|
filesize:
|
|
path: "{{ filesize_testlink }}"
|
|
size: "500 KiB"
|
|
register: filesize_test_symlink_04
|
|
|
|
- name: Stat the file again (should remain the same)
|
|
stat:
|
|
path: "{{ filesize_test_symlink_04.path }}"
|
|
register: filesize_stat_symlink_04
|
|
|
|
|
|
- name: Assert that results are as expected
|
|
assert:
|
|
that:
|
|
- filesize_test_symlink_01 is changed
|
|
- filesize_test_symlink_02 is changed
|
|
- filesize_test_symlink_03 is not changed
|
|
- filesize_test_symlink_04 is not changed
|
|
|
|
- filesize_test_symlink_02.cmd == filesize_test_symlink_01.cmd
|
|
- filesize_test_symlink_03.cmd is undefined
|
|
- filesize_test_symlink_04.cmd is undefined
|
|
|
|
- filesize_test_symlink_01.state is undefined
|
|
- filesize_test_symlink_02.state in ["file"]
|
|
- filesize_test_symlink_01.size is undefined
|
|
- filesize_test_symlink_02.size == 512000
|
|
- filesize_test_symlink_03.size == 512000
|
|
- filesize_test_symlink_04.size == 512000
|
|
|
|
- filesize_stat_symlink_02.stat.size == 512000
|
|
- filesize_stat_symlink_04.stat.size == 512000
|
|
|
|
- filesize_test_symlink_04.path == filesize_test_symlink_02.path
|
|
- filesize_test_symlink_04.path != filesize_testlink
|
|
|
|
|
|
|
|
- name: Remove test file
|
|
file:
|
|
path: "{{ filesize_testfile }}"
|
|
state: absent
|
|
|
|
- name: Remove test link
|
|
file:
|
|
path: "{{ filesize_testlink }}"
|
|
state: absent
|