Ich habe meine Pipeline so eingerichtet, dass sie eine AWS Lamba-Funktion aufruft. Nach einer Laufzeit von 10 Minuten, das ist der Fehler, den ich bekommen:Zugriff verweigert, wenn AWS Lambda-Funktion von AWS CodePipeline aufgerufen wird
Aktion Ausführung der AWS Lambda-Funktion addAMIToAutoScalingLC fehlgeschlagen fehlgeschlagen ein Ergebnis zurück. Überprüfen Sie, ob die Funktion berechtigt ist, die PutJobSuccessResult-Aktion aufzurufen, und dass sie einen -Aufruf an PutJobSuccessResult vorgenommen hat.
Die Protokolle selbst enthalten keine relevanten Informationen.
Ich glaube, meine IAM Berechtigungen Set-up richtig:
- Die Lambda-Funktion wird mit einer Rolle ausführen, die hat:
AWSLambdaFullAccess
,AWSCodePipelineFullAccess
. - Die CodePipeline ist Ich denke, mit der Rolle
AWS-CodePipeline-Service
ausführen, die hat:AWSLambdaFullAccess
Ich denke, dass mein Skript den Anruf zu PutJobSuccessResult
macht, denn wenn ich das Skript testen ich ein Execution result: succeeded
bekommen.
Mein Skript benötigt keine Parameter, daher habe ich keinen Benutzerparameter in CodePipeline angegeben.
Was soll ich weiter untersuchen?
Welche Art der Authentifizierung Sie verwenden hier? IAM oder ressourcenbasiert? – kosa
Ich benutze IAM (ich habe die Regeln beschrieben) – Nicorr