{
"Comment": "A description of my state machine",
"StartAt": "Batch SubmitJob",
"States": {
"Batch SubmitJob": {
"Type": "Task",
"Resource": "arn:aws:states:::batch:submitJob.sync",
"Parameters": {
"JobDefinition": "arn:aws:batch:us-east-1:XXXXXXXXXXX:job-definition/clientcopyjobdef:1",
"JobQueue": "arn:aws:batch:us-east-1:XXXXXXXXXX:job-queue/copyclientjq",
"ContainerOverrides": {
"Command.$": [
"dotnet",
"CopyClientJob.dll",
"$.input"
]
},
"JobName.$": "$.input"
},
"End": true
}
}
}我试图创建这个状态机,如果我将命令直接传递给JobDefinition,它就能正常工作,但是这里我试图重写命令,并希望从状态输入传递命令参数,所以尝试像上面的代码一样传递命令。对于"JobName.$": "$.input"来说,它是有效的,但对于
"Command.$": [
"dotnet",
"CopyClientJob.dll",
"$.input"
] 它不工作,该命令正在传递给aws批处理,而不需要转换参数,有人可以在这方面提供帮助。谢谢
发布于 2022-04-14 11:56:35
得到了解决方案,实际上,我需要使用下面的States.Array组合所有三个
{
"Comment": "A description of my state machine",
"StartAt": "Batch SubmitJob",
"States": {
"Batch SubmitJob": {
"Type": "Task",
"Resource": "arn:aws:states:::batch:submitJob.sync",
"Parameters": {
"JobDefinition": "arn:aws:batch:us-east-1:XXXXXXXXX:job-definition/clientcopyjobdef:1",
"JobQueue": "arn:aws:batch:us-east-1:XXXXXXXX:job-queue/copyclientjq",
"ContainerOverrides": {
"Command.$": "States.Array('dotnet', 'CopyClientJob.dll', $.input)"
},
"JobName": "test"
},
"End": true
}
}
}https://stackoverflow.com/questions/71870518
复制相似问题