2017-06-05 93 views
0

我們有一個Cloudformation堆棧,我們導出由堆棧創建的ARN並將其導入到同一個堆棧中。當我們嘗試刪除堆棧時,它會嘗試首先刪除輸出,並實現輸出正在使用並且不會刪除堆棧。刪除導出變量並幫助刪除循環依賴

我們正在尋找關於如何重新部署堆棧或編輯堆棧的指導,以便我們可以移除依賴關係。

我們嘗試在配置編輯器中編輯堆棧,但更改未被保存,並且在嘗試刪除堆棧時仍然出現相同的錯誤。

"UserPoolArn":{ 
    "Description":"The ARN for Cognito User Pool", 
    "Value":{ 
     "Fn::GetAtt":[ 
      "userPool", 
      "Arn" 
     ] 
    }, 
    "Export":{ 
     "Name":"organization:XX:UsersPoolArn" 
    } 

Import within the same cf stack 
     "Environment":{ 
      "Variables":{ 

       "USER_POOL":{ 
       "Fn::ImportValue":"organization:XX:UsersPoolArn" 
       } 
      } 
     } 
    } 

我們如何才能消除有問題的輸出鍵/值?

回答

0

我的第一個嘗試就是用任何值取代ImportValue行。既然你的目標是刪除堆棧,我並不真正擔心硬編碼的價值。用硬編碼更新堆棧,一旦堆棧達到更新完成狀態,您應該能夠刪除堆棧,因爲循環依賴已被刪除。

在一個堆棧中,Ref是比ImportValue更好的選擇。我很確定堆棧不能用這個配置創建,因爲在啓動之前驗證堆棧時導入的值不會出現,所以我猜這是有人在堆棧更新之後做的更新被創建。