요새 왜ㅐㅐ이렇게 이슈가 많은지 싶지만 언제나 감사하면서 살기
암튼 CodePipeline이나 Codebuild를 돌리기 위해서는 Source가 필요한데 보통 Github이나 Gitlab을 쓴다.
Github 같은 경우 내가 Organizations로 들어가 있다면 소스에서 내 Github 레포지토리를 선택하면 사진처럼 잘 나온다.
근데 요놈의 Gitlab은 잘 안 써서 잘 모르는데, 내가 멤버로 들어가있는 프로젝트의 레포지토리 목록이 자동으로 안 나타난다
Gitlab 레포지토리 목록이 안 나타날 때 확인할 것, 설정 해야하는 것에 대해서 알아보자.
일단 Gitlab을 소스로 연결하는 방법은 다음과 같다.
문서 참고 : https://docs.aws.amazon.com/ko_kr/codepipeline/latest/userguide/connections-gitlab.html
GitLab.com 연결 - AWS CodePipeline
이 기능은 아시아 태평양(홍콩), 아시아 태평양(하이데라바드), 아시아 태평양(자카르타), 아시아 태평양(멜버른), 아시아 태평양(오사카), 아프리카(케이프타운), 중동(바레인), 중동(UAE), 유럽(스
docs.aws.amazon.com
위 문서 참고해서 connection 연결하면 다음 사진처럼 "나의" 레포지토리는 잘 나온다.
하지만 나는 내가 멤버로 들어가있는 프로젝트의 레포지토리를 보고싶단 말이지!
그래서 리포지토리 칸에 프로젝트 URL을 입력해봤다.
https://gitlab.com/PROJECT/REPOSITORY
이렇게 했는데도 안 된단 말이지? CodeConnection에서 찾을 수 없다나 모라나 ..
Failed to transform source location to CodeConnections location. A connection arn is required for CodeConnections sources
그래서 AWS 콘솔에서 개발자도구 > 설정 > 생성한 CodeConnection을 삭제했다.
그리고 나의 Gitlab 계정에 가서 Settings > Applications > Authorized applications에 있는 연결을 Revoke 시켰다.
그리고 다시 ... CodeConnection에서 Gitlab 연결 > 소스의 리포지토리에 프로젝트 URL 입력 했는데 이번엔 다른 에러가 나왔다.
웹훅 만드는데 기대하지 못 한 에러가 있다나 뭐라나...
그래서 사례를 찾아봤는데 웹훅 생성은 최대 20개까지 되고, 어떤 사람은 웹훅 만드는데 4시간 걸렸다길래 이상했지만 일단 기다렸다.
근데 이상한 게 저 위에 에러난건 백엔드 리포지토리이고, 그 전에 code connection 삭제->생성 후 data 리포지토리는 에러 없이 잘 됐단 말이지 ...?
왜 data 리포지토리만 Codebuild에 소스가 잘 연결됐는지 이해가 안되서 더 찾아봤다..
Gitlab이 연결 안 되면 가장 대표적인 이슈는 <권한>일 수 있다고 하더라
차이점을 알고보니 리포지토리 권한이 Developer와 Maintainer로 달랐던 것이다 ...
Codebuild든 Codepipeline이든 Webhook으로 트리거 되는 거여서 Webhook에 대한 권한이 있어야 하는데 Developer에겐 권한이 없어서 나타나는 오류였다.
Gitlab 공식 페이지에선 다음처럼 권한이 부여되어 있다고 나와있다.
사실 aws docs에는 Gitlab 리포지토리에 Owner 권한이 필요하다고 해서 권한을 Owner로 승격해야하나 고민하고 있었는데 업데이트가 안 된건지.. Maintainer 권한으로 잘 된다.
<정리>
Gitlab 레포지토리가 Codebuild와 Codepipeline 소스에서 보이지 않는다면
1. CodeConnection을 삭제하고, Gitlab Applications 설정에서 revoke 한다.
그래도 안 된다면
2. Gitlab 레포지토리에 접근가능한 나의 역할이 Maintainer 또는 Owner인지 확인하고, 변경한다.
끝
'AWS' 카테고리의 다른 글
AWS Certificate Manager 공인 인증서 개념, 발급방법 (0) | 2025.08.20 |
---|---|
Unable to load credentials from any of the providers in the chain AwsCredentialsProviderChain 이슈 (2) | 2025.07.16 |
AWS IoT SiteWise Portal 삭제 이슈 해결방법 (0) | 2025.04.17 |
AWS IoT Core에서 Topic 제약 없이 사용하는 방법 (0) | 2025.01.06 |
[AWS 비용] GetMetricData API 삭제 방법 (0) | 2024.04.30 |