pkaramol
pkaramol

Reputation: 19352

Ansible: Archive module does not take into account exclude_path param

I want to archive the following directory:

temp_build_directory: /tmp/mdr-upgrade

Where

$ ls -1 /tmp/mdr-upgrade
ansible
atr
composefiles
data
images
packs
wheelhouse

and the task is:

- name: archive_artifacts.yml --> Archive artifacts
    archive:
      path: "{{ temp_build_directory }}/*"
      dest: "{{ target_tmp_dir }}/{{ artifacts_file_name }}"
      exclude_path: "{{ target_tmp_dir }}/{{ ansible_dir }}"

And ansible_dir: ansible

Tarball ends up always containing the ansible folder.

Why is that?

edit: I am using target_tmp_dir: "/tmp"

Upvotes: 0

Views: 2459

Answers (1)

fernandezcuesta
fernandezcuesta

Reputation: 2448

exclude_path needs an absolute path (see docs). Try again with:

- name: archive_artifacts.yml --> Archive artifacts
    archive:
      path: "{{ temp_build_directory }}/*"
      dest: "{{ target_tmp_dir }}/{{ artifacts_file_name }}"
      exclude_path: "{{ temp_build_directory }}/{{ ansible_dir }}"

Upvotes: 1

Related Questions