summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-08-06 19:16:12 +0000
committerGerrit Code Review <review@openstack.org>2012-08-06 19:16:12 +0000
commit1dc96f0d1a63404bcdaea6dd7c65af3d2432be7c (patch)
tree3a0f7983d718c2a850c5941a39d2af55734d775a
parent407f397dfe3acf523ffb48fcc125cea7231a6ce9 (diff)
parent9bf48de84d38196eba3a55f51ea94038e1beb964 (diff)
Merge "ensure_tree calls mkdir -p"
-rw-r--r--nova/virt/libvirt/utils.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/nova/virt/libvirt/utils.py b/nova/virt/libvirt/utils.py
index c954d70ad..5adfe4cae 100644
--- a/nova/virt/libvirt/utils.py
+++ b/nova/virt/libvirt/utils.py
@@ -19,6 +19,7 @@
# License for the specific language governing permissions and limitations
# under the License.
+import errno
import hashlib
import os
import random
@@ -255,7 +256,14 @@ def ensure_tree(path):
:param path: Directory to create
"""
- execute('mkdir', '-p', path)
+ try:
+ os.makedirs(path)
+ except OSError as exc:
+ if exc.errno == errno.EEXIST:
+ if not os.path.isdir(path):
+ raise
+ else:
+ raise
def write_to_file(path, contents, umask=None):