From de6f3a21e04daff5ea583653bef6ed62de624635 Mon Sep 17 00:00:00 2001 From: Kevin Carter Date: Thu, 5 Nov 2015 19:29:24 -0600 Subject: [PATCH] Fix race condition for /openstack directories To resolve a possible race condition when containers are creating log directories the /openstack directory and its basic sub-directories are being created within the openstack_hosts role which will ensure that the appropriate skeleton is available when the containers go to build in subsequent tasks. Closes-bug: #1426254 Change-Id: Icdbddf285f8b898518657b082a9263a2923c97c4 Signed-off-by: Kevin Carter --- .../roles/openstack_hosts/tasks/main.yml | 1 + .../openstack_hosts/tasks/openstack_dirs.yml | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 playbooks/roles/openstack_hosts/tasks/openstack_dirs.yml diff --git a/playbooks/roles/openstack_hosts/tasks/main.yml b/playbooks/roles/openstack_hosts/tasks/main.yml index 51c50025a3..a2892f784b 100644 --- a/playbooks/roles/openstack_hosts/tasks/main.yml +++ b/playbooks/roles/openstack_hosts/tasks/main.yml @@ -13,6 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +- include: openstack_dirs.yml - include: openstack_proxy_settings.yml - include: openstack_host_packages.yml - include: openstack_sysstat.yml diff --git a/playbooks/roles/openstack_hosts/tasks/openstack_dirs.yml b/playbooks/roles/openstack_hosts/tasks/openstack_dirs.yml new file mode 100644 index 0000000000..62ebaf1425 --- /dev/null +++ b/playbooks/roles/openstack_hosts/tasks/openstack_dirs.yml @@ -0,0 +1,28 @@ +--- +# Copyright 2015, Rackspace US, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +- name: Ensure OpenStack directories + file: + path: "{{ item }}" + state: "directory" + mode: "0755" + with_items: + - /openstack + - /openstack/backup + - /openstack/instances + - /openstack/log + - /openstack/venvs + tags: + - openstack-dirs