Merge "Use httpd in Zaqar docker service"
[apex-tripleo-heat-templates.git] / docker / services / nova-libvirt.yaml
index ed54f3d..15cee59 100644 (file)
@@ -14,7 +14,7 @@ parameters:
     type: string
   # we configure libvirt via the nova-compute container due to coupling
   # in the puppet modules
-  DockerNovaComputeImage:
+  DockerNovaConfigImage:
     description: image
     default: 'centos-binary-nova-compute:latest'
     type: string
@@ -50,10 +50,6 @@ outputs:
       config_settings: {get_attr: [NovaLibvirtBase, role_data, config_settings]}
       step_config: &step_config
         get_attr: [NovaLibvirtBase, role_data, step_config]
-      docker_image: &libvirt_image
-        list_join:
-        - '/'
-        - [ {get_param: DockerNamespace}, {get_param: DockerLibvirtImage} ]
       puppet_config:
         config_volume: nova_libvirt
         puppet_tags: nova_config
@@ -61,35 +57,45 @@ outputs:
         config_image:
           list_join:
           - '/'
-          - [ {get_param: DockerNamespace}, {get_param: DockerNovaComputeImage} ]
+          - [ {get_param: DockerNamespace}, {get_param: DockerNovaConfigImage} ]
       kolla_config:
         /var/lib/kolla/config_files/nova-libvirt.json:
-           command: /usr/sbin/libvirtd --config /etc/libvirt/libvirtd.conf
-           config_files:
-           - dest: /etc/libvirt/libvirtd.conf
-             owner: root
-             perm: '0644'
-             source: /var/lib/kolla/config_files/src/etc/libvirt/libvirtd.conf
+          command: /usr/sbin/libvirtd --config /etc/libvirt/libvirtd.conf
       docker_config:
         step_3:
           nova_libvirt:
-            image: *libvirt_image
+            image:
+              list_join:
+              - '/'
+              - [ {get_param: DockerNamespace}, {get_param: DockerLibvirtImage} ]
             net: host
             pid: host
             privileged: true
             restart: always
             volumes:
               - /var/lib/kolla/config_files/nova-libvirt.json:/var/lib/kolla/config_files/config.json:ro
-              - /var/lib/config-data/nova_libvirt:/var/lib/kolla/config_files/src:ro
-              - /dev:/dev
+              - /var/lib/config-data/nova_libvirt/etc/libvirt/:/etc/libvirt/:ro
               - /etc/localtime:/etc/localtime:ro
               - /lib/modules:/lib/modules:ro
+              - /dev:/dev
               - /run:/run
               - /sys/fs/cgroup:/sys/fs/cgroup
               - /var/lib/nova:/var/lib/nova
               # Needed to use host's virtlogd
               - /var/run/libvirt:/var/run/libvirt
-              - libvirtd:/var/lib/libvirt
-              - nova_libvirt_qemu:/etc/libvirt/qemu
+              - /var/lib/libvirt:/var/lib/libvirt
+              - /etc/libvirt/qemu:/etc/libvirt/qemu
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
+      host_prep_tasks:
+        - name: create libvirt persistent data directories
+          file:
+            path: "{{ item }}"
+            state: directory
+          with_items:
+            - /etc/libvirt/qemu
+            - /var/lib/libvirt
+      upgrade_tasks:
+        - name: Stop and disable libvirtd service
+          tags: step2
+          service: name=libvirtd state=stopped enabled=no