diff --git a/defaults/main.yml b/defaults/main.yml index 1335d80..c2960e2 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -29,7 +29,6 @@ lxc_container_default_config_list: - "lxc.pts=1024" - "lxc.kmsg=0" - "lxc.hook.autodev=/var/lib/lxc/{{ inventory_hostname }}/autodev" - - "lxc.mount.entry=/openstack/backup/{{ inventory_hostname }} var/backup none defaults,bind,rw 0 0" lxc_container_config_list: [] lxc_container_commands: "" @@ -39,6 +38,10 @@ lxc_container_commands: "" # container_directory: "/opt/mydirectory" lxc_container_bind_mounts: [] +lxc_container_default_bind_mounts: + - host_directory: "/openstack/backup/{{ inventory_hostname }}" + container_directory: "/var/backup" + # Mappings from Ansible reported architecture to distro release architecture lxc_architecture_mapping: x86_64: amd64 diff --git a/tasks/container_create.yml b/tasks/container_create.yml index ec70df2..d9068e2 100644 --- a/tasks/container_create.yml +++ b/tasks/container_create.yml @@ -129,7 +129,7 @@ file: path: "{{ item['host_directory'] }}" state: "directory" - with_items: "{{ lxc_container_bind_mounts }}" + with_items: "{{ lxc_container_default_bind_mounts | union(lxc_container_bind_mounts) }}" delegate_to: "{{ physical_host }}" - name: Ensure container directories exist @@ -137,7 +137,7 @@ name: "{{ inventory_hostname }}" container_command: | [[ ! -d "{{ item['container_directory'] }}" ]] && mkdir -p "{{ item['container_directory'] }}" - with_items: "{{ lxc_container_bind_mounts }}" + with_items: "{{ lxc_container_default_bind_mounts | union(lxc_container_bind_mounts) }}" delegate_to: "{{ physical_host }}" - name: Add bind mount configuration to container @@ -145,7 +145,7 @@ dest: "/var/lib/lxc/{{ inventory_hostname }}/config" line: "lxc.mount.entry = {{ item['host_directory'] }} {{ item['container_directory'].lstrip('/') }} none bind 0 0" backup: "true" - with_items: "{{ lxc_container_bind_mounts }}" + with_items: "{{ lxc_container_default_bind_mounts | union(lxc_container_bind_mounts) }}" delegate_to: "{{ physical_host }}" notify: - Lxc container restart diff --git a/tests/test-containers-functional.yml b/tests/test-containers-functional.yml index 3536ec9..39341e3 100644 --- a/tests/test-containers-functional.yml +++ b/tests/test-containers-functional.yml @@ -53,10 +53,8 @@ - name: Check for the presence of the right bound mount for container2 command: grep "lxc.mount.entry = /openstack/container2/test2 var/log/test2 none bind 0 0" /var/lib/lxc/container2/config - - name: Check for the lack of presence of any bound mount (except the backup bind mount) for container3 - command: grep "lxc.mount.entry = /openstack/container" /var/lib/lxc/container3/config - register: container1_bind_mount - failed_when: container1_bind_mount.rc == 0 + - name: Check for the presence of the default bound mount for container3 + command: grep "lxc.mount.entry = /openstack/backup/container3" /var/lib/lxc/container3/config - name: Check for the bind mount in container1 hosts: container1