You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/blockinfile/tasks/prepend_newline.yml

119 lines
4.1 KiB
YAML

- name: Create prepend_newline test file
copy:
dest: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
content: |
line1
line2
line3
- name: add content to file prepending a new line at the beginning of the file
blockinfile:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
prepend_newline: true
insertbefore: "line1"
block: |
line0.5
register: insert_prepending_a_new_line_at_the_beginning_of_the_file
- name: get file content after adding content prepending a new line at the beginning of the file
stat:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
register: prepended_a_new_line_at_the_beginning_of_the_file
- name: check content is the expected one after prepending a new line at the beginning of the file
assert:
that:
- insert_prepending_a_new_line_at_the_beginning_of_the_file is changed
- prepended_a_new_line_at_the_beginning_of_the_file.stat.checksum == "bfd32c880bbfadd1983c67836c46bf8ed9d50343"
- name: add content to file prepending a new line
blockinfile:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
prepend_newline: true
marker: "#{mark} WRAPPED TEXT"
insertafter: "line1"
block: |
line1.5
register: insert_prepending_a_new_line
- name: add content to file prepending a new line (again)
blockinfile:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
prepend_newline: true
marker: "#{mark} WRAPPED TEXT"
insertafter: "line1"
block: |
line1.5
register: insert_prepending_a_new_line_again
- name: get file content after adding content prepending a new line
stat:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
register: prepended_a_new_line
- name: check content is the expected one after inserting content prepending a new line
assert:
that:
- insert_prepending_a_new_line is changed
- insert_prepending_a_new_line_again is not changed
- prepended_a_new_line.stat.checksum == "d5b8b42690f4a38b9a040adc3240a6f81ad5f8ee"
- name: add content to file without prepending a new line
blockinfile:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
marker: "#{mark} UNWRAPPED TEXT"
insertafter: "line3"
block: |
line3.5
register: insert_without_prepending_new_line
- name: get file content after adding content without prepending a new line
stat:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
register: without_prepending_new_line
- name: check content is the expected one after inserting without prepending a new line
assert:
that:
- insert_without_prepending_new_line is changed
- without_prepending_new_line.stat.checksum == "ad06200e7ee5b22b7eff4c57075b42d038eaffb6"
- name: prepend a new line to existing block
blockinfile:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
prepend_newline: true
marker: "#{mark} UNWRAPPED TEXT"
insertafter: "line3"
block: |
line3.5
register: prepend_new_line_to_existing_block
- name: get file content after prepending a new line to an existing block
stat:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
register: new_line_prepended
- name: check content is the expected one after prepending a new line to an existing block
assert:
that:
- prepend_new_line_to_existing_block is changed
- new_line_prepended.stat.checksum == "f2dd48160fb3c7c8e02d292666a1a3f08503f6bf"
- name: Removing a block with prepend_newline set to true does not prepend another line
blockinfile:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
prepend_newline: true
marker: "#{mark} UNWRAPPED TEXT"
state: absent
register: remove_block_prepending_new_line
- name: get file content after removing existing block prepending new line
stat:
path: "{{ remote_tmp_dir_test }}/prepend_newline.txt"
register: removed_block_prepending_new_line
- name: check content is the expected one after removing a block prepending a new line
assert:
that:
- remove_block_prepending_new_line is changed
- removed_block_prepending_new_line.stat.checksum == "c97c3da7d607acfd5d786fbb81f3d93d867c914a"