À partir de la console, je suis en invoquant un lambda qui présente un lot de travail. Le lot de travail échoue, indiquant que l'ECS est pas en mesure d'assumer le rôle qui est fourni pour exécuter le travail de définition.
Pour le rôle, j'ai ajouté le lambda et les services ECS.
Le message d'erreur:
"ECS était pas en mesure d'assumer le rôle 'arn:aws:iam::749340585813:rôle/golfnow-invoke-écrire-le progrès" que a été fournie pour cette tâche. Veuillez vérifier que le rôle d'être passée a la bonne relation de confiance et d'autorisations et que votre IAM l'utilisateur dispose des autorisations nécessaires pour passer ce rôle."
"TrainingJobRole": {
"Type": "AWS::IAM::Role",
"Properties": {
"RoleName": "golfnow-invoke-write-progress",
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"lambda.amazonaws.com",
"ecs.amazonaws.com"
]
},
"Action": [
"sts:AssumeRole"
]
}
]
},
"Path": "/"
}
}
Le lot de travail:
"TrainingJob": {
"Type": "AWS::Batch::JobDefinition",
"Properties": {
"Type": "container",
"JobDefinitionName": {
"Fn::Sub": "c12e-golfnow-${Environment}-job"
},
"ContainerProperties": {
"Image": {
"Fn::Join": [
"",
[
"{{ image omitted }}",
{
"Ref": "AWS::Region"
},
".amazonaws.com/amazonlinux:latest"
]
]
},
"Vcpus": 2,
"Memory": 2000,
"Command": [
"while", "True", ";", "do", "echo", "'hello';", "done"
],
"JobRoleArn": {
"Fn::GetAtt": [
"TrainingJobRole",
"Arn"
]
}
},
"RetryStrategy": {
"Attempts": 1
}
}
},
"JobQueue": {
"Type": "AWS::Batch::JobQueue",
"Properties": {
"Priority": 1,
"ComputeEnvironmentOrder": [
{
"Order": 1,
"ComputeEnvironment": {
"Ref": "ComputeEnvironment"
}
}
]
}
}
Est le problème avec la façon dont il a été invoqué? Mon utilisateur a des privilèges d'administrateur, donc je ne pense pas que ce soit un problème avec mon utilisateur disposant d'autorisations insuffisantes.