--- # Test module with basic parameters. # Create a file, grow it, reduce it to its initial size and check the match # between initial and final checksums. Also check size formats consistency # (as 57001B == 57001 B == 57.001 kB, for example, or 0 block or 0 unit is # zero, etc). - name: Create an empty file (check mode) filesize: path: "{{ filesize_testfile }}" size: "0" register: filesize_test_basic_01 check_mode: yes - name: Create an empty file filesize: path: "{{ filesize_testfile }}" size: "0" register: filesize_test_basic_02 - name: Create an empty file (check mode, idempotency) filesize: path: "{{ filesize_testfile }}" size: "0G" register: filesize_test_basic_03 check_mode: yes - name: Create an empty file (idempotency) filesize: path: "{{ filesize_testfile }}" size: "0G" register: filesize_test_basic_04 - name: Assert that results are as expected assert: that: - filesize_test_basic_01 is changed - filesize_test_basic_02 is changed - filesize_test_basic_03 is not changed - filesize_test_basic_04 is not changed - filesize_test_basic_01.state is undefined - filesize_test_basic_02.state in ["file"] - filesize_test_basic_01.size is undefined - filesize_test_basic_02.size == 0 - filesize_test_basic_03.size == 0 - filesize_test_basic_04.size == 0 - name: Fill the file up to 57kB (57000B) with random data (check mode) filesize: path: "{{ filesize_testfile }}" size: "57kB" source: /dev/urandom register: filesize_test_basic_11 check_mode: yes - name: Fill the file up to 57kB (57000B) with random data filesize: path: "{{ filesize_testfile }}" size: "57kB" source: /dev/urandom register: filesize_test_basic_12 - name: Get checksum of the resulting file stat: path: "{{ filesize_testfile }}" register: filesize_test_basic_stat_00 - name: Store checksum as fact set_fact: filesize_test_checksum: "{{ filesize_test_basic_stat_00.stat.checksum }}" - name: Fill the file up to 57000B (57kB) with random data (check mode, idempotency) filesize: path: "{{ filesize_testfile }}" size: "57000B" source: /dev/urandom register: filesize_test_basic_13 check_mode: yes - name: Fill the file up to 57000B (57kB) with random data (idempotency) filesize: path: "{{ filesize_testfile }}" size: "57000B" source: /dev/urandom register: filesize_test_basic_14 - name: Get checksum of the resulting file stat: path: "{{ filesize_testfile }}" register: filesize_test_basic_stat_01 - name: Assert that results are as expected assert: that: - filesize_test_basic_11 is changed - filesize_test_basic_12 is changed - filesize_test_basic_13 is not changed - filesize_test_basic_14 is not changed - filesize_test_basic_11.filesize.bytes == 57000 - filesize_test_basic_12.filesize.bytes == 57000 - filesize_test_basic_13.filesize.bytes == 57000 - filesize_test_basic_14.filesize.bytes == 57000 - filesize_test_basic_11.size == 0 - filesize_test_basic_12.size == 57000 - filesize_test_basic_13.size == 57000 - filesize_test_basic_14.size == 57000 - filesize_test_basic_stat_01.stat.checksum == filesize_test_checksum - name: Expand the file with 1 byte (57001B) (check mode) filesize: path: "{{ filesize_testfile }}" size: "57001B" register: filesize_test_basic_21 check_mode: yes - name: Expand the file with 1 byte (57001B) filesize: path: "{{ filesize_testfile }}" size: "57001B" register: filesize_test_basic_22 - name: Get checksum of the resulting file stat: path: "{{ filesize_testfile }}" register: filesize_test_basic_stat_02 - name: Expand the file with 1 byte (57.001kB) (check mode, idempotency) filesize: path: "{{ filesize_testfile }}" size: "57.001 kB" register: filesize_test_basic_23 check_mode: yes - name: Expand the file with 1 byte (57.001kB) (idempotency) filesize: path: "{{ filesize_testfile }}" size: "57.001 kB" register: filesize_test_basic_24 - name: Assert that results are as expected assert: that: - filesize_test_basic_21 is changed - filesize_test_basic_22 is changed - filesize_test_basic_23 is not changed - filesize_test_basic_24 is not changed - filesize_test_basic_21.filesize.bytes == 57001 - filesize_test_basic_22.filesize.bytes == 57001 - filesize_test_basic_23.filesize.bytes == 57001 - filesize_test_basic_24.filesize.bytes == 57001 - filesize_test_basic_21.size == 57000 - filesize_test_basic_22.size == 57001 - filesize_test_basic_23.size == 57001 - filesize_test_basic_24.size == 57001 - filesize_test_basic_21.size_diff == 1 - filesize_test_basic_22.size_diff == 1 - filesize_test_basic_23.size_diff == 0 - filesize_test_basic_24.size_diff == 0 - filesize_test_basic_stat_02.stat.checksum != filesize_test_checksum - name: Expand the file up to 2 MiB (2*1024*1024 bytes) (check mode) filesize: path: "{{ filesize_testfile }}" size: "2 MiB" register: filesize_test_basic_31 check_mode: yes - name: Expand the file up to 2 MiB (2*1024*1024 bytes) filesize: path: "{{ filesize_testfile }}" size: "2 MiB" register: filesize_test_basic_32 - name: Expand the file up to 2×1M (2*1024*1024 bytes) (check mode, idempotency) filesize: path: "{{ filesize_testfile }}" size: "2" blocksize: "1M" register: filesize_test_basic_33 check_mode: yes - name: Expand the file up to 2×1M (2*1024*1024 bytes) (idempotency) filesize: path: "{{ filesize_testfile }}" size: "2" blocksize: "1M" register: filesize_test_basic_34 - name: Assert that results are as expected assert: that: - filesize_test_basic_31 is changed - filesize_test_basic_32 is changed - filesize_test_basic_33 is not changed - filesize_test_basic_34 is not changed - filesize_test_basic_31.filesize.bytes == 2*1024**2 - filesize_test_basic_32.filesize.bytes == 2*1024**2 - filesize_test_basic_33.filesize.bytes == 2*1024**2 - filesize_test_basic_34.filesize.bytes == 2*1024**2 - filesize_test_basic_31.size == 57001 - filesize_test_basic_32.size == 2*1024**2 - filesize_test_basic_33.size == 2*1024**2 - filesize_test_basic_34.size == 2*1024**2 - filesize_test_basic_31.size_diff == 2*1024**2 - 57001 - filesize_test_basic_32.size_diff == 2*1024**2 - 57001 - filesize_test_basic_33.size_diff == 0 - filesize_test_basic_34.size_diff == 0 - name: Truncate the file to 57kB (57000B) (check mode) filesize: path: "{{ filesize_testfile }}" size: "57kB" register: filesize_test_basic_41 check_mode: yes - name: Truncate the file to 57kB (57000B) filesize: path: "{{ filesize_testfile }}" size: "57kB" register: filesize_test_basic_42 - name: Get checksum of the resulting file stat: path: "{{ filesize_testfile }}" register: filesize_test_basic_stat_03 - name: Truncate the file to 57000B (57kB) (check mode, idempotency) filesize: path: "{{ filesize_testfile }}" size: "57000 B" register: filesize_test_basic_43 check_mode: yes - name: Truncate the file to 57000B (57kB) (idempotency) filesize: path: "{{ filesize_testfile }}" size: "57000 B" register: filesize_test_basic_44 - name: Get checksum of the resulting file stat: path: "{{ filesize_testfile }}" register: filesize_test_basic_stat_04 - name: Assert that results are as expected assert: that: - filesize_test_basic_41 is changed - filesize_test_basic_42 is changed - filesize_test_basic_43 is not changed - filesize_test_basic_44 is not changed - filesize_test_basic_41.filesize.bytes == 57000 - filesize_test_basic_42.filesize.bytes == 57000 - filesize_test_basic_43.filesize.bytes == 57000 - filesize_test_basic_44.filesize.bytes == 57000 - filesize_test_basic_41.size == filesize_test_basic_31.filesize.bytes - filesize_test_basic_42.size == 57000 - filesize_test_basic_43.size == 57000 - filesize_test_basic_44.size == 57000 - filesize_test_basic_stat_03.stat.checksum == filesize_test_checksum - filesize_test_basic_stat_04.stat.checksum == filesize_test_checksum - name: Remove test file file: path: "{{ filesize_testfile }}" state: absent