簡體   English   中英

AWS Step 函數:輸入參數

[英]AWS Step Functions: Input Parameter

我有一個使用 Fargate 容器的非常簡單的工作流程。 容器只是簡單地返回輸入。 工作流輸入是:

    {
      "value": "FALSE"
    }
  1. 選擇按預期運行。 $.value被處理為FALSE ,選擇運行ECS RunTask-FALSE容器。
  2. 容器應接收並返回字符串“FALSE”,但它返回字符串“*.value”。 由於某種原因,未解析輸入值。 當我查看在 ECS 門戶中運行的任務時,我看到:

在此處輸入圖像描述

如何將起始參數傳遞給此任務?

{
    "Comment": "A description of my state machine",
    "StartAt": "Choice",
    "States": {
        "Choice": {
            "Type": "Choice",
            "Choices": [
                {
                    "Variable": "$.value",
                    "StringEquals": "FALSE",
                    "Next": "ECS RunTask-FALSE"
                }
            ],
            "Default": "ECS RunTask-TRUE"
        },
        "ECS RunTask-FALSE": {
            "Type": "Task",
            "Resource": "arn:aws:states:::ecs:runTask.sync",
            "Parameters": {
                "LaunchType": "FARGATE",
                "Cluster": "arn:aws:ecs:us-east-2:xxxxxxxxxxx:cluster/portal",
                "TaskDefinition": "arn:aws:ecs:us-east-2:xxxxxxxxxxx:task-definition/simple:4",
                "Overrides": {
                    "ContainerOverrides": [
                        {
                            "Name": "simple",
                            "Command": ["$.value"]
                        }
                    ]
                },
                "NetworkConfiguration": {
                    "AwsvpcConfiguration": {
                        "Subnets": [
                            "subnet-001f85595e8af43cf",
                            "subnet-05e742358ac59ae04"
                        ],
                        "SecurityGroups": [
                            "sg-0948e5328861ae667"
                        ],
                        "AssignPublicIp": "ENABLED"
                    }
                }
            },
            "End": true
        },
        "ECS RunTask-TRUE": {
            "Type": "Task",
            "Resource": "arn:aws:states:::ecs:runTask.sync",
            "Parameters": {
                "LaunchType": "FARGATE",
                "Cluster": "arn:aws:ecs:us-east-2:xxxxxxxxxxx:cluster/portal",
                "TaskDefinition": "arn:aws:ecs:us-east-2:xxxxxxxxxxx:task-definition/simple:4",
                "NetworkConfiguration": {
                    "AwsvpcConfiguration": {
                        "Subnets": [
                            "subnet-001f85595e8af43cf",
                            "subnet-05e742358ac59ae04"
                        ],
                        "SecurityGroups": [
                            "sg-0948e5328861ae667"
                        ],
                        "AssignPublicIp": "ENABLED"
                    }
                }
            },
            "End": true
        }
    }
}
"Command.$": "States.Array($.value)"

參數:對於使用路徑選擇值的鍵值對,鍵名必須以.$結尾。

States.Array Intrinsic Function :解釋器按提供的順序返回一個 JSON 數組,其中包含 arguments 的值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM