[英]Is it possible to update a parameter in AWS SSM parameter store from an SSM Command?
[英]Can we retrieve the values from SSM parameter store and pass it as an input to AWS step function?
我有一個步驟 function,它需要 lambda function 的 ARN。這些 Lambda 函數是使用 terraform 腳本創建的,其 ARN 存儲在 SSM 參數存儲中。 我想從參數存儲中檢索這些 ARN,並將其作為輸入傳遞到我的 state 機器。 我如何將它包含在我的 state 機器中?
目前沒有步驟 function 與 Parameter Store 直接服務集成。 您可以做的是使用 lambda 集成,它調用參數存儲來獲取數據並將結果用於結果路徑。
AWS Step Functions 與參數存儲等 AWS 服務集成,讓您可以從工作流中調用每個服務的 API 操作。
參考: https://docs.aws.amazon.com/step-functions/latest/dg/supported-services-awssdk.html
例子:
{
"Comment": "This is your state machine",
"StartAt": "GetParameter",
"States": {
"GetParameter": {
"Type": "Task",
"Parameters": {
"Names": ["<paramter_name>"]
},
"Resource": "arn:aws:states:::aws-sdk:ssm:getParameters",
"ResultSelector": {
"ssm-parameters.$": "$.Parameters"
},
"End": true
}
}
}
注意:將 <paramter_name> 替換為您的參數名稱
我很幸運將 ssm 參數解析為模板參數。
在您的 cloudformation 模板中。
Parameters:
SomeTemplateVar:
Type: String
Default: "{{resolve:ssm:YourSSMParameter:1}}"
然后您可以在工作流 JSON 中引用該變量。
"Lambda Invoke": {
"Type": "Task",
"Resource": "arn:aws:states:::lambda:invoke",
"OutputPath": "$.Payload",
"Parameters": {
"Payload.$": "$",
"FunctionName": "${SomeTemplateVar}"
},
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.