diff options
Diffstat (limited to 'docker')
-rwxr-xr-x | docker/docker-puppet.py | 14 | ||||
-rw-r--r-- | docker/services/cinder-volume.yaml | 1 | ||||
-rw-r--r-- | docker/services/horizon.yaml | 6 | ||||
-rw-r--r-- | docker/services/nova-compute.yaml | 3 | ||||
-rw-r--r-- | docker/services/nova-ironic.yaml | 2 | ||||
-rw-r--r-- | docker/services/nova-libvirt.yaml | 4 | ||||
-rw-r--r-- | docker/services/nova-migration-target.yaml | 2 |
7 files changed, 24 insertions, 8 deletions
diff --git a/docker/docker-puppet.py b/docker/docker-puppet.py index 533ed07d..d12e0551 100755 --- a/docker/docker-puppet.py +++ b/docker/docker-puppet.py @@ -225,8 +225,14 @@ def mp_puppet_config((config_volume, puppet_tags, manifest, config_image, volume touch /tmp/the_origin_of_time sync + set +e FACTER_hostname=$HOSTNAME FACTER_uuid=docker /usr/bin/puppet apply \ - --color=false --logdest syslog --logdest console $TAGS /etc/config.pp + --detailed-exitcodes --color=false --logdest syslog --logdest console $TAGS /etc/config.pp + rc=$? + set -e + if [ $rc -ne 2 -a $rc -ne 0 ]; then + exit $rc + fi # Disables archiving if [ -z "$NO_ARCHIVE" ]; then @@ -307,7 +313,9 @@ def mp_puppet_config((config_volume, puppet_tags, manifest, config_image, volume subproc = subprocess.Popen(dcmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env) cmd_stdout, cmd_stderr = subproc.communicate() - if subproc.returncode != 0: + # puppet with --detailed-exitcodes will return 0 for success and no changes + # and 2 for success and resource changes. Other numbers are failures + if subproc.returncode not in [0, 2]: log.error('Failed running docker-puppet.py for %s' % config_volume) if cmd_stdout: log.error(cmd_stdout) @@ -355,7 +363,7 @@ returncodes = list(p.map(mp_puppet_config, process_map)) config_volumes = [pm[0] for pm in process_map] success = True for returncode, config_volume in zip(returncodes, config_volumes): - if returncode != 0: + if returncode not in [0, 2]: log.error('ERROR configuring %s' % config_volume) success = False diff --git a/docker/services/cinder-volume.yaml b/docker/services/cinder-volume.yaml index d8a93b13..46873ea8 100644 --- a/docker/services/cinder-volume.yaml +++ b/docker/services/cinder-volume.yaml @@ -125,6 +125,7 @@ outputs: step_4: cinder_volume: image: *cinder_volume_image + ipc: host net: host privileged: true restart: always diff --git a/docker/services/horizon.yaml b/docker/services/horizon.yaml index 2c7d7a74..94fd9eef 100644 --- a/docker/services/horizon.yaml +++ b/docker/services/horizon.yaml @@ -95,6 +95,12 @@ outputs: - path: /var/log/horizon/ owner: apache:apache recurse: true + # NOTE The upstream Kolla Dockerfile sets /etc/openstack-dashboard/ ownership to + # horizon:horizon - the policy.json files need read permissions for the apache user + # FIXME We should consider whether this should be fixed in the Kolla Dockerfile instead + - path: /etc/openstack-dashboard/ + owner: apache:apache + recurse: true # FIXME Apache tries to write a .lock file there - path: /usr/share/openstack-dashboard/openstack_dashboard/local/ owner: apache:apache diff --git a/docker/services/nova-compute.yaml b/docker/services/nova-compute.yaml index 883f438b..b43193ec 100644 --- a/docker/services/nova-compute.yaml +++ b/docker/services/nova-compute.yaml @@ -115,6 +115,7 @@ outputs: step_4: nova_compute: image: &nova_compute_image {get_param: DockerNovaComputeImage} + ipc: host net: host privileged: true user: nova @@ -130,7 +131,7 @@ outputs: - /dev:/dev - /lib/modules:/lib/modules:ro - /run:/run - - /var/lib/nova:/var/lib/nova + - /var/lib/nova:/var/lib/nova:shared - /var/lib/libvirt:/var/lib/libvirt - /var/log/containers/nova:/var/log/nova - /sys/class/net:/sys/class/net diff --git a/docker/services/nova-ironic.yaml b/docker/services/nova-ironic.yaml index 1bed40ec..f41d1979 100644 --- a/docker/services/nova-ironic.yaml +++ b/docker/services/nova-ironic.yaml @@ -109,7 +109,7 @@ outputs: - /var/lib/config-data/puppet-generated/iscsid/:/var/lib/kolla/config_files/src-iscsid:ro - /run:/run - /dev:/dev - - /var/lib/nova/:/var/lib/nova + - /var/lib/nova/:/var/lib/nova:shared - /var/log/containers/nova:/var/log/nova environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS diff --git a/docker/services/nova-libvirt.yaml b/docker/services/nova-libvirt.yaml index df168945..f3fc6336 100644 --- a/docker/services/nova-libvirt.yaml +++ b/docker/services/nova-libvirt.yaml @@ -174,7 +174,7 @@ outputs: - /dev:/dev - /run:/run - /sys/fs/cgroup:/sys/fs/cgroup - - /var/lib/nova:/var/lib/nova + - /var/lib/nova:/var/lib/nova:shared - /var/run/libvirt:/var/run/libvirt - /var/lib/libvirt:/var/lib/libvirt - /etc/libvirt/qemu:/etc/libvirt/qemu:ro @@ -199,7 +199,7 @@ outputs: - /dev:/dev - /run:/run - /sys/fs/cgroup:/sys/fs/cgroup - - /var/lib/nova:/var/lib/nova + - /var/lib/nova:/var/lib/nova:shared - /etc/libvirt:/etc/libvirt - /var/run/libvirt:/var/run/libvirt - /var/lib/libvirt:/var/lib/libvirt diff --git a/docker/services/nova-migration-target.yaml b/docker/services/nova-migration-target.yaml index cb3b950e..7909e416 100644 --- a/docker/services/nova-migration-target.yaml +++ b/docker/services/nova-migration-target.yaml @@ -149,6 +149,6 @@ outputs: - /var/lib/config-data/puppet-generated/nova_libvirt/:/var/lib/kolla/config_files/src:ro - /etc/ssh/:/host-ssh/:ro - /run:/run - - /var/lib/nova:/var/lib/nova + - /var/lib/nova:/var/lib/nova:shared environment: - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS |