Add heat api container to run cron purge_deleted
authorDan Prince <dprince@redhat.com>
Fri, 21 Jul 2017 00:03:18 +0000 (20:03 -0400)
committerDan Prince <dprince@redhat.com>
Fri, 21 Jul 2017 00:17:26 +0000 (20:17 -0400)
The purge-deleted cron job is created by puppet in
/var/spool/cron/heat. This creates a cron container
to run that in an environment where it has access to the
heat.conf and heat-manage binaries.

Change-Id: Ib9fe8e4f6dbd41021df7cf152fd18569c189d2e2
Partial-bug: #1701254

docker/services/heat-api.yaml

index d09230f..ba8fc75 100644 (file)
@@ -90,6 +90,17 @@ outputs:
             - path: /var/log/heat
               owner: heat:heat
               recurse: true
+        /var/lib/kolla/config_files/heat_api_cron.json:
+          command: /usr/sbin/crond -n
+          config_files:
+            - source: "/var/lib/kolla/config_files/src/*"
+              dest: "/"
+              merge: true
+              preserve_properties: true
+          permissions:
+            - path: /var/log/heat
+              owner: heat:heat
+              recurse: true
       docker_config:
         step_4:
           heat_api:
@@ -119,6 +130,20 @@ outputs:
                       - ''
             environment:
               - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
+          heat_api_cron:
+            image: {get_param: DockerHeatApiImage}
+            net: host
+            privileged: false
+            restart: always
+            volumes:
+              list_concat:
+                - {get_attr: [ContainersCommon, volumes]}
+                -
+                  - /var/lib/kolla/config_files/heat_api_cron.json:/var/lib/kolla/config_files/config.json:ro
+                  - /var/lib/config-data/puppet-generated/heat_api/:/var/lib/kolla/config_files/src:ro
+                  - /var/log/containers/heat:/var/log/heat
+            environment:
+              - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
       host_prep_tasks:
         - name: create persistent logs directory
           file: