Leverage kolla config_files to copy config into containers
authorMartin André <m.andre@redhat.com>
Mon, 26 Jun 2017 13:33:09 +0000 (15:33 +0200)
committerTuan Luong-Anh <tuanla@vn.fujitsu.com>
Wed, 12 Jul 2017 09:56:56 +0000 (09:56 +0000)
This solves a problem with bind-mounts when the containers are holding
files descriptors open.

At the same time this makes the template more robust to puppet changes
since new config files will be available in the containers without
needing to update the templates.

Closes-Bug: #1698323
Change-Id: I857c94ba5f7f064d7c58df621ec5d477654b9166
Depends-On: I78dcec741a941dc21adba33ba33a6dc6ff1d217c

manifests/profile/pacemaker/cinder/backup_bundle.pp
manifests/profile/pacemaker/cinder/volume_bundle.pp
manifests/profile/pacemaker/database/mysql_bundle.pp
manifests/profile/pacemaker/database/redis_bundle.pp
manifests/profile/pacemaker/haproxy_bundle.pp
manifests/profile/pacemaker/rabbitmq_bundle.pp

index a5e1a9b..2a82c3e 100644 (file)
@@ -85,13 +85,8 @@ class tripleo::profile::pacemaker::cinder::backup_bundle (
             'options'    => 'ro',
           },
           'cinder-backup-cfg-data'       => {
-            'source-dir' => '/var/lib/config-data/cinder/etc/cinder',
-            'target-dir' => '/etc/cinder',
-            'options'    => 'ro',
-          },
-          'cinder-backup-cfg-ceph'       => {
-            'source-dir' => '/var/lib/config-data/cinder/etc/ceph',
-            'target-dir' => '/etc/ceph',
+            'source-dir' => '/var/lib/config-data/puppet-generated/cinder/',
+            'target-dir' => '/var/lib/kolla/config_files/src',
             'options'    => 'ro',
           },
           'cinder-backup-hosts'          => {
index 39199a5..8d58036 100644 (file)
@@ -85,8 +85,8 @@ class tripleo::profile::pacemaker::cinder::volume_bundle (
             'options'    => 'ro',
           },
           'cinder-volume-cfg-data'       => {
-            'source-dir' => '/var/lib/config-data/cinder/etc/cinder',
-            'target-dir' => '/etc/cinder',
+            'source-dir' => '/var/lib/config-data/puppet-generated/cinder/',
+            'target-dir' => '/var/lib/kolla/config_files/src',
             'options'    => 'ro',
           },
           'cinder-volume-hosts'          => {
index 56e9e28..a80b2de 100644 (file)
@@ -215,7 +215,7 @@ MYSQL_HOST=localhost\n",
             'options'    => 'ro',
           },
           'mysql-cfg-data'                => {
-            'source-dir' => '/var/lib/config-data/mysql',
+            'source-dir' => '/var/lib/config-data/puppet-generated/mysql/',
             'target-dir' => '/var/lib/kolla/config_files/src',
             'options'    => 'ro',
           },
index dd090d7..ea153a8 100644 (file)
@@ -83,77 +83,62 @@ class tripleo::profile::pacemaker::database::redis_bundle (
         run_command       => '/bin/bash /usr/local/bin/kolla_start',
         network           => "control-port=${redis_docker_control_port}",
         storage_maps      => {
-          'redis-cfg-files'                  => {
+          'redis-cfg-files'               => {
             'source-dir' => '/var/lib/kolla/config_files/redis.json',
             'target-dir' => '/var/lib/kolla/config_files/config.json',
             'options'    => 'ro',
           },
-          'redis-cfg-data-redis'             => {
-            'source-dir' => '/var/lib/config-data/redis/etc/redis',
-            'target-dir' => '/etc/redis',
+          'redis-cfg-data-redis'          => {
+            'source-dir' => '/var/lib/config-data/puppet-generated/redis/',
+            'target-dir' => '/var/lib/kolla/config_files/src',
             'options'    => 'ro',
           },
-          'redis-cfg-data-redis-conf'        => {
-            'source-dir' => '/var/lib/config-data/redis/etc/redis.conf',
-            'target-dir' => '/etc/redis.conf',
-            'options'    => 'ro',
-          },
-          'redis-cfg-data-redis-conf-puppet' => {
-            'source-dir' => '/var/lib/config-data/redis/etc/redis.conf.puppet',
-            'target-dir' => '/etc/redis.conf.puppet',
-            'options'    => 'ro',
-          },
-          'redis-cfg-data-redis-sentinel'    => {
-            'source-dir' => '/var/lib/config-data/redis/etc/redis-sentinel.conf',
-            'target-dir' => '/etc/redis-sentinel.conf',
-            'options'    => 'ro',
-          },
-          'redis-hosts'                      => {
+          'redis-hosts'                   => {
             'source-dir' => '/etc/hosts',
             'target-dir' => '/etc/hosts',
             'options'    => 'ro',
           },
-          'redis-localtime'                  => {
+          'redis-localtime'               => {
             'source-dir' => '/etc/localtime',
             'target-dir' => '/etc/localtime',
             'options'    => 'ro',
           },
-          'redis-lib'                        => {
+          'redis-lib'                     => {
             'source-dir' => '/var/lib/redis',
             'target-dir' => '/var/lib/redis',
             'options'    => 'rw',
           },
-          'redis-log'                        => {
+          'redis-log'                     => {
             'source-dir' => '/var/log/redis',
             'target-dir' => '/var/log/redis',
             'options'    => 'rw',
           },
-          'redis-run'                        => {
+          'redis-run'                     => {
             'source-dir' => '/var/run/redis',
             'target-dir' => '/var/run/redis',
             'options'    => 'rw',
           },
-          'redis-pki-extracted'              => {
+          'redis-pki-extracted'           => {
             'source-dir' => '/etc/pki/ca-trust/extracted',
             'target-dir' => '/etc/pki/ca-trust/extracted',
             'options'    => 'ro',
           },
-          'redis-pki-ca-bundle-crt'          => {
+          'redis-pki-ca-bundle-crt'       => {
             'source-dir' => '/etc/pki/tls/certs/ca-bundle.crt',
             'target-dir' => '/etc/pki/tls/certs/ca-bundle.crt',
             'options'    => 'ro',
           },
-          'redis-pki-ca-bundle-trust-crt'    => {
+          'redis-pki-ca-bundle-trust-crt' => {
             'source-dir' => '/etc/pki/tls/certs/ca-bundle.trust.crt',
             'target-dir' => '/etc/pki/tls/certs/ca-bundle.trust.crt',
             'options'    => 'ro',
           },
-          'redis-pki-cert'                   => {
+          'redis-pki-cert'                => {
             'source-dir' => '/etc/pki/tls/cert.pem',
             'target-dir' => '/etc/pki/tls/cert.pem',
             'options'    => 'ro',
           },
-          'redis-dev-log'                    => {
+          'redis-dev-log'                 => {
             'source-dir' => '/dev/log',
             'target-dir' => '/dev/log',
             'options'    => 'rw',
index 9c1bdf3..0f71b82 100644 (file)
@@ -98,8 +98,8 @@ class tripleo::profile::pacemaker::haproxy_bundle (
             'options'    => 'ro',
           },
           'haproxy-cfg-data'                => {
-            'source-dir' => '/var/lib/config-data/haproxy/etc',
-            'target-dir' => '/etc',
+            'source-dir' => '/var/lib/config-data/puppet-generated/haproxy/',
+            'target-dir' => '/var/lib/kolla/config_files/src',
             'options'    => 'ro',
           },
           'haproxy-hosts'                   => {
index 0a6295c..2f848b4 100644 (file)
@@ -121,8 +121,8 @@ class tripleo::profile::pacemaker::rabbitmq_bundle (
             'options'    => 'ro',
           },
           'rabbitmq-cfg-data'                => {
-            'source-dir' => '/var/lib/config-data/rabbitmq/etc/rabbitmq',
-            'target-dir' => '/etc/rabbitmq',
+            'source-dir' => '/var/lib/config-data/puppet-generated/rabbitmq/',
+            'target-dir' => '/var/lib/kolla/config_files/src',
             'options'    => 'ro',
           },
           'rabbitmq-hosts'                   => {