Pré-requisitos do Git Sync do AWS CloudFormation
O Git Sync tem os seguintes pré-requisitos:
Repositório Git
O Git Sync oferece suporte aos repositórios GitHub
Modelo do CloudFormation
Um arquivo de modelo do CloudFormation deve ser verificado no repositório e na ramificação que você pretende conectar com o Git Sync. Este modelo é referenciado pelo arquivo de implantação da pilha.
IAM role (Perfil do IAM)
O Git Sync requer um perfil do Identity and Access Management (IAM). É possível optar por criar um perfil do IAM para a pilha ao configurar o Git Sync ou fornecer um perfil existente.
nota
Um perfil do IAM gerado automaticamente aplica permissões somente à pilha para a qual o perfil é gerado. Para reutilizar um perfil do IAM gerado automaticamente, é necessário editar o perfil para a nova pilha.
Permissões obrigatórias
O perfil do IAM fornecido para o Git Sync requer as seguintes permissões:
nota
As permissões necessárias, citadas anteriormente, são adicionadas automaticamente aos perfis do IAM gerados pelo Git Sync.
O exemplo de perfil do IAM apresentado a seguir inclui as permissões de pré-requisitos para o Git Sync.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "SyncToCloudFormation", "Effect": "Allow", "Action": [ "cloudformation:CreateChangeSet", "cloudformation:DeleteChangeSet", "cloudformation:DescribeChangeSet", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:ExecuteChangeSet", "cloudformation:GetTemplate", "cloudformation:ListChangeSets", "cloudformation:ListStacks", "cloudformation:ValidateTemplate" ], "Resource": "*" }, { "Sid": "PolicyForManagedRules", "Effect": "Allow", "Action": [ "events:PutRule", "events:PutTargets" ], "Resource": "*", "Condition": { "StringEquals": { "events:ManagedBy": ["cloudformation.sync.codeconnections.amazonaws.com"] } } }, { "Sid": "PolicyForDescribingRule", "Effect": "Allow", "Action": "events:DescribeRule", "Resource": "*" } ] }
Política de confiança
A seguinte política de confiança é necessária para que o Git Sync se conecte ao seu repositório Git:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CfnGitSyncTrustPolicy", "Effect": "Allow", "Principal": { "Service": "cloudformation.sync.codeconnections.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }