Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Il moderno flusso di lavoro del blueprint di applicazioni Web a tre livelli OnPullRequestnon riesce a causa di un errore di autorizzazione per Amazon CodeGuru
Problema: quando tento di eseguire un flusso di lavoro per il mio progetto, il flusso di lavoro non viene eseguito e viene visualizzato il seguente messaggio:
Failed at codeguru_codereview: The action failed during runtime. View the action's logs for more details.
Soluzione: una possibile causa di questo errore di azione potrebbe essere dovuta alla mancanza di autorizzazioni nella policy del ruolo IAM, in quanto alla versione del ruolo di servizio utilizzata da CodeCatalyst in the connected mancano le autorizzazioni necessarie per l'Account AWSesecuzione corretta dell'azione codeguru_codereview. Per risolvere questo problema, è necessario aggiornare il ruolo di servizio con le autorizzazioni richieste oppure è necessario modificare il ruolo di servizio utilizzato per il flusso di lavoro con uno con le autorizzazioni richieste per Amazon e CodeGuru Amazon CodeGuru Reviewer. Segui i passaggi seguenti, trova il tuo ruolo e aggiorna le autorizzazioni relative alla policy del ruolo per consentire al flusso di lavoro di funzionare correttamente.
Nota
Questi passaggi si applicano ai seguenti flussi di lavoro in: CodeCatalyst
-
Il OnPullRequestflusso di lavoro fornito per i progetti creati con il modello di applicazione Web Modern a tre livelli in. CodeCatalyst
-
Flussi di lavoro aggiunti ai progetti CodeCatalyst con azioni che accedono ad Amazon CodeGuru o Amazon CodeGuru Reviewer.
Ogni progetto contiene flussi di lavoro con azioni che utilizzano un ruolo e un ambiente forniti da chi è Account AWS connesso al progetto. CodeCatalyst Il flusso di lavoro con le azioni e la relativa politica designata viene archiviato nell'archivio dei sorgenti nella directory /.codecatalyst/workflows. La modifica del flusso di lavoro YAML non è richiesta a meno che non si aggiunga un nuovo ID di ruolo al flusso di lavoro esistente. Per informazioni sugli elementi e sulla formattazione del modello YAML, vedere. YAMLDefinizione del workflow
Questi sono i passaggi principali da seguire per modificare la politica dei ruoli e verificare il flusso di lavoro YAML.
Per fare riferimento al nome del ruolo nel flusso di lavoro YAML e aggiornare la policy
Apri la CodeCatalyst console all'indirizzo https://codecatalyst.aws/.
-
Accedi al tuo CodeCatalyst spazio. Vai al tuo progetto.
-
Scegli CI/CD, quindi scegli Flussi di lavoro.
-
Scegli il flusso di lavoro intitolato. OnPullRequest Scegliere la scheda Definizione .
-
Nel workflow YAML, nel
Role:
campo sotto l'azione codeguru_codereview, prendi nota del nome del ruolo. Questo è il ruolo con la politica che modificherai in IAM. L'esempio seguente mostra il nome del ruolo. -
Completa una delle seguenti operazioni:
-
(Consigliato) Aggiorna il ruolo di servizio collegato al tuo progetto con le autorizzazioni richieste per Amazon CodeGuru e Amazon CodeGuru Reviewer. Il ruolo avrà un nome
CodeCatalystWorkflowDevelopmentRole-
con un identificatore univoco aggiunto. Per ulteriori informazioni sul ruolo e sulla politica relativa ai ruoli, vedere. Comprensione del ruolo CodeCatalystWorkflowDevelopmentRole-spaceNamedel servizio Procedi ai passaggi successivi per aggiornare la policy in IAM.spaceName
Nota
È necessario disporre AWS dell'accesso di amministratore a Account AWS con il ruolo e la policy.
-
Cambia il ruolo di servizio utilizzato per il flusso di lavoro con uno con le autorizzazioni richieste per Amazon CodeGuru e Amazon CodeGuru Reviewer o crea un nuovo ruolo con le autorizzazioni richieste.
-
-
Accedi alla AWS Management Console e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. Nella console IAM, trova il ruolo indicato nella fase 5, ad esempio.
CodeCatalystPreviewDevelopmentRole
-
Nel ruolo del passaggio 5, modifica la politica di autorizzazione per includere le
codeguru:*
autorizzazionicodeguru-reviewer:*
e. Dopo aver aggiunto queste autorizzazioni, la politica di autorizzazione dovrebbe essere simile alla seguente:{ "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudformation:*", "lambda:*", "apigateway:*", "ecr:*", "ecs:*", "ssm:*", "codedeploy:*", "s3:*", "iam:DeleteRole", "iam:UpdateRole", "iam:Get*", "iam:TagRole", "iam:PassRole", "iam:CreateRole", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:PutRolePolicy", "iam:CreatePolicy", "iam:DeletePolicy", "iam:CreatePolicyVersion", "iam:DeletePolicyVersion", "iam:PutRolePermissionsBoundary", "iam:DeleteRolePermissionsBoundary", "sts:AssumeRole", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeListeners", "elasticloadbalancing:ModifyListener", "elasticloadbalancing:DescribeRules", "elasticloadbalancing:ModifyRule", "cloudwatch:DescribeAlarms", "sns:Publish", "sns:ListTopics", "codeguru-reviewer:*", "codeguru:*" ], "Resource": "*", "Effect": "Allow" } ] }
-
Dopo aver apportato le correzioni ai criteri, torna CodeCatalyst e riavvia l'esecuzione del flusso di lavoro.