From f92470164552c2b70c183035e5f4a3dde4c080f8 Mon Sep 17 00:00:00 2001
From: Dan Prince <dprince@redhat.com>
Date: Tue, 17 Oct 2017 17:09:50 -0400
Subject: [PATCH] Only add docker.yaml if it exists

This patch only adds the docker.yaml and docker-ha.yaml to the plan
if docker.yaml exists (it is assumed that if docker.yaml exists
that docker-ha.yaml also exists as these are both net new in OSP12).

Change-Id: Idf62a2d1fdad5ddce18ee1930eb52d9e44385d2b
Resolves: rhbz#1496782
---
 tripleo_common/actions/plan.py | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/tripleo_common/actions/plan.py b/tripleo_common/actions/plan.py
index f67fa5e..7ec8918 100644
--- a/tripleo_common/actions/plan.py
+++ b/tripleo_common/actions/plan.py
@@ -116,11 +116,14 @@ class MigratePlanAction(base.TripleOAction):
             if from_mistral:
                 mistral.environments.delete(self.plan)
 
-        env = plan_utils.get_env(swift, self.plan)
-        env.get('environments', []).append({'path': 'environments/docker.yaml'})
-        env.get('environments', []).append({'path': 'environments/docker-ha.yaml'})
-        plan_utils.put_env(swift, env)
-
+        try:
+            source = swift.get_object(self.plan, 'environments/docker.yaml')[1]
+            env = plan_utils.get_env(swift, self.plan)
+            env.get('environments', []).append({'path': 'environments/docker.yaml'})
+            env.get('environments', []).append({'path': 'environments/docker-ha.yaml'})
+            plan_utils.put_env(swift, env)
+        except swiftexceptions.ClientException:
+            pass
 
 class ListPlansAction(base.TripleOAction):
     """Lists deployment plans
-- 
2.13.6

