OIDC와 배포 액션
AWS 배포 패턴은 OIDC로 인증하고, 그다음 아래 방식 중 하나를 선택해.
- ECS 롤링 배포 —
aws-actions/amazon-ecs-deploy-task-definition - kubectl로 EKS 배포 —
aws-actions/configure-aws-credentials+aws eks update-kubeconfig+kubectl apply. - Lambda —
aws-actions/aws-lambda-deploy또는aws lambda update-function-code. - S3 / CloudFront 정적 사이트 —
aws s3 sync+aws cloudfront create-invalidation. - App Runner —
aws-actions/amazon-app-runner-deploy.
AWS 측 일회성 설정
token.actions.githubusercontent.com용 IAM Identity Provider 생성.repo:my-org/my-repo:ref:refs/heads/main키로 trust policy를 가진 IAM Role 생성.- Role의 permissions policy가 특정 배포 액션을 허용하도록 설정 (예: 특정 service ARN에
ecs:UpdateService권한 부여).
설정을 마치면, 모든 워크플로 실행 시 범위가 제한된 1시간짜리 자격 증명을 새로 받게 돼. 정적 키는 필요 없어.