

Amazon CodeCatalyst는 더 이상 신규 고객에게 공개되지 않습니다. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세한 내용은 [CodeCatalyst에서 마이그레이션하는 방법](migration.md) 단원을 참조하십시오.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon CodeCatalyst 문제 해결
<a name="troubleshooting"></a>

다음 정보는 CodeCatalyst의 일반적인 문제를 해결하는 데 도움이 될 수 있습니다. Amazon CodeCatalyst 상태 보고서를 사용하여 경험에 영향을 미칠 수 있는 서비스 문제가 있는지 확인할 수도 있습니다.

**Topics**
+ [일반적인 액세스 문제 해결](#troubleshooting-general)
+ [지원 문제 관련 문제 해결](#troubleshoot-support)
+ [Amazon CodeCatalyst의 일부 또는 전부를 사용할 수 없습니다](#service-unavailable)
+ [CodeCatalyst에서 프로젝트를 생성할 수 없습니다](#troubleshoot-create-project)
+ [사용자 이름이 잘려서 새 사용자로 BID 스페이스에 액세스할 수 없거나 새 SSO 사용자로 추가할 수 없습니다](#troubleshoot-username-truncated)
+ [SSO 사용자를 새 사용자로 페더레이션 스페이스에 추가하면 중복된 사용자가 생성됩니다](#troubleshoot-username-duplicated-SSO)
+ [CodeCatalyst에서 피드백을 제출하고 싶습니다.](#troubleshoot-create-feedback)
+ [소스 리포지토리 문제 해결](troubleshooting-source.md)
+ [프로젝트 및 블루프린트 문제 해결](projects-troubleshooting.md)
+ [개발 환경 문제 해결](devenvironments-troubleshooting.md)
+ [워크플로 관련 문제 해결](troubleshooting-workflows.md)
+ [문제 관련 문제 해결](troubleshooting-issues.md)
+ [CodeCatalyst의 검색 문제 해결](troubleshooting-search.md)
+ [확장 프로그램 관련 문제 해결](troubleshooting-extensions.md)
+ [스페이스와 연결된 계정의 문제 해결](troubleshooting-connections.md)
+ [Amazon CodeCatalyst와 AWS SDK 또는 AWS CLI 간의 문제 해결](troubleshooting-cli-sdk.md)

## 일반적인 액세스 문제 해결
<a name="troubleshooting-general"></a>

### 암호를 잊어버렸습니다
<a name="id-forgot-password"></a>

**문제:** AWS Builder ID 및 Amazon CodeCatalyst에 사용하는 암호를 잊어버렸습니다.

**가능한 해결 방법:** 이 문제를 해결하는 가장 쉬운 방법은 암호를 재설정하는 것입니다.

1. [Amazon CodeCatalyst](https://codecatalyst.aws/)를 열고 **이메일 주소**를 입력합니다. 그런 다음 **계속**을 선택합니다.

1. **Forgot Password?**를 선택합니다.

1. 암호를 변경할 수 있는 링크가 포함된 이메일을 보내드리겠습니다. 계정으로 이메일이 오지 않았으면 스팸 폴더를 확인하세요.

### Amazon CodeCatalyst의 일부 또는 전부를 사용할 수 없습니다
<a name="service-unavailable"></a>

**문제:** CodeCatalyst 콘솔로 이동하거나 링크를 따랐지만 오류가 발생했습니다.

**가능한 해결 방법:** 이 문제의 가장 일반적인 이유는 초대받지 않은 프로젝트 또는 스페이스에 대한 링크를 따르거나 서비스에 일반적인 가용성 문제가 있기 때문입니다. [상태 보고서](health-dashboard.md)를 확인하여 서비스에 알려진 문제가 있는지 확인합니다. 그렇지 않은 경우 프로젝트 또는 스페이스에 초대한 사람에게 연락하여 다른 초대를 요청합니다. 프로젝트 또는 스페이스에 초대되지 않은 경우 등록하고 [자체 스페이스 및 프로젝트를 생성](sign-up-create-resources.md)할 수 있습니다.

### CodeCatalyst에서 프로젝트를 생성할 수 없습니다
<a name="troubleshoot-create-project"></a>

**문제:** 프로젝트를 생성하려고 하지만 **프로젝트 생성** 버튼이 사용 불가능으로 표시되거나 오류 메시지가 표시됩니다.

**가능한 해결 방법:**이 문제의 가장 일반적인 이유는 **스페이스 관리자** 역할이 없는 AWS Builder ID로 콘솔에 로그인했기 때문입니다. 스페이스에서 프로젝트를 만들려면 이 역할이 있어야 합니다.

이 역할이 있고 버튼이 사용 가능한 것으로 표시되지 않는 경우 서비스에 일시적인 문제가 있을 수 있습니다. 브라우저를 새로 고치고 다시 시도하세요.

## 지원 문제 관련 문제 해결
<a name="troubleshoot-support"></a>

### Amazon CodeCatalyst 지원 에 대한에 액세스할 때 오류가 발생합니다.
<a name="troubleshoot-support-rolepolicy"></a>

**문제:** Amazon CodeCatalyst 지원 용 옵션을 선택하면 다음과 같은 오류 메시지가 표시됩니다.

**`Unable to assume role`**

`To access support cases, you must add the role AWSRoleForCodeCatalystSupport to the AWS 계정 that is the billing account for the space.`

**가능한 해결 방법:** 스페이스의 청구 계정인 AWS 계정 에 필요한 역할을 추가합니다. 스페이스의 청구 계정으로 지정된 계정은 `AWSRoleForCodeCatalystSupport` 역할 및 `AmazonCodeCatalystSupportAccess` 관리형 정책을 사용합니다. 자세한 내용은 [계정 및 스페이스의 **AWSRoleForCodeCatalystSupport** 역할 생성](ipa-iam-roles.md#ipa-iam-roles-support-create) 단원을 참조하십시오.

**참고**  
 AWS Builder ID는 인증된 별칭과 CodeCatalyst의 권한을 기반으로 하는 리소스에 대한 지원만 받을 수 있습니다. 계정 및 청구 지원은 스페이스의 모든 사용자가 사용할 수 있습니다. 그러나 빌더는 CodeCatalyst에서 권한이 있는 리소스 및 정보에 대해서만 지원을 받을 수 있습니다.

### 내 스페이스에 대한 기술 지원 사례를 생성할 수 없습니다
<a name="troubleshoot-support-technical-cases"></a>

**문제:** 내 스페이스에 대한 기술 지원 사례를 생성할 수 없습니다.

**해결 방법:** 스페이스 내 사용자가 기술 지원 사례를 생성하려면 스페이스 청구 계정에 Business Support 또는 Enterprise Support 플랜을 추가해야 합니다. 스페이스 관리자에게 스페이스 청구 계정에 지원 플랜을 추가하도록 요청하거나 https://repost.aws/ 방문하여 AWS 커뮤니티에 문의하세요.

### 지원 사례에 대한 내 계정이 CodeCatalyst의 내 스페이스에 더 이상 연결되지 않습니다
<a name="troubleshoot-support-disconnected-account"></a>

**문제:** 지원 사례에 대한 내 계정이 CodeCatalyst 의 내 스페이스에 더 이상 연결되지 않습니다.

**수정 사항:** **스페이스 관리자** 역할이 있는 사용자가 스페이스 결제 계정을 전환하면 스페이스에서 지원 계획 및 모든 관련 사례의 연결이 해제됩니다. 이전 스페이스 결제 계정과 연결된 지원 사례는 더 이상 Amazon CodeCatalyst 지원 용에 표시되지 않습니다. 해당 결제 계정의 루트 사용자는에서 이전 사례를 보고 해결할 수 AWS Management Console 있으며 다른 사용자가 이전 사례를 보고 해결할 수 있도록에 대한 지원 IAM 권한을 설정할 수 있습니다. AWS Management Console을 통해 이전 스페이스 청구 계정에서 CodeCatalyst에 대한 기술 지원을 계속 받을 수 없지만 지원 플랜이 취소될 때까지 다른 서비스에 대한 기술 지원을 받을 수 있습니다.

자세한 내용은 *지원 사용 설명서*의 [Updating, resolving, and reopening your case](https://docs.aws.amazon.com//awssupport/latest/user/monitoring-your-case.html)를 참조하세요.

### Amazon CodeCatalyst 지원 용 AWS 서비스 에서 다른에 대한 지원 사례를 열 수 없음
<a name="troubleshoot-support-other-services"></a>

**문제:** CodeCatalyst용 AWS 서비스 에서 다른 지원 에 대한 지원 사례를 열 수 없습니다.

**가능한 수정 사항:** CodeCatalyst 지원 용 에서만 CodeCatalyst 지원 사례를 열 수 있습니다. CodeCatalyst에서 다른 AWS, Amazon 또는 기타 타사 서비스로 배포된 서비스 또는 리소스에 대한 지원이 필요한 경우 AWS Management Console 또는 타사 서비스 지원 채널을 통해 사례를 생성해야 합니다. 자세한 내용은 *지원 사용 설명서*의 [Creating support cases and case management](https://docs.aws.amazon.com//awssupport/latest/user/case-management.html)를 참조하세요.

## Amazon CodeCatalyst의 일부 또는 전부를 사용할 수 없습니다
<a name="service-unavailable"></a>

**문제:** CodeCatalyst 콘솔로 이동하거나 링크를 따랐지만 오류가 발생했습니다.

**가능한 해결 방법:** 이 문제의 가장 일반적인 이유는 초대받지 않은 프로젝트 또는 스페이스에 대한 링크를 따르거나 서비스에 일반적인 가용성 문제가 있기 때문입니다. [상태 보고서](health-dashboard.md)를 확인하여 서비스에 알려진 문제가 있는지 확인합니다. 그렇지 않은 경우 프로젝트 또는 스페이스에 초대한 사람에게 연락하여 다른 초대를 요청합니다. 프로젝트 또는 스페이스에 초대되지 않은 경우 등록하고 [자체 스페이스 및 프로젝트를 생성](sign-up-create-resources.md)할 수 있습니다.

## CodeCatalyst에서 프로젝트를 생성할 수 없습니다
<a name="troubleshoot-create-project"></a>

**문제:** 프로젝트를 생성하려고 하지만 **프로젝트 생성** 버튼이 사용 불가능으로 표시되거나 오류 메시지가 표시됩니다.

**가능한 해결 방법:**이 문제의 가장 일반적인 이유는 **스페이스 관리자** 역할이 없는 AWS Builder ID로 콘솔에 로그인했기 때문입니다. 스페이스에서 프로젝트를 만들려면 이 역할이 있어야 합니다.

이 역할이 있고 버튼이 사용 가능한 것으로 표시되지 않는 경우 서비스에 일시적인 문제가 있을 수 있습니다. 브라우저를 새로 고치고 다시 시도하세요.

## 사용자 이름이 잘려서 새 사용자로 BID 스페이스에 액세스할 수 없거나 새 SSO 사용자로 추가할 수 없습니다
<a name="troubleshoot-username-truncated"></a>

**문제:** CodeCatalyst는 100자 후의 사용자 이름을 잘라내기 때문에 일부 사용자 이름이 동일해 보일 수 있습니다. CodeCatalyst 스페이스에 액세스하는 새 사용자로서 다음과 같이 스페이스 유형에 따라 이 문제가 발생합니다.
+ CodeCatalyst에 로그인하는 데 사용할 AWS Builder ID가 있습니다. 스페이스에 로그인하려고 하면 사용자 이름이 유효하지 않다는 메시지가 표시됩니다.
+ ID 페더레이션을 지원하는 CodeCatalyst 스페이스의 페더레이션 ID 관리자입니다. IAM Identity Center의 SSO 사용자 및 그룹에 새 사용자를 추가할 때 해당 사용자가 유효하지 않다는 메시지가 표시됩니다.

**가능한 해결 방법:** CodeCatalyst에 로그인하거나 주어진 잘린 사용자 이름을 가진 SSO 사용자로 스페이스에 추가되는 첫 번째 사용자가 성공합니다. AWS Builder ID로 가입하거나 그 이후에 IAM Identity Center에 추가되는 사용자는 이름이 중복된 것처럼 보이기 때문에 로그인할 수 없습니다. 스페이스 유형에 따라 다음 중 하나를 수행합니다.
+  AWS Builder ID 스페이스에 로그인하려면 다른 사용자 이름으로 가입합니다.
+ IAM Identity Center에서 새 사용자를 추가하려면 다른 사용자 이름을 가진 사용자를 추가합니다.

**참고**  
사용자 이름이 잘린 것처럼 보이더라도 CodeCatalyst는 이름이 잘린 사용자 이름에 영향을 받지 않는 방식으로 ID에 매핑합니다. 그러나 잘린 사용자 이름과 동일한 사용자 이름을 생성하면, 동일한 스페이스 또는 IAM Identity Center 애플리케이션과 연결된 다른 사용자가 이미 해당 잘린 사용자 이름으로 CodeCatalyst에 가입한 경우 해당 사용자 이름을 사용할 수 없습니다.

## SSO 사용자를 새 사용자로 페더레이션 스페이스에 추가하면 중복된 사용자가 생성됩니다
<a name="troubleshoot-username-duplicated-SSO"></a>

**문제:** CodeCatalyst SSO 사용자가 CodeCatalyst 스페이스에 추가되었다가 제거되면 사용자 이름의 재사용이 시도되는 문제가 발생할 수 있습니다. 이 경우 사용자가 다시 생성되었음에도 불구하고 해당 사용자의 중복이 허용되지 않아 다음과 유사한 오류가 발생할 수 있습니다.

**`Unable to assume role`**

`To access support cases, you must add the role AWSRoleForCodeCatalystSupport to the AWS 계정 that is the billing account for the space.`

**가능한 해결 방법:** 기존 IDC 사용자가 삭제되고 새 사용자가 동일한 사용자 이름으로 다시 생성되면 이전 사용자와 충돌하는 사용자 이름으로 인해 새 사용자가 로그인할 수 없습니다. 사용자 이름이 SSO 사용자로 스페이스에 추가된 후에는 해당 이름을 다시 사용할 수 없습니다. AWS Builder ID로 가입하거나 그 이후에 IAM Identity Center에 추가되는 사용자는 이름이 중복된 것처럼 보이기 때문에 로그인할 수 없습니다.

스페이스 유형에 따라 다음 중 하나를 수행합니다.
+  AWS Builder ID 스페이스에 로그인하려면 다른 사용자 이름으로 가입합니다.
+ IAM Identity Center에서 새 사용자를 추가하려면 다른 사용자 이름을 가진 사용자를 추가합니다.

## CodeCatalyst에서 피드백을 제출하고 싶습니다.
<a name="troubleshoot-create-feedback"></a>

**문제:** CodeCatalyst에서 버그가 발견되어 피드백을 제출하려고 합니다.

**가능한 해결 방법:** CodeCatalyst에서 직접 피드백을 제출할 수 있습니다.

1. [https://codecatalyst.aws/](https://codecatalyst.aws/)에서 CodeCatalyst 콘솔을 엽니다.

1. 탐색 창에서 **피드백 제공**을 선택합니다.

1. 드롭다운 메뉴에서 피드백 유형을 선택하고 피드백을 입력합니다.

# 소스 리포지토리 문제 해결
<a name="troubleshooting-source"></a>

다음 정보는 CodeCatalyst의 소스 리포지토리와 관련된 일반적인 문제 해결에 도움이 될 수 있습니다.

**Topics**
+ [내 스페이스의 스토리지가 최대 용량에 도달하여 경고 또는 오류가 표시됩니다](#source-troubleshoot-storage)
+ [Amazon CodeCatalyst 소스 리포지토리를 복제하거나 푸시하려고 할 때 오류가 발생합니다.](#source-troubleshoot-clone)
+ [Amazon CodeCatalyst 소스 리포지토리를 커밋하거나 푸시하려고 할 때 오류가 발생합니다.](#source-troubleshoot-commit-code)
+ [프로젝트를 위한 소스 리포지토리가 필요합니다.](#source-troubleshoot-need-repository)
+ [소스 리포지토리가 완전히 새 것이지만 커밋이 포함되어 있습니다.](#source-troubleshoot-initial-commit)
+ [다른 브랜치를 기본 브랜치로 사용하겠습니다.](#source-troubleshoot-default-branch)
+ [풀 요청의 활동에 대한 이메일을 받고 있습니다.](#source-troubleshoot-repository-emails)
+ [개인 액세스 토큰(PAT)을 잊어버렸습니다.](#source-troubleshoot-forgot-pat)
+ [풀 요청에는 예상 변경 사항이 표시되지 않습니다.](#source-troubleshoot-pull-request-diff)
+ [풀 요청은 병합할 수 없음 상태를 표시합니다.](#source-troubleshoot-pull-request-not-mergeable)

## 내 스페이스의 스토리지가 최대 용량에 도달하여 경고 또는 오류가 표시됩니다
<a name="source-troubleshoot-storage"></a>

**문제:** CodeCatalyst에서 하나 이상의 소스 리포지토리에 코드를 커밋하려고 하지만 오류가 표시됩니다. 콘솔의 소스 리포지토리 페이지에 스페이스의 스토리지 한도에 도달했다는 메시지가 표시됩니다.

**가능한 해결 방법:** 프로젝트 또는 스페이스의 역할에 따라 소스 리포지토리 중 하나 이상의 크기를 줄이거나, 사용하지 않는 소스 리포지토리를 삭제하거나, 청구 계층을 스토리지가 더 많은 계층으로 변경할 수 있습니다.
+ 프로젝트의 소스 리포지토리 크기를 줄이려면 사용하지 않는 브랜치를 삭제할 수 있습니다. 자세한 내용은 [브랜치 삭제](source-branches-delete.md) 및 [기고자 역할](ipa-role-types.md#ipa-role-contributor) 섹션을 참조하세요.
+ 스페이스의 전체 스토리지를 줄이려면 미사용 소스 리포지토리를 삭제할 수 있습니다. 자세한 내용은 [소스 리포지토리 삭제](source-repositories-delete.md) 및 [프로젝트 관리자 역할](ipa-role-types.md#ipa-role-project-admin) 섹션을 참조하세요.
+ 스페이스에 사용할 수 있는 스토리지 양을 늘리려면 청구 계층을 스토리지가 더 많은 계층으로 변경할 수 있습니다. 자세한 내용은 Amazon CodeCatalyst 관리자 안내서의 [Changing your CodeCatalyst billing tier](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-billing-change-plan.html)를 참조하세요.

## Amazon CodeCatalyst 소스 리포지토리를 복제하거나 푸시하려고 할 때 오류가 발생합니다.
<a name="source-troubleshoot-clone"></a>

**문제:** 로컬 컴퓨터 또는 통합 개발 환경(IDE)에 소스 리포지토리를 복제하려고 하면 권한 오류가 발생합니다.

**수정 방법:** AWS Builder ID에 대한 개인 액세스 토큰(PAT)이 없거나, 자격 증명 관리 시스템을 PAT로 구성하지 않았거나, PAT가 만료되었을 수 있습니다. 다음 해결 방법 중 하나 이상을 시도해 보세요.
+ 개인용 액세스 토큰(PAT)을 생성합니다. 자세한 내용은 [개인 액세스 토큰을 사용하여 사용자 리포지토리 액세스 권한 부여](ipa-tokens-keys.md) 섹션을 참조하세요.
+ 소스 리포지토리가 포함된 프로젝트에 초대를 수락했는지, 그리고 그 프로젝트의 멤버인지 확인합니다. 해당 프로젝트의 활성 멤버가 아닌 경우 소스 리포지토리를 복제할 수 없습니다. 콘솔에 로그인하여 소스 리포지토리를 복제하려는 스페이스과 프로젝트로 이동합니다. 스페이스의 프로젝트 목록에서 프로젝트를 볼 수 없는 경우 해당 프로젝트의 멤버가 아니거나 해당 프로젝트에 대한 초대를 수락하지 않은 것입니다. 자세한 내용은 [초대 수락 및 AWS Builder ID 생성](sign-up-sign-in.md) 단원을 참조하십시오.
+ 복제 명령의 형식이 올바르고 AWS Builder ID가 포함되어 있는지 확인합니다. 예제:

  ```
  https://LiJuan@git.us-west-2.codecatalyst.aws/v1/ExampleCorp/MyExampleProject/MyExampleRepo
  ```
+  AWS CLI 를 사용하여 AWS Builder ID와 연결된 PAT가 있고 만료되지 않았는지 확인합니다. PAT가 없거나 PAT가 만료된 경우 PAT를 생성합니다. 자세한 내용은 [개인 액세스 토큰을 사용하여 사용자 리포지토리 액세스 권한 부여](ipa-tokens-keys.md) 섹션을 참조하세요.
+ 소스 리포지토리의 코드를 로컬 리포지토리나 IDE에 복제하는 대신 개발 환경을 만들어서 작업해 봅니다. 자세한 내용은 [개발 환경 생성](devenvironment-create.md) 섹션을 참조하세요.

## Amazon CodeCatalyst 소스 리포지토리를 커밋하거나 푸시하려고 할 때 오류가 발생합니다.
<a name="source-troubleshoot-commit-code"></a>

**문제:** 소스 리포지토리로 푸시하려고 하면 권한 오류가 발생합니다.

**가능한 해결 방법:** 프로젝트에 코드 변경을 커밋하고 푸시할 수 있는 역할이 없을 수 있습니다. 소스 리포지토리에 변경 사항을 푸시하려는 프로젝트에서 역할을 봅니다. 자세한 내용은 [멤버 및 해당 프로젝트 역할 목록 가져오기](projects-members.md#projects-members-view) 및 [사용자 역할로 액세스 권한 부여](ipa-roles.md) 섹션을 참조하세요.

변경 사항을 커밋하고 푸시할 수 있는 역할을 가지고 있다면, 변경 사항을 커밋하려는 브랜치에 코드 변경 사항을 푸시하지 못하도록 하는 브랜치 규칙이 설정되어 있을 수 있습니다. 대신 브랜치를 생성하고 코드를 해당 브랜치로 푸시해 봅니다. 자세한 내용은 [브랜치 규칙을 사용하여 브랜치에 대한 작업 관리](source-branches-branch-rules.md) 섹션을 참조하세요.

## 프로젝트를 위한 소스 리포지토리가 필요합니다.
<a name="source-troubleshoot-need-repository"></a>

**문제:** 프로젝트에 소스 리포지토리가 없거나 프로젝트에 다른 소스 리포지토리가 필요합니다.

**가능한 해결 방법:** 일부 프로젝트는 리소스 없이 생성됩니다. 프로젝트의 멤버인 경우 CodeCatalyst에서 해당 프로젝트에 대한 소스 리포지토리를 생성할 수 있습니다. **스페이스 관리자** 역할을 가진 사람이 **GitHub 리포지토리**를 설치하고 GitHub 계정에 연결하는 경우**프로젝트 관리자** 역할이 있는 경우 사용 가능한 GitHub 리포지토리에 연결하여 프로젝트에 추가할 수 있습니다. 자세한 내용은 [Creating a source repository](source-repositories-create.md) 및 [Linking a source repository](source-repositories-link.md)를 참조하세요.

## 소스 리포지토리가 완전히 새 것이지만 커밋이 포함되어 있습니다.
<a name="source-troubleshoot-initial-commit"></a>

**문제:** 소스 리포지토리를 방금 생성했습니다. 비어 있어야 하지만 커밋, 브랜치 및 `README.md` 파일이 있어야 합니다.

**가능한 해결 방법:** 정상적인 동작입니다. CodeCatalyst의 모든 소스 리포지토리에는 기본 브랜치를 `main`으로 설정하는 초기 커밋이 포함되어 있으며, 샘플 코드(해당 리포지토리가 샘플 코드를 포함하는 블루프린트를 사용하는 프로젝트를 위해 생성된 경우) 또는 리포지토리 README 파일에 대한 템플릿 마크다운 파일이 포함되어 있습니다. 콘솔 및 Git 클라이언트에서 추가 브랜치를 생성할 수 있습니다. 콘솔에서 파일을 생성 및 편집하고 개발 환경 및 Git 클라이언트에서 파일을 삭제할 수 있습니다.

## 다른 브랜치를 기본 브랜치로 사용하겠습니다.
<a name="source-troubleshoot-default-branch"></a>

**문제:** 소스 리포지토리에는 `main`이라는 기본 브랜치가 있지만 다른 브랜치를 기본 브랜치로 사용하려고 합니다.

**가능한 해결 방법:** CodeCatalyst의 소스 리포지토리에서 기본 브랜치를 변경하거나 삭제할 수 없습니다. 추가 브랜치를 생성하고 워크플로의 소스 작업에서 해당 브랜치를 사용할 수 있습니다. GitHub 리포지토리를 연결하여 프로젝트의 리포지토리로 사용하도록 선택할 수도 있습니다.

## 풀 요청의 활동에 대한 이메일을 받고 있습니다.
<a name="source-troubleshoot-repository-emails"></a>

**문제:** 풀 요청 활동에 대한 이메일 알림을 등록하거나 구성하지 않았지만 어쨌든 수신하고 있습니다.

**가능한 해결 방법:** 풀 요청 활동에 대한 이메일 알림이 자동으로 전송됩니다. 자세한 내용은 [Amazon CodeCatalyst에서 풀 요청을 사용하여 코드 검토](source-pull-requests.md) 섹션을 참조하세요.

## 개인 액세스 토큰(PAT)을 잊어버렸습니다.
<a name="source-troubleshoot-forgot-pat"></a>

**문제:** 소스 리포지토리의 코드를 복제, 푸시 및 가져오는 데 PAT를 사용했지만 토큰의 값을 잃어 CodeCatalyst 콘솔에서 찾을 수 없습니다.

**가능한 해결 방법:** 이 문제를 해결하는 가장 빠른 방법은 다른 PAT를 생성하고 이 새 PAT를 사용하도록 자격 증명 관리자 또는 IDE를 구성하는 것입니다. PAT는 생성할 때만 표시됩니다. 이 값을 잃으면 검색할 수 없습니다. 자세한 내용은 [개인 액세스 토큰을 사용하여 사용자 리포지토리 액세스 권한 부여](ipa-tokens-keys.md) 섹션을 참조하세요.

## 풀 요청에는 예상 변경 사항이 표시되지 않습니다.
<a name="source-troubleshoot-pull-request-diff"></a>

**문제:** 풀 요청을 생성했지만 소스 브랜치와 대상 브랜치 간에 예상되는 변경 사항이 보이지 않습니다.

**가능한 해결 방법:** 이는 여러 가지 문제로 인해 발생할 수 있습니다. 다음 해결 방법 중 하나 이상을 시도해 보세요.
+ 이전 개정 간의 변경 사항을 검토하거나 최신 변경 사항을 확인하지 못할 수 있습니다. 브라우저를 새로 고치고 보려는 개정 간의 비교를 선택했는지 확인합니다.
+ 콘솔에 풀 요청의 모든 변경 사항을 표시할 수 있는 것은 아닙니다. 예를 들어, 콘솔에서 Git 하위 모듈을 볼 수 없으므로 풀 요청에서 하위 모듈의 차이를 볼 수 없습니다. 일부 차이는 표시하기에 너무 클 수 있습니다. 자세한 내용은 [CodeCatalyst의 소스 리포지토리 할당량](source-quotas.md) 및 [파일 보기파일 변경 내역 보기](source-files-view.md) 섹션을 참조하세요.
+ 풀 요청은 병합 기반과 선택한 개정 간의 차이를 표시합니다. 풀 요청을 생성할 때 표시되는 차이는 소스 브랜치의 팁과 대상 브랜치의 팁 간의 차이입니다. 풀 요청이 생성되면 표시된 차이는 개정과 병합 기반 간에 발생합니다. 병합 기반은 개정이 생성될 때 대상 브랜치의 팁인 커밋입니다. 병합 기반은 개정 간에 변경될 수 있습니다. Git의 차이점 및 병합 기반에 대한 자세한 내용은 Git 설명서의 [git-merge-base](https://git-scm.com/docs/git-merge-base)를 참조하세요.

## 풀 요청은 병합할 수 없음 상태를 표시합니다.
<a name="source-troubleshoot-pull-request-not-mergeable"></a>

**문제:** 풀 요청을 병합하려고 하지만 상태가 **병합할 수 없음**으로 표시됩니다.

**가능한 해결 방법:** 하나 이상의 문제로 인해 발생할 수 있습니다.
+ 풀 요청에 필요한 모든 검토자는 풀 요청을 승인해야 병합할 수 있습니다. 이름 옆에 시계 아이콘이 있는 모든 검토자의 필수 검토자 목록을 검토합니다. 시계 아이콘은 검토자가 풀 요청을 승인하지 않았음을 나타냅니다.
**참고**  
풀 요청을 승인하기 전에 프로젝트에서 필수 검토자를 제거한 경우 풀 요청을 병합할 수 없습니다. 풀 요청을 닫고 새 풀 요청을 생성합니다.
+ 소스 브랜치와 대상 브랜치 간에 병합 충돌이 발생할 수 있습니다. CodeCatalyst는 가능한 모든 Git 병합 전략 및 옵션을 지원하지 않습니다. 개발 환경에서 병합 충돌에 대해 브랜치를 평가하거나 리포지토리를 복제하고 IDE 또는 Git 도구를 사용하여 병합 충돌을 찾아 해결할 수 있습니다. 자세한 내용은 [풀 요청 병합](pull-requests-merge.md) 섹션을 참조하세요.

# 프로젝트 및 블루프린트 문제 해결
<a name="projects-troubleshooting"></a>

이 섹션은 Amazon CodeCatalyst에서 프로젝트 및 블루프린트로 작업하는 동안 발생할 수 있는 몇 가지 일반적인 문제를 해결하는 데 도움이 될 수 있습니다.

# apache-maven-3.8.6에 대한 종속성이 AWS Fargate 블루프린트에 없는 Java API
<a name="projects-troubleshooting-error-maven"></a>

**문제:** AWS Fargate 블루프린트가 있는 Java API에서 생성된 프로젝트의 경우 `apache-maven-3.8.6` 워크플로가 실패하고 종속성이 누락되어 오류가 발생합니다. 다음 예시와 유사한 출력으로 워크플로가 실패합니다.

```
Step 8/25 : RUN wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz -P /tmp
---> Running in 1851ce6f4d1b
[91m--2023-03-10 01:24:55--  https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz
[0m[91mResolving dlcdn.apache.org (dlcdn.apache.org)... 
[0m[91m151.101.2.132, 2a04:4e42::644
Connecting to dlcdn.apache.org (dlcdn.apache.org)|151.101.2.132|:443... 
[0m[91mconnected.
[0m[91mHTTP request sent, awaiting response... [0m[91m404 Not Found
2023-03-10 01:24:55 ERROR 404: Not Found.
[0mThe command '/bin/sh -c wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz -P /tmp' returned a non-zero code: 8
[Container] 2023/03/10 01:24:55 Command failed with exit status 8
```

**해결 방법:** 다음 단계를 따라 블루프린트 Dockerfile을 업데이트합니다.

1. 검색 창에서 `apache-maven-3.8.6`를 입력하여 AWS Fargate Java API와 블루프린트로 생성된 프로젝트 내에서 Dockerfile을 찾습니다.

1.  기본 이미지로 `maven:3.9.0-amazoncorretto-11`를 사용하도록 Dockerfile(`/static-assets/app/Dockerfile`)을 업데이트하고 `apache-maven-3.8.6` 패키지에 대한 종속성을 제거합니다.

1. (권장 사항) 또한 Maven 힙 크기를 6GB로 업데이트하는 것을 권장합니다.

다음은 Dockerfile의 예입니다.

```
FROM maven:3.9.0-amazoncorretto-11 AS builder

COPY ./pom.xml ./pom.xml
COPY src ./src/

ENV MAVEN_OPTS='-Xmx6g'

RUN mvn -Dmaven.test.skip=true clean package

FROM amazoncorretto:11-alpine

COPY —from=builder target/CustomerService-0.0.1.jar CustomerService-0.0.1.jar
EXPOSE 80
CMD ["java","-jar","-Dspring.profiles.active=prod","/CustomerService-0.0.1.jar", "—server.port=80"]
```

# Amazon CodeGuru에 대한 권한 오류로 최신 3계층 웹 애플리케이션 블루프린트 **OnPullRequest** 워크플로 실패
<a name="projects-troubleshooting-onpullrequest"></a>

**문제:** 프로젝트의 워크플로를 실행하려고 하면 다음 메시지와 함께 워크플로가 실행되지 않습니다.

```
Failed at codeguru_codereview: The action failed during runtime. View the action's logs for more details.
```

``

**해결 방법:**이 작업 실패의 한 가지 가능한 원인은 연결된에서 CodeCatalyst가 사용하는 서비스 역할의 버전에 **codeguru\$1codereview** 작업이 성공적으로 실행되는 데 필요한 권한이 AWS 계정 없는 IAM 역할 정책의 권한 누락 때문일 수 있습니다. 이 문제를 해결하려면 서비스 역할이 업데이트하여 필요한 권한을 갖추거나, 워크플로에 사용되는 서비스 역할을 Amazon CodeGuru 및 Amazon CodeGuru Reviewer에 필요한 권한이 있는 역할로 변경해야 합니다. 다음 단계를 사용하여 역할을 찾고 역할 정책 권한을 업데이트하여 워크플로가 성공적으로 실행되도록 합니다.

**참고**  
이러한 단계는 CodeCatalyst의 다음 워크플로에 적용됩니다.  
CodeCatalyst에서 최신 3계층 웹 애플리케이션 블루프린트로 생성된 프로젝트에 제공되는 **OnPullRequest** 워크플로입니다.
Amazon CodeGuru 또는 Amazon CodeGuru Reviewer에 액세스하는 작업으로 CodeCatalyst의 프로젝트에 워크플로가 추가되었습니다.

각 프로젝트에는 CodeCatalyst의 프로젝트에 AWS 계정 연결된에서 제공하는 역할 및 환경을 사용하는 작업이 포함된 워크플로가 포함되어 있습니다. 해당 작업 및 지정된 정책이 포함된 워크플로는 디렉터리 /.codecatalyst/workflow의 소스 리포지토리에 저장됩니다. 기존 워크플로에 새 역할 ID를 추가하지 않는 한 워크플로 YAML을 수정할 필요는 없습니다. YAML 템플릿 요소와 형식에 대한 정보는 [워크플로 YAML 정의](workflow-reference.md) 섹션을 참조하세요.

다음은 역할 정책을 편집하고 워크플로 YAML을 확인하기 위해 따라야 하는 상위 단계입니다.

**워크플로 YAML에서 역할 이름을 참조하고 정책을 업데이트하려면**

1. [https://codecatalyst.aws/](https://codecatalyst.aws/)에서 CodeCatalyst 콘솔을 엽니다.

1. CodeCatalyst 스페이스로 이동합니다. 프로젝트로 이동합니다.

1. **CI/CD**를 선택한 다음 **워크플로**를 선택합니다.

1. **OnPullRequest**라는 제목의 워크플로를 선택합니다. **정의** 탭을 선택합니다.

1. 워크플로 YAML에서 **codeguru\$1codereview** 작업 아래에 있는 `Role:` 필드에 역할 이름을 기록해 둡니다. 이 역할에는 IAM에서 수정할 정책이 있습니다. 다음 예시는 역할 이름을 보여줍니다.  
![\[워크플로 YAML에서 IAM 역할 이름 보기\]](http://docs.aws.amazon.com/ko_kr/codecatalyst/latest/userguide/images/projects/ts-workflow-role.png)

1. 다음 중 하나를 수행하세요.
   + (권장 사항) Amazon CodeGuru 및 Amazon CodeGuru Reviewer에 필요한 권한으로 프로젝트에 연결된 서비스 역할을 업데이트합니다. 역할에는 고유한 식별자가 추가된 `CodeCatalystWorkflowDevelopmentRole-spaceName` 이름이 있습니다. 역할 및 역할 정책에 대한 자세한 내용은 [**CodeCatalystWorkflowDevelopmentRole-*spaceName*** 서비스 역할 이해](ipa-iam-roles.md#ipa-iam-roles-service-role) 섹션을 참조하세요. 다음 단계로 진행하여 IAM에서 정책을 업데이트합니다.
**참고**  
역할 및 정책을 AWS 계정 사용하여에 대한 AWS 관리자 액세스 권한이 있어야 합니다.
   + 워크플로에 사용되는 서비스 역할을 Amazon CodeGuru 및 Amazon CodeGuru Reviewer에 필요한 권한이 있는 역할로 변경하거나 필요한 권한이 있는 새 역할을 생성합니다.

1. 에 로그인 AWS Management Console 하고 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) IAM 콘솔을 엽니다.

   IAM 콘솔에서 5단계에서 `CodeCatalystPreviewDevelopmentRole`와 같은 역할을 찾습니다.

1. 5단계의 역할에서 `codeguru-reviewer:*` 및 `codeguru:*` 권한을 포함하도록 권한 정책을 변경합니다. 이러한 권한을 추가한 후에는 권한 정책이 다음과 비슷해야 합니다.

1. 정책을 수정한 후 CodeCatalyst로 돌아가 워크플로 실행을 다시 시작합니다.

## 여전히 문제가 해결되지 않았나요?
<a name="projects-last-help"></a>

[Amazon CodeCatalyst](https://codecatalyst.aws/)로 이동하거나 [지원 피드백 양식](https://support.aws.amazon.com/#/contacts/aws-account-support/)을 작성할 수 있습니다. **요청 정보** 섹션에서 **어떻게 도와드릴까요**에 Amazon CodeCatalyst 고객이라는 점을 포함합니다. 문제를 가장 효율적으로 해결할 수 있도록 최대한 자세하게 설명해 주세요.

# 개발 환경 문제 해결
<a name="devenvironments-troubleshooting"></a>

다음 섹션을 참조하여 개발 환경과 관련된 문제를 해결합니다. 개발 환경에 대한 자세한 내용은 [CodeCatalyst에서 개발 환경으로 코드 작성 및 수정개발 환경으로 코드 작성 및 수정](devenvironment.md) 섹션을 참조하세요.

**Topics**
+ [할당량 문제로 인해 내 개발 환경 생성에 실패했습니다.](#troubleshooting-devenvironments-create)
+ [개발 환경에서 리포지토리의 특정 브랜치로 변경 사항을 푸시할 수 없습니다.](#troubleshooting-devenvironments-branchrules)
+ [내 개발 환경이 재개되지 않습니다.](#troubleshooting-devenvironments-resume)
+ [내 개발 환경 연결이 해제됩니다.](#troubleshooting-devenvironments-connection)
+ [VPC 연결 개발 환경이 실패합니다.](#troubleshooting-devenvironments-vpc)
+ [프로젝트가 있는 디렉터리를 찾을 수 없습니다.](#troubleshooting-devenvironments-projects)
+ [SSH를 통해 개발 환경에 연결할 수 없습니다.](#troubleshooting-devenvironments-connect-ssh)
+ [로컬 SSH 구성이 누락되어 SSH를 통해 내 개발 환경에 연결할 수 없습니다.](#troubleshooting-devenvironments-projects-ssh-config)
+ [`codecatalyst` 프로파일에 AWS Config 대한에 문제가 있어 SSH를 통해 개발 환경에 연결할 수 없습니다.](#troubleshooting-devenvironments-config-profile)
+ [Single Sign-On 계정을 사용하여 CodeCatalyst에 로그인할 때는 개발 환경을 생성할 수 없습니다.](#troubleshoot-create-dev-env-idprovider)
+ [IDE 문제 해결](devenvironments-troubleshooting-ides.md)
+ [devfile 문제 해결](devenvironments-devenvironments-devfile.md)

## 할당량 문제로 인해 내 개발 환경 생성에 실패했습니다.
<a name="troubleshooting-devenvironments-create"></a>

**문제:** CodeCatalyst에서 개발 환경을 생성하려고 하지만 오류가 발생했습니다. 콘솔의 개발 환경 페이지에 스페이스의 스토리지 한도에 도달했다는 메시지가 표시됩니다.

**가능한 수정 사항:** 프로젝트 또는 스페이스에서의 역할에 따라 하나 이상의 자체 개발 환경을 삭제하거나, 스페이스 관리자 역할이 있는 경우 다른 사용자가 생성한 미사용 개발 환경을 삭제할 수 있습니다. 또한 청구 계층을 더 많은 스토리지가 포함된 계층으로 변경할 수도 있습니다.
+ 스토리지 한도를 보려면 Amazon CodeCatalyst 스페이스의 **청구** 탭을 보고 **사용** 할당량이 최대 허용 한도에 도달했는지 확인하세요. 할당량이 최대값에 도달한 경우 스페이스 관리자 역할을 가진 사람에게 문의하여 불필요한 개발 환경을 제거하거나 청구 계층 변경을 고려하세요.
+ 더 이상 필요하지 않은 생성한 개발 환경을 제거하려면 [개발 환경 삭제](devenvironment-delete.md) 섹션을 참조하세요.

문제가 계속되고 IDE에 오류가 발생하면 개발 환경을 생성할 수 있는 CodeCatalyst 역할이 있는지 확인합니다. **스페이스 관리자** 역할, **프로젝트 관리자** 역할 및 **기고자** 역할 모두 개발 환경을 생성할 수 있는 권한이 있습니다. 자세한 내용은 [사용자 역할로 액세스 권한 부여](ipa-roles.md) 섹션을 참조하세요.

## 개발 환경에서 리포지토리의 특정 브랜치로 변경 사항을 푸시할 수 없습니다.
<a name="troubleshooting-devenvironments-branchrules"></a>

**문제:** 소스 리포지토리의 브랜치에 개발 환경의 코드 변경 사항을 커밋하고 푸시하려고 하지만 오류가 발생합니다.

**가능한 해결 방법:** 프로젝트 또는 스페이스의 역할에 따라 코드를 푸시하여 프로젝트의 리포지토리를 소싱할 권한이 없을 수 있습니다. **스페이스 관리자** 역할, **프로젝트 관리자** 역할 및 **기고자** 역할은 모두 프로젝트의 리포지토리에 코드를 푸시할 수 있는 권한이 있습니다.

**기고자** 역할이 있지만 특정 브랜치에 코드를 푸시할 수 없는 경우 해당 역할이 있는 사용자가 해당 브랜치에 코드를 푸시하지 못하도록 브랜치 규칙이 특정 브랜치에 대해 구성되어 있을 수 있습니다. 변경 사항을 다른 브랜치로 푸시하거나 브랜치를 생성한 다음 코드를 해당 브랜치로 푸시해 보세요. 자세한 내용은 [브랜치 규칙을 사용하여 브랜치에 대한 작업 관리](source-branches-branch-rules.md) 섹션을 참조하세요.

## 내 개발 환경이 재개되지 않습니다.
<a name="troubleshooting-devenvironments-resume"></a>

**문제:** 중지한 후 내 개발 환경이 재개되지 않았습니다.

**가능한 수정 사항:** 문제를 해결하려면 Amazon CodeCatalyst 스페이스의 **청구** 탭을 보고 **사용량** 할당량이 최대 한도에 도달했는지 확인하세요. 할당량이 최대 한도에 도달한 경우 스페이스 관리자에게 문의하여 청구 계층을 높입니다.

## 내 개발 환경 연결이 해제됩니다.
<a name="troubleshooting-devenvironments-connection"></a>

**문제:** 사용 중 개발 환경 연결이 끊겼습니다.

**가능한 수정 사항:** 문제를 해결하려면 인터넷 연결을 확인합니다. 인터넷에 연결되지 않은 경우 개발 환경에서 인터넷에 연결하고 작업을 재개합니다.

## VPC 연결 개발 환경이 실패합니다.
<a name="troubleshooting-devenvironments-vpc"></a>

**문제:** VPC 연결을 개발 환경에 연결했는데 오류가 발생했습니다.

**가능한 수정 사항:** Docker는 동일한 브리지 네트워크에 연결된 컨테이너가 통신할 수 있도록 하는 브리지 네트워크라는 링크 계층 디바이스를 사용합니다. 기본 브리지는 일반적으로 `172.17.0.0/16` 서브넷을 컨테이너 네트워킹에 사용합니다. 환경 인스턴스의 VPC 서브넷이 Docker가 이미 사용하는 것과 동일한 주소 범위를 사용하는 경우, IP 주소 충돌이 발생할 수 있습니다. Amazon VPC 및 동일한 IPv4 CIDR 주소 블록 Docker 사용으로 인해 발생하는 IP 주소 충돌을 해결하려면 `172.17.0.0/16`와 다른 CIDR 블록을 구성합니다.

**참고**  
(기존 VPC 또는 서브넷의 IP 주소 범위는 변경할 수 없습니다.)

## 프로젝트가 있는 디렉터리를 찾을 수 없습니다.
<a name="troubleshooting-devenvironments-projects"></a>

**문제:** 프로젝트가 있는 디렉터리를 찾을 수 없습니다.

**가능한 수정 사항:** 프로젝트를 찾으려면 디렉터리를 `/projects`로 변경합니다. 프로젝트를 찾을 수 있는 디렉터리입니다.

## SSH를 통해 개발 환경에 연결할 수 없습니다.
<a name="troubleshooting-devenvironments-connect-ssh"></a>

SSH를 통해 개발 환경에 대한 연결을 해결하려면 `-vvv` 옵션을 사용하여 `ssh` 명령을 실행하여 문제를 해결하는 방법에 대한 자세한 정보를 표시할 수 있습니다.

```
ssh -vvv codecatalyst-dev-env=<space-name>=<project-name>=<dev-environment-id>
```

## 로컬 SSH 구성이 누락되어 SSH를 통해 내 개발 환경에 연결할 수 없습니다.
<a name="troubleshooting-devenvironments-projects-ssh-config"></a>

로컬 SSH 구성(`~/.ssh/config`)이 누락되었거나 `Host codecatalyst-dev-env*` 섹션의 내용이 오래된 경우 SSH를 통해 개발 환경에 연결할 수 없습니다. 이 문제를 해결하려면 `Host codecatalyst-dev-env*` 섹션을 삭제하고 **SSH 액세스** 모달에서 첫 번째 명령을 다시 실행합니다. 자세한 내용은 [SSH를 사용하여 개발 환경에 연결](devenvironment-connect-ssh.md) 단원을 참조하십시오.

## `codecatalyst` 프로파일에 AWS Config 대한에 문제가 있어 SSH를 통해 개발 환경에 연결할 수 없습니다.
<a name="troubleshooting-devenvironments-config-profile"></a>

`codecatalyst` 프로필의 AWS Config (`~/.aws/config`)가에 설명된 것과 일치하는지 확인합니다[CodeCatalyst AWS CLI 에서를 사용하도록 설정](set-up-cli.md). 그렇지 않은 경우 `codecatalyst`의 프로파일을 삭제하고 **SSH 액세스** 모달에서 첫 번째 명령을 다시 실행합니다. 자세한 내용은 [SSH를 사용하여 개발 환경에 연결](devenvironment-connect-ssh.md) 섹션을 참조하세요.

## Single Sign-On 계정을 사용하여 CodeCatalyst에 로그인할 때는 개발 환경을 생성할 수 없습니다.
<a name="troubleshoot-create-dev-env-idprovider"></a>

**문제:** CodeCatalyst 콘솔에 SSO 사용자로 로그인하면 스페이스에 개발 환경을 생성하도록 선택하면 알 수 없는 예외 오류가 발생합니다. 개발 환경을 생성하고 액세스를 위한 IDE를 선택하면 다음과 유사한 문제가 AWS Cloud9발생합니다.
+ CodeCatalyst 콘솔의 **개발 환경** 페이지에는 `FAILED` 상태의 목록에 개발 환경이 표시됩니다.
+ 다음과 유사한 오류 메시지가 표시됩니다.

  **`An unknown exception happened`**

  `We encountered an unknown exception when launching your Dev Environment. Mention your Dev Environment id error_message_ID if you want to report or need any help.`

**수정 방법:** 

Active Directory가 ID 제공업체로 사용되는 스페이스의 사용자는 개발 환경을 사용할 수 없습니다. 스페이스 관리자는 대체 ID 제공업체를 사용하여 IAM Identity Center와 같은 개발 환경에 액세스할 수 있습니다. ID 페더레이션을 지원하는 스페이스 계획에 대한 자세한 내용은 *CodeCatalyst 관리자 안내서*의 [ID 페더레이션을 지원하는 스페이스 계획](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/setting-up-federation.html#setting-up-planning-federation)을 참조하세요.

# IDE 문제 해결
<a name="devenvironments-troubleshooting-ides"></a>

CodeCatalyst 의 IDEs와 관련된 문제를 해결하려면 다음 섹션을 참조하세요. IDE에 대한 자세한 내용은 [IDE에서 개발 환경 생성](devenvironment-create.md#devenvironment-using-ide) 섹션을 참조하세요.

**Topics**
+ [AWS Cloud9에서 런타임 이미지 버전이 일치하지 않습니다.](#troubleshooting-devenvironments-c9-runtime)
+ [AWS Cloud9에서 `/projects/projects` 파일에 액세스할 수 없습니다.](#troubleshooting-devenvironments-c9-filesystem)
+ [AWS Cloud9에서 사용자 지정 devfile을 사용하여 개발 환경을 시작할 수 없습니다.](#troubleshooting-devenvironments-c9-image)
+ [AWS Cloud9에 문제가 있습니다.](#troubleshooting-c9)
+ [JetBrains에서는 CodeCatalyst를 통해 개발 환경에 연결할 수 없습니다.](#troubleshooting-jetbrains-connect)
+ [내 IDE에 AWS Toolkit을 설치할 수 없습니다.](#troubleshooting-ide-toolkit)
+ [IDE에서 개발 환경을 시작할 수 없습니다.](#troubleshooting-ide-launch)

## AWS Cloud9에서 런타임 이미지 버전이 일치하지 않습니다.
<a name="troubleshooting-devenvironments-c9-runtime"></a>

AWS Cloud9는 다양한 버전의 프론트엔드 자산과 백엔드 런타임 이미지를 사용합니다. 다른 버전을 사용하면 Git 확장 프로그램 및 AWS Toolkit이 잘못 작동할 수 있습니다. 문제를 해결하려면 개발 환경 대시보드로 이동하여 개발 환경을 중지한 다음 다시 시작합니다. API를 사용하여 문제를 해결하려면 `UpdateDevEnvironment` API를 사용하여 런타임을 업데이트합니다. 자세한 내용은 *Amazon CodeCatalyst API 참조*의 [UpdateDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_UpdateDevEnvironment.html)를 참조하세요.

## AWS Cloud9에서 `/projects/projects` 파일에 액세스할 수 없습니다.
<a name="troubleshooting-devenvironments-c9-filesystem"></a>

AWS Cloud9 편집기가 `/projects/projects` 디렉터리의 파일에 액세스할 수 없습니다. 문제를 해결하려면 AWS Cloud9 터미널을 사용하여 파일에 액세스하거나 다른 디렉터리로 이동합니다.

## AWS Cloud9에서 사용자 지정 devfile을 사용하여 개발 환경을 시작할 수 없습니다.
<a name="troubleshooting-devenvironments-c9-image"></a>

devfile 이미지가 AWS Cloud9와 호환되지 않을 수 있습니다. 문제를 해결하려면 리포지토리 및 해당 개발 환경의 devfile을 검토하고 계속하려면 새 파일을 생성합니다.

## AWS Cloud9에 문제가 있습니다.
<a name="troubleshooting-c9"></a>

다른 문제는 [AWS Cloud9 사용 설명서](https://docs.aws.amazon.com/cloud9/latest/user-guide/troubleshooting.html)의 문제 해결 섹션을 참조하세요.

## JetBrains에서는 CodeCatalyst를 통해 개발 환경에 연결할 수 없습니다.
<a name="troubleshooting-jetbrains-connect"></a>

문제를 해결하려면 최신 버전의 JetBrains만 설치되어 있는지 확인합니다. 버전이 여러 개인 경우 이전 버전을 제거하고 IDE와 브라우저를 닫아 프로토콜 핸들러를 다시 등록합니다. 그런 다음 JetBrains를 열고 프로토콜 핸들러를 다시 등록합니다.

## 내 IDE에 AWS Toolkit을 설치할 수 없습니다.
<a name="troubleshooting-ide-toolkit"></a>

VS 코드에 대한 이 문제를 해결하려면 [GitHub](https://github.com/aws/aws-toolkit-vscode/releases)에서 수동으로 AWS Toolkit for Visual Studio Code을 설치합니다. 

JetBrains에 대한 이 문제를 해결하려면 [GitHub](https://github.com/aws/aws-toolkit-jetbrains/releases)에서 수동으로 AWS Toolkit for JetBrains을 설치합니다.

## IDE에서 개발 환경을 시작할 수 없습니다.
<a name="troubleshooting-ide-launch"></a>

VS 코드에 대한 이 문제를 해결하려면 최신 버전의 VS 코드 및 AWS Toolkit for Visual Studio Code이 설치되어 있는지 확인합니다. 최신 버전이 없는 경우 개발 환경을 업데이트하고 시작합니다. 자세한 내용은 [Amazon CodeCatalyst for VS Code](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/codecatalyst-service.html) 사용 설명서를 참조하세요.

JetBrains 에 대해 이 문제를 해결하려면 JetBrains 및 AWS Toolkit for JetBrains의 최신 버전이 설치되어 있는지 확인합니다. 최신 버전이 없는 경우 개발 환경을 업데이트하고 시작합니다. 자세한 내용은 [Amazon CodeCatalyst for JetBrains](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/codecatalyst-overview.html)를 참조하세요.

# devfile 문제 해결
<a name="devenvironments-devenvironments-devfile"></a>

CodeCatalyst의 devfile과 관련된 문제를 해결하려면 다음 섹션을 참조하세요. devfile에 대한 자세한 내용은 [개발 환경용 devfile 구성](devenvironment-devfile.md) 섹션을 참조하세요.

**Topics**
+ [내 개발 환경은 사용자 지정 devfile에서 사용자 지정 이미지를 구현한 경우에도 기본 범용 devfile을 사용합니다.](#troubleshooting-devenvironments-custom-image)
+ [프로젝트가 기본 범용 devfile을 사용하여 내 개발 환경에서 빌드되지 않습니다.](#troubleshooting-devenvironments-default-image)
+ [개발 환경용 리포지토리 devfile 이동](#troubleshooting-devenvironments-devfile-moving)
+ [devfile을 시작하는 데 문제가 있는 경우](#troubleshooting-devenvironments-devfile-recovery)
+ [devfile 상태를 확인하는 방법을 잘 모르겠습니다.](#troubleshooting-devenvironments-devfile-status)
+ [내 devfile이 최신 이미지에 제공된 도구와 호환되지 않습니다.](#troubleshooting-devenvironments-devfile-version)

## 내 개발 환경은 사용자 지정 devfile에서 사용자 지정 이미지를 구현한 경우에도 기본 범용 devfile을 사용합니다.
<a name="troubleshooting-devenvironments-custom-image"></a>

사용자 지정 devfile을 사용하는 개발 환경을 시작하는 동안 CodeCatalyst에 오류가 발생하면 개발 환경은 기본 범용 devfile로 기본 설정됩니다. 문제를 해결하려면 `/aws/mde/logs/devfile.log` 아래의 로그에서 정확한 오류를 확인할 수 있습니다. 로그(`/aws/mde/logs/devfileCommand.log`)에서 `postStart` 실행이 성공했는지 확인할 수도 있습니다.

## 프로젝트가 기본 범용 devfile을 사용하여 내 개발 환경에서 빌드되지 않습니다.
<a name="troubleshooting-devenvironments-default-image"></a>

문제를 해결하려면 사용자 지정 devfile을 사용하지 않는지 확인합니다. 사용자 지정 devfile을 사용하지 않는 경우 프로젝트의 소스 리포지토리에서 `devfile.yaml` 파일을 보고 오류를 찾아 수정합니다.

## 개발 환경용 리포지토리 devfile 이동
<a name="troubleshooting-devenvironments-devfile-moving"></a>

`/projects/devfile.yaml`의 기본 devfile을 소스 코드 리포지토리로 이동할 수 있습니다. devfile의 위치를 업데이트하려면 다음 명령을 사용합니다. `/aws/mde/mde start --location repository-name/devfile.yaml` 

## devfile을 시작하는 데 문제가 있는 경우
<a name="troubleshooting-devenvironments-devfile-recovery"></a>

devfile을 시작하는 데 문제가 있는 경우 복구 모드로 전환되므로 환경에 계속 연결하고 devfile을 수정할 수 있습니다. 복구 모드에 있는 동안 `/aws/mde/mde status` 실행에는 devfile의 위치가 포함되지 않습니다.

```
{
    "status": "STABLE"
}
```

`/aws/mde/logs`의 로그에서 오류를 확인하고, devfile을 수정하고, 다시 `/aws/mde/mde start` 실행을 시도할 수 있습니다.

## devfile 상태를 확인하는 방법을 잘 모르겠습니다.
<a name="troubleshooting-devenvironments-devfile-status"></a>

`/aws/mde/mde status`를 실행하여 devfile 상태를 확인할 수 있습니다. 이 명령을 실행한 후 다음 중 하나가 표시될 수 있습니다.
+ `{"status": "STABLE", "location": "devfile.yaml" }`

  이는 devfile이 정확함을 나타냅니다.
+ `{"status": "STABLE" }`

  이는 devfile을 시작할 수 없고 복구 모드로 전환되었음을 나타냅니다.

`/aws/mde/logs/devfile.log`의 로그에서 정확한 오류를 확인할 수 있습니다.

로그(`/aws/mde/logs/devfileCommand.log`)에서 `postStart` 실행이 성공했는지 확인할 수도 있습니다.

자세한 내용은 [개발 환경에 대한 범용 devfile 이미지 지정](devenvironment-universal-image.md) 섹션을 참조하세요.

## 내 devfile이 최신 이미지에 제공된 도구와 호환되지 않습니다.
<a name="troubleshooting-devenvironments-devfile-version"></a>

개발 환경에서 `devfile` 또는 `devfile postStart`는 `latest` 도구에 특정 프로젝트에 필요한 도구가 없는 경우 실패할 수 있습니다. 문제를 해결하려면 다음을 수행합니다.<a name="devenvironment-devfile-version"></a>

1. devfile로 이동합니다.

1. devfile에서 `latest` 대신 세분화된 이미지 버전으로 업데이트합니다. 내용은 다음처럼 보일 것입니다.

   ```
   components:
     - container:
         image: public.ecr.aws/amazonlinux/universal-image:1.0
   ```

1. 업데이트된 devfile을 사용하여 새 개발 환경을 생성합니다.

# 워크플로 관련 문제 해결
<a name="troubleshooting-workflows"></a>

다음 섹션을 참조하여 Amazon CodeCatalyst의 워크플로와 관련된 문제를 해결하세요. 워크플로에 대한 자세한 내용은 [워크플로를 사용하여 빌드, 테스트 및 배포워크플로를 사용하여 빌드, 테스트 및 배포](workflow.md) 섹션을 참조하세요.

**Topics**
+ ['Workflow is inactive' 메시지를 해결하려면 어떻게 해야 하나요?](#troubleshooting-workflows-inactive)
+ ['Workflow definition has *n* errors' 오류를 해결하려면 어떻게 해야 하나요?](#troubleshooting-workflows-asterisks)
+ ['Unable to locate credentials' 및 'ExpiredToken' 오류를 해결하려면 어떻게 해야 하나요?](#troubleshooting-workflows-auth-errors-eks)
+ ['Unable to connect to the server' 오류를 해결하려면 어떻게 해야 하나요?](#troubleshooting-workflows-unable-connect-eks)
+ [시각적 편집기에서 CodeDeploy 필드가 누락된 이유는 무엇인가요?](#troubleshooting-workflows-codedeploy)
+ [IAM 기능 오류를 해결하려면 어떻게 해야 하나요?](#troubleshooting-workflows-capabilities)
+ ['npm install' 오류를 해결하려면 어떻게 해야 하나요?](#troubleshooting-workflows-npm)
+ [여러 워크플로의 이름이 같은 이유는 무엇인가요?](#troubleshooting-workflows-name)
+ [워크플로 정의 파일을 다른 폴더에 저장할 수 있나요?](#troubleshooting-workflows-folder)
+ [워크플로에 작업을 순차적으로 추가하려면 어떻게 해야 하나요?](#troubleshooting-workflows-visual)
+ [워크플로가 성공적으로 검증되었지만 런타임에 실패하는 이유는 무엇인가요?](#troubleshooting-workflows-validation)
+ [자동 검색이 내 작업에 대한 보고서를 찾지 못함](#troubleshooting-reports-auto-discovery)
+ [성공 기준을 구성한 후 내 작업이 자동 검색된 보고서에 대한 작업이 실패해요.](#troubleshooting-success-auto-discovery)
+ [자동 검색이 내가 원하지 않는 보고서를 생성해요.](#troubleshooting-unwanted-auto-discovery)
+ [자동 검색이 단일 테스트 프레임워크에 대해 작은 보고서를 많이 생성함](#troubleshooting-reports-combined)
+ [CI/CD에 나열된 워크플로가 소스 리포지토리의 워크플로와 일치하지 않음](#troubleshooting-workflow-source)
+ [워크플로를 생성하거나 업데이트할 수 없음](#troubleshooting-workflows-branchrules)

## 'Workflow is inactive' 메시지를 해결하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-inactive"></a>

**문제**: CodeCatalyst 콘솔의 **CI/CD**, **워크플로**에서 워크플로가 다음 메시지와 함께 나타납니다.

`Workflow is inactive.`

이 메시지는 워크플로 정의 파일에 현재 사용 중인 브랜치에 적용되지 않는 트리거가 포함되어 있음을 나타냅니다. 예를 들어 워크플로 정의 파일에 `PUSH` 브랜치를 참조하는 `main` 트리거가 포함되어 있지만 현재 특성 브랜치에 있을 수 있습니다. 특성 브랜치에서 변경한 내용은 `main` 브랜치에 적용되지 않고 `main` 브랜치에서 워크플로 실행을 시작하지 않으므로 CodeCatalyst는 브랜치에서 워크플로를 해제하고 `Inactive`로 표시합니다.

**수정 방법:**

특성 브랜치에서 워크플로를 시작하려면 다음을 수행하면 됩니다．
+ 특성 브랜치의 워크플로 정의 파일에서 `Triggers` 섹션의 `Branches` 속성을 제거하여 다음과 같이 표시되도록 합니다.

  ```
  Triggers:
    - Type: PUSH
  ```

  이 구성을 사용하면 특성 브랜치를 포함한 모든 브랜치로 푸시할 때 트리거가 활성화됩니다. 트리거가 활성화되면 CodeCatalyst는 푸시하는 브랜치에 있는 워크플로 정의 파일과 소스 파일을 사용하여 워크플로 실행을 시작합니다.
+ 특성 브랜치의 워크플로 정의 파일에서 `Triggers` 섹션을 제거하고 워크플로를 수동으로 실행합니다.
+ 특성 브랜치의 워크플로 정의 파일에서 다른 브랜치(예시: `main` 등)가 아닌 특성 브랜치를 참조하도록 `PUSH` 섹션을 변경합니다.

**중요**  
변경 내용을 다시 `main` 브랜치에 병합하지 않으려는 경우에는 이러한 변경 내용을 커밋하지 않도록 주의하세요.

워크플로 정의 파일 편집에 대한 자세한 내용은 [워크플로 생성](workflows-create-workflow.md) 섹션을 참조하세요.

트리거에 대한 자세한 내용은 [트리거를 사용하여 워크플로 실행 자동 시작](workflows-add-trigger.md) 주제를 참조하세요.

## 'Workflow definition has *n* errors' 오류를 해결하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-asterisks"></a>

**문제**: 다음 오류 메시지 중 하나가 표시됩니다.

**오류 1:**

**CI/CD**, **워크플로** 페이지의 워크플로 이름 아래에 다음과 같은 메시지가 표시됩니다.

`Workflow definition has n errors`

**오류 2:**

워크플로를 편집하는 동안 **검증** 버튼을 선택하면 CodeCatalyst 콘솔 상단에 다음 메시지가 표시됩니다.

`The workflow definition has errors. Fix the errors and choose Validate to verify your changes.`

**오류 3:**

워크플로의 세부 정보 페이지로 이동한 후 **워크플로 정의** 필드에 다음 오류가 표시됩니다.

`n errors`

**수정 방법:** 
+ **CI/CD**를 선택하고 **워크플로**를 선택한 다음 오류가 발생한 워크플로의 이름을 선택합니다. 상단 근처의 **워크플로 정의** 필드에서 오류에 대한 링크를 선택합니다. 페이지 하단에 오류에 대한 자세한 내용이 표시됩니다. 오류의 문제 해결 팁에 따라 문제를 해결합니다.
+ 워크플로 정의 파일이 YAML 파일인지 확인합니다.
+ 워크플로 정의 파일의 YAML 속성이 올바른 수준에서 중첩되어 있는지 확인합니다. 워크플로 정의 파일에서 속성을 중첩하는 방법을 확인하려면 [워크플로 YAML 정의](workflow-reference.md) 섹션을 참조하거나 [워크플로에 작업 추가](workflows-add-action.md) 섹션에서 연결된 작업 설명서를 참조하세요.
+ 별표(`*`) 및 기타 특수 문자가 올바르게 이스케이프 처리되었는지 확인합니다. 이스케이프 처리하려면 작은따옴표 또는 큰따옴표를 추가하세요. 예제:

  ```
  Outputs:      
    Artifacts:
      - Name: myartifact
        Files:
          - "**/*"
  ```

  워크플로 정의 파일의 특수 문자에 대한 자세한 내용은 [구문 지침 및 규칙](workflow-reference.md#workflow.terms.syntax.conv) 섹션을 참조하세요.
+ 워크플로 정의 파일의 YAML 속성이 올바른 대문자를 사용하는지 확인합니다. 대/소문자 규칙에 대한 자세한 내용은 [구문 지침 및 규칙](workflow-reference.md#workflow.terms.syntax.conv) 섹션을 참조하세요. 각 속성의 올바른 대/소문자를 확인하려면 [워크플로 YAML 정의](workflow-reference.md) 섹션을 참조하거나 [워크플로에 작업 추가](workflows-add-action.md) 섹션에서 연결된 작업 설명서를 참조하세요.
+ 워크플로 정의 파일에 `SchemaVersion` 속성이 있고 올바른 버전으로 설정되어 있는지 확인합니다. 자세한 내용은 [SchemaVersion](workflow-reference.md#workflow.schemaversion) 섹션을 참조하세요.
+ 워크플로 정의 파일의 `Triggers` 섹션에 필요한 모든 속성이 포함되어 있는지 확인합니다. 필요한 속성을 확인하려면 [시각적 편집기](workflow.md#workflow.editors)에서 트리거를 선택하고 누락된 정보가 있는 필드를 찾거나 [Triggers](workflow-reference.md#triggers-reference)에서 트리거 참조 문서를 참조하세요.
+ 워크플로 정의 파일의 `DependsOn` 속성이 올바르게 구성되어 있고 순환 종속성을 유발하지 않는지 확인합니다. 자세한 내용은 [작업 순서 지정](workflows-depends-on.md) 섹션을 참조하세요.
+ 워크플로 정의 파일의 `Actions` 섹션에 적어도 하나의 작업이 포함되어 있는지 확인합니다. 자세한 내용은 [작업](workflow-reference.md#actions-reference) 섹션을 참조하세요.
+ 각 작업에 모든 필수 속성이 포함되어 있는지 확인합니다. 필요한 속성을 확인하려면 [시각적 편집기](workflow.md#workflow.editors)에서 작업을 선택하고 정보가 누락된 필드를 찾거나 [워크플로에 작업 추가](workflows-add-action.md) 섹션에서 연결된 작업 설명서를 참조하세요.
+ 모든 입력 아티팩트에 해당하는 출력 아티팩트가 있는지 확인합니다. 자세한 내용은 [출력 아티팩트 정의](workflows-working-artifacts-output.md) 섹션을 참조하세요.
+ 한 작업에서 정의된 변수를 다른 작업에서 사용할 수 있도록 내보내야 합니다. 자세한 내용은 [다른 작업에서 사용할 수 있도록 변수 내보내기](workflows-working-with-variables-export-input.md) 섹션을 참조하세요.

## 'Unable to locate credentials' 및 'ExpiredToken' 오류를 해결하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-auth-errors-eks"></a>

**문제**: [자습서: Amazon EKS에 애플리케이션 배포](deploy-tut-eks.md)를 진행하는 동안 개발 컴퓨터의 터미널 창에 다음 오류 메시지 중 하나 또는 둘이 표시됩니다.

`Unable to locate credentials. You can configure credentials by running "aws configure".`

`ExpiredToken: The security token included in the request is expired` 

**수정 방법:**

이러한 오류는 AWS 서비스에 액세스하는 데 사용하는 자격 증명이 만료되었음을 나타냅니다. 이 경우 `aws configure` 명령을 실행하지 않습니다. 대신 다음 지침에 따라 AWS 액세스 키와 세션 토큰을 새로 고칩니다.

**AWS 액세스 키 및 세션 토큰을 새로 고치려면**

1. 사용 중인 사용자의 AWS 액세스 포털 URL, 사용자 이름 및 암호가 있는지 확인하고 Amazon EKS 자습서()를 완료하세요`codecatalyst-eks-user`. 자습서의 [1단계: 개발 머신 설정](deploy-tut-eks.md#deploy-tut-eks-dev-env-create)를 완료했다면 이러한 항목이 구성되었을 것입니다.
**참고**  
이 정보가 없는 경우 IAM Identity Center의 `codecatalyst-eks-user` 세부 정보 페이지로 이동하여 **암호 재설정**, **일회용 암호 생성 [...]**을 선택한 후 **암호 재설정**을 다시 선택하면 화면에 해당 정보가 표시됩니다.

1. 다음 중 하나를 수행하세요.
   +  AWS 액세스 포털 URL을 브라우저의 주소 표시줄에 붙여 넣습니다.

     또는
   +  AWS 액세스 포털 페이지가 이미 로드된 경우 새로 고칩니다.

1. 아직 로그인하지 않은 경우 `codecatalyst-eks-user`의 사용자 이름과 암호로 로그인합니다.

1. **AWS 계정**을 선택한 다음 `codecatalyst-eks-user` 사용자 및 권한 세트를 할당한  AWS 계정 의 이름을 선택합니다.

1. 권한 세트 이름(`codecatalyst-eks-permission-set`) 옆에서 **명령줄 또는 프로그래밍 액세스**를 선택합니다.

1. 페이지 중간에 있는 명령을 복사합니다. 다음처럼 보일 것입니다.

   ```
   export AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" 
   export AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" 
   export AWS_SESSION_TOKEN="session-token"
   ```

   ...여기서 *세션 토큰*은 긴 무작위 문자열입니다.

1. 개발 시스템의 터미널 프롬프트에 명령을 붙여넣고 Enter 키를 누릅니다.

   새 키와 세션 토큰이 로드됩니다.

   이제 자격 증명을 새로 고쳤습니다. 이제 AWS CLI`eksctl`, 및 `kubectl` 명령이 작동합니다.

## 'Unable to connect to the server' 오류를 해결하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-unable-connect-eks"></a>

**문제**: [자습서: Amazon EKS에 애플리케이션 배포](deploy-tut-eks.md)에 설명된 자습서를 진행하는 동안 개발 시스템의 터미널 창에 다음과 유사한 오류 메시지가 표시됩니다.

`Unable to connect to the server: dial tcp: lookup long-string.gr7.us-west-2.eks.amazonaws.com on 1.2.3.4:5: no such host`

**수정 방법:**

이 오류는 일반적으로 `kubectl` 유틸리티가 Amazon EKS 클러스터에 연결하는 데 사용하는 자격 증명이 만료되었음을 나타냅니다. 이 문제를 해결하려면 터미널 프롬프트에 다음 명령을 입력하여 자격 증명을 새로 고칩니다.

```
aws eks update-kubeconfig --name codecatalyst-eks-cluster --region us-west-2
```

위치:
+ *codecatalyst-eks-cluster*는 Amazon EKS 클러스터의 이름으로 대체됩니다.
+ *us-west-2*는 클러스터가 배포된 AWS 리전으로 대체됩니다.

## 시각적 편집기에서 CodeDeploy 필드가 누락된 이유는 무엇인가요?
<a name="troubleshooting-workflows-codedeploy"></a>

**문제**: [Amazon ECS에 배포](deploy-action-ecs.md) 작업을 사용 중인데 워크플로의 시각적 편집기에서 **CodeDeploy AppSpec**과 같은 CodeDeploy 필드가 보이지 않습니다. 이 문제는 **서비스** 필드에서 지정한 Amazon ECS 서비스가 블루/그린 배포를 수행하도록 구성되지 않았기 때문에 발생할 수 있습니다.

**수정 방법:** 
+ **Amazon ECS에 배포** 작업의 **구성** 탭에서 다른 Amazon ECS 서비스를 선택합니다. 자세한 내용은 [워크플로를 사용하여 Amazon ECS에 배포](deploy-action-ecs.md) 섹션을 참조하세요.
+ 블루/그린 배포를 수행하기 위해 선택한 Amazon ECS 서비스를 구성합니다. 자세한 내용은 *Amazon Elastic 컨테이너 서비스 개발자 안내서*의 [CodeDeploy로 제어되는 블루/그린 배포](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-bluegreen.html)를 참조하세요.

## IAM 기능 오류를 해결하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-capabilities"></a>

**문제**: [CloudFormation 스택 배포](deploy-action-cfn.md) 작업을 사용하고 있으며 **스택 배포 CloudFormation ** 작업의 로그`##[error] requires capabilities: [capability-name]`에가 표시됩니다.

**가능한 해결 방법**: 다음 절차를 완료하여 워크플로 정의 파일에 기능을 추가합니다. IAM 기능에 대한 자세한 내용은 [IAM 사용 설명서의 CloudFormation 템플릿에서 IAM 리소스 확인을](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities) 참조하세요. ** 

------
#### [ Visual ]

**시각적 편집기를 사용하여 IAM 기능을 추가하려면 다음을 수행하세요.**

1. [https://codecatalyst.aws/](https://codecatalyst.aws/)에서 CodeCatalyst 콘솔을 엽니다.

1. 프로젝트를 선택합니다.

1. 탐색 창에서 **CI/CD**를 선택한 다음 **워크플로**를 선택합니다.

1. 워크플로의 이름을 선택합니다. 소스 리포지토리 또는 워크플로가 정의된 브랜치 이름을 기준으로 필터링하거나, 워크플로 이름 또는 상태를 기준으로 필터링할 수 있습니다.

1. **편집**을 선택합니다.

1. **비주얼**을 선택합니다.

1. 워크플로 다이어그램에서 ** CloudFormation 스택 배포** 작업을 선택합니다.

1. **구성** 탭을 선택합니다.

1. 하단에서 **고급 - 선택 사항**을 선택합니다.

1. **기능** 드롭다운 목록에서 오류 메시지에 언급된 기능 옆에 있는 확인란을 선택합니다. 목록에서 기능을 사용할 수 없는 경우 YAML 편집기를 사용하여 추가합니다.

1. (선택 사항) 커밋하기 전에 워크플로의 YAML 코드를 검증하려면 **검증**을 선택합니다.

1. **커밋**을 선택하고 커밋 메시지를 입력한 다음 **커밋**을 다시 선택합니다.

1. 새 워크플로 실행이 자동으로 시작되지 않으면 워크플로를 수동으로 실행하여 변경 사항으로 오류가 수정되는지 확인합니다. 워크플로를 수동으로 실행하는 방법에 대한 자세한 내용 [워크플로 수동 실행 시작](workflows-manually-start.md) 섹션을 참조하세요.

------
#### [ YAML ]

**YAML 편집기를 사용하여 IAM 기능을 추가하려면 다음을 수행하세요.**

1. [https://codecatalyst.aws/](https://codecatalyst.aws/)에서 CodeCatalyst 콘솔을 엽니다.

1. 프로젝트를 선택합니다.

1. 탐색 창에서 **CI/CD**를 선택한 다음 **워크플로**를 선택합니다.

1. 워크플로의 이름을 선택합니다. 소스 리포지토리 또는 워크플로가 정의된 브랜치 이름을 기준으로 필터링하거나, 워크플로 이름 또는 상태를 기준으로 필터링할 수 있습니다.

1. **편집**을 선택합니다.

1. **YAML**을 선택합니다.

1. ** CloudFormation 스택 배포** 작업에서 다음과 같은 `capabilities` 속성을 추가합니다.

   ```
   DeployCloudFormationStack:
     Configuration:
       capabilities: capability-name
   ```

   *capability-name*을 오류 메시지에 표시된 IAM 기능의 이름으로 바꿉니다. 여러 기능을 나열하려면 공백 없이 쉽표를 사용하세요. 자세한 내용은 ['스 CloudFormation 택 배포' 작업 YAML](deploy-action-ref-cfn.md)의 `capabilities` 속성에 관한 설명을 참조하세요.

1. (선택 사항) 커밋하기 전에 워크플로의 YAML 코드를 검증하려면 **검증**을 선택합니다.

1. **커밋**을 선택하고 커밋 메시지를 입력한 다음 **커밋**을 다시 선택합니다.

1. 새 워크플로 실행이 자동으로 시작되지 않으면 워크플로를 수동으로 실행하여 변경 사항으로 오류가 수정되는지 확인합니다. 워크플로를 수동으로 실행하는 방법에 대한 자세한 내용 [워크플로 수동 실행 시작](workflows-manually-start.md) 섹션을 참조하세요.

------

## 'npm install' 오류를 해결하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-npm"></a>

**문제**: [AWS CDK 배포 작업](cdk-dep-action.md) 또는 [AWS CDK 부트스트랩 작업](cdk-boot-action.md)이 `npm install` 오류가 발생하여 실패합니다. 이 오류는 작업에서 액세스할 수 없는 프라이빗 노드 패키지 관리자(npm) 레지스트리에 AWS CDK 앱 종속성을 저장하기 때문에 발생할 수 있습니다.

**수정 방법**: 다음 지침에 따라 추가 레지스트리 및 인증 정보로 AWS CDK 앱의 `cdk.json` 파일을 업데이트합니다.

**시작하기 전 준비 사항**

1. 인증 정보에 대한 보안 암호를 생성합니다. 명확한 텍스트에 해당하는 내용을 제공하는 대신 `cdk.json` 파일에서 이러한 보안 암호를 참조하게 됩니다. 보안 암호를 생성하려면 다음을 수행하세요.

   1. [https://codecatalyst.aws/](https://codecatalyst.aws/)에서 CodeCatalyst 콘솔을 엽니다.

   1. 프로젝트를 선택합니다.

   1. 탐색 창에서 **CI/CD**를 선택한 후, **보안 암호**를 선택합니다.

   1. 다음 속성을 가진 두 개의 보안 암호를 다시 생성합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/codecatalyst/latest/userguide/troubleshooting-workflows.html)

      보안 암호에 대한 자세한 내용은 [보안 암호를 사용하여 데이터 마스킹](workflows-secrets.md) 섹션을 참조하세요.

1. 보안 암호를 AWS CDK 작업에 환경 변수로 추가합니다. 이 작업은 변수가 실행될 때 변수를 실제 값으로 바꿉니다. 보안 암호를 추가하려면 다음을 수행하세요.

   1. 탐색 창에서 **CI/CD**를 선택한 다음 **워크플로**를 선택합니다.

   1. 워크플로의 이름을 선택합니다. 소스 리포지토리 또는 워크플로가 정의된 브랜치 이름을 기준으로 필터링하거나, 워크플로 이름 또는 상태를 기준으로 필터링할 수 있습니다.

   1. **편집**을 선택합니다.

   1. **비주얼**을 선택합니다.

   1. 워크플로 다이어그램에서 AWS CDK 작업을 선택합니다.

   1. **입력** 탭을 선택합니다.

   1. 다음 속성을 가진 두 변수를 추가합니다.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/codecatalyst/latest/userguide/troubleshooting-workflows.html)

      이제 보안 암호에 대한 참조가 포함된 두 개의 변수가 생겼습니다.

   이제 워크플로 정의 파일 YAML 코드는 다음과 비슷하게 보일 것입니다.
**참고**  
다음 코드 샘플은 **AWS CDK 부트스트랩** 작업에서 가져온 것으로 **AWS CDK 배포** 작업은 비슷한 내용입니다.

   ```
   Name: CDK_Bootstrap_Action
   SchemaVersion: 1.0
   Actions:
     CDKBootstrapAction:
       Identifier: aws/cdk-bootstrap@v2
       Inputs:
         Variables:
           - Name: NPMUSER
             Value: ${Secrets.npmUsername}
           - Name: NPMTOKEN
             Value: ${Secrets.npmAuthToken}
         Sources:
           - WorkflowSource
       Environment:
         Name: Dev2
         Connections:
           - Name: account-connection
             Role: codecatalystAdmin
       Configuration:
         Parameters:
           Region: "us-east-2"
   ```

   이제 `cdk.json` 파일에서 `NPMUSER` 및 `NPMTOKEN` 변수를 사용할 준비가 되었습니다. 다음 절차로 이동합니다.

**cdk.json 파일을 업데이트하려면 다음을 수행하세요.**

1.  AWS CDK 프로젝트의 루트 디렉터리로 변경하고 `cdk.json` 파일을 엽니다.

1. `"app":` 속성을 찾아 *빨간색 이탤릭체*로 표시된 코드를 포함하도록 변경합니다.
**참고**  
다음 샘플 코드는 TypeScript 프로젝트에서 가져온 것입니다. JavaScript 프로젝트를 사용하는 경우 코드는 동일하지는 않지만 비슷하게 보일 것입니다.

   ```
   {
     "app": "npm set registry=https://your-registry/folder/CDK-package/ --userconfig .npmrc && npm set //your-registry/folder/CDK-package/:always-auth=true --userconfig .npmrc && npm set //your-registry/folder/CDK-package/:_authToken=\"${NPMUSER}\":\"${NPMTOKEN}\" && npm install  && npx ts-node --prefer-ts-exts bin/hello-cdk.ts|js",
     "watch": {
       "include": [
         "**"
       ],
       "exclude": [
         "README.md",
         "cdk*.json",
         "**/*.d.ts",
         "**/*.js",
         "tsconfig.json",
         "package*.json",
   ...
   ```

1. *빨간색 이탤릭체*로 강조 표시된 코드에서
   + 프라이빗 레지스트리의 AWS CDK 프로젝트 종속성 경로가 있는 *your-registry/folder/CDK-package/*.
   + *hello-cdk.ts\$1.js*를 엔트리포인트 파일 이름으로 바꿉니다. 이 파일은 사용 중인 언어에 따라 `.ts`(TypeScript) 또는 `.js`(JavaScript) 파일일 수 있습니다.
**참고**  
이 작업은 **보안 암호**에서 지정한 npm 사용자 이름 및 액세스 토큰으로 *NPMUSER* 및 *NPMTOKEN* 변수를 바꿉니다.

1. `cdk.json` 파일을 저장합니다.

1. 작업을 수동으로 다시 실행하여 변경한 내용으로 오류가 해결되는지 확인합니다. 수동으로 작업을 실행하는 방법에 대한 자세한 내용은은 [워크플로 수동 실행 시작](workflows-manually-start.md) 섹션을 참조하세요.

## 여러 워크플로의 이름이 같은 이유는 무엇인가요?
<a name="troubleshooting-workflows-name"></a>



워크플로는 리포지토리당 브랜치별로 저장됩니다. 서로 다른 브랜치에 있는 두 개의 워크플로가 같은 이름을 가질 수 있습니다. 워크플로 페이지에서 브랜치 이름을 보고 같은 이름의 워크플로를 구분할 수 있습니다. 자세한 내용은 [Amazon CodeCatalyst의 브랜치를 사용하여 소스 코드 작업 구성](source-branches.md) 섹션을 참조하세요.

![\[워크플로 브랜치\]](http://docs.aws.amazon.com/ko_kr/codecatalyst/latest/userguide/images/flows/workflow-branch.png)


## 워크플로 정의 파일을 다른 폴더에 저장할 수 있나요?
<a name="troubleshooting-workflows-folder"></a>

아니요, 모든 워크플로 정의 파일은 `.codecatalyst/workflows` 폴더 또는 해당 폴더의 하위 폴더에 저장해야 합니다. 여러 논리 프로젝트가 있는 모노 리포지토리를 사용하는 경우 모든 워크플로 정의 파일을 `.codecatalyst/workflows` 폴더 또는 그 하위 폴더 중 하나에 배치한 다음 트리거 내부의 **파일 변경됨** 필드(시각적 편집기) 또는 `FilesChanged` 속성(YAML 편집기)을 사용하여 지정된 프로젝트 경로에서 워크플로를 자동으로 트리거합니다. 자세한 내용은 [워크플로에 트리거 추가](workflows-add-trigger-add.md) 및 [예시: 푸시, 브랜치 및 파일이 있는 트리거](workflows-add-trigger-examples.md#workflows-add-trigger-examples-push-multi) 섹션을 참조하세요.

## 워크플로에 작업을 순차적으로 추가하려면 어떻게 해야 하나요?
<a name="troubleshooting-workflows-visual"></a>

기본적으로 워크플로에 작업을 추가하면 종속성이 없으며 다른 작업과 병렬로 실행됩니다.

작업을 순서대로 정렬하려면 `DependsOn` 필드를 설정하여 다른 작업에 대한 종속성을 설정할 수 있습니다. 다른 작업의 결과물인 아티팩트나 변수를 사용하도록 작업을 구성할 수도 있습니다. 자세한 내용은 [작업 순서 지정](workflows-depends-on.md) 섹션을 참조하세요.

## 워크플로가 성공적으로 검증되었지만 런타임에 실패하는 이유는 무엇인가요?
<a name="troubleshooting-workflows-validation"></a>

`Validate` 버튼을 사용하여 워크플로를 검증했지만 워크플로가 검증에 실패했다면 검사기의 제한 때문일 수 있습니다.

워크플로 구성에서 보안 암호, 환경 또는 플릿과 같은 CodeCatalyst 리소스에 대한 참조 오류는 커밋 중에 등록되지 않습니다. 유효하지 않은 참조가 사용된 경우 워크플로가 실행될 때만 오류가 식별됩니다. 마찬가지로 필수 필드가 누락되었거나 작업 속성에 오타가 있는 등 작업 구성에 오류가 있는 경우 워크플로가 실행될 때만 오류가 식별됩니다. 자세한 내용은 [워크플로 생성](workflows-create-workflow.md) 섹션을 참조하세요.

## 자동 검색이 내 작업에 대한 보고서를 찾지 못함
<a name="troubleshooting-reports-auto-discovery"></a>

**문제:** 테스트를 실행하는 작업에 대해 자동 검색을 구성했지만 CodeCatalyst에서 보고서를 검색하지 못합니다.

**가능한 해결 방법:** 이는 여러 가지 문제로 인해 발생할 수 있습니다. 다음 해결 방법 중 하나 이상을 시도해 보세요.
+ 테스트를 실행하는 데 사용되는 도구가 CodeCatalyst가 이해하는 형식 중 하나로 출력을 생성하는지 확인합니다. 예를 들어, `pytest`를 통해 CodeCatalyst가 테스트 및 코드 커버리지 보고서를 검색할 수 있도록 하려면 다음 인수를 포함하세요.

  ```
  --junitxml=test_results.xml --cov-report xml:test_coverage.xml
  ```

  자세한 내용은 [품질 보고서 유형](test-workflow-actions.md#test-reporting) 섹션을 참조하세요.
+ 출력의 파일 확장자가 선택한 형식과 일치하는지 확인합니다. 예를 들어, `JUnitXML` 형식으로 결과를 생성하도록 `pytest`를 구성하는 경우 파일 확장자가 `.xml`인지 확인하세요. 자세한 내용은 [품질 보고서 유형](test-workflow-actions.md#test-reporting) 섹션을 참조하세요.
+ 특정 폴더를 일부러 제외하지 않는 한 `IncludePaths`가 전체 파일 시스템(`**/*`)을 포함하도록 구성되었는지 확인합니다. 마찬가지로, 보고서가 위치할 것으로 예상되는 디렉터리를 제외하지 않도록 `ExcludePaths`가 구성되어 있는지 확인합니다.
+ 특정 출력 파일을 사용하도록 보고서를 수동으로 구성한 경우에는 자동 검색에서 제외됩니다. 자세한 내용은 [품질 보고서 YAML 예시](test-config-action.md#test.success-criteria-example) 섹션을 참조하세요.
+ 출력이 생성되기 전에 작업이 실패하여 자동 검색에서 보고서를 찾지 못할 수도 있습니다. 예를 들어 단위 테스트가 실행되기 전에 빌드가 실패했을 수 있습니다.

## 성공 기준을 구성한 후 내 작업이 자동 검색된 보고서에 대한 작업이 실패해요.
<a name="troubleshooting-success-auto-discovery"></a>

**문제:** 자동 검색을 활성화하고 성공 기준을 구성하면 일부 보고서가 성공 기준을 충족하지 못하여 결과적으로 작업이 실패합니다.

**가능한 해결 방법:** 이 문제를 해결하려면 다음 솔루션 중 하나 이상을 시도해 보세요.
+ `IncludePaths` 또는 `ExcludePaths`를 수정하여 관심 없는 보고서를 제외합니다.
+ 모든 보고서가 전달되도록 성공 기준을 업데이트합니다. 예를 들어, 라인 커버리지가 50%인 보고서와 70%인 보고서 두 개가 발견된 경우 최소 라인 커버리지를 50%로 조정합니다. 자세한 내용은 [성공 기준](test-best-practices.md#test.best-success-criteria) 섹션을 참조하세요.
+ 실패한 보고서를 수동으로 구성된 보고서로 전환합니다. 이렇게 하면 특정 보고서에 대해 다양한 성공 기준을 구성할 수 있습니다. 자세한 내용은 [보고서의 성공 기준 구성](test-config-action.md#test.success-criteria) 섹션을 참조하세요.

## 자동 검색이 내가 원하지 않는 보고서를 생성해요.
<a name="troubleshooting-unwanted-auto-discovery"></a>

**문제:** 자동 검색을 활성화하면 원하지 않는 보고서가 생성됩니다. 예를 들어, CodeCatalyst는 `node_modules`에 저장된 애플리케이션의 종속성에 포함된 파일에 대한 코드 커버리지 보고서를 생성합니다.

**가능한 해결 방법:** 원치 않는 파일을 제외하도록 `ExcludePaths` 구성을 조정할 수 있습니다. 예를 들어, `node_modules`를 제외하려면 `node_modules/**/*`를 추가합니다. 자세한 내용은 [경로 포함/제외](test-best-practices.md#test.best-include-exclude) 섹션을 참조하세요.

## 자동 검색이 단일 테스트 프레임워크에 대해 작은 보고서를 많이 생성함
<a name="troubleshooting-reports-combined"></a>

**문제:** 특정 테스트 및 코드 커버리지 보고 프레임워크를 사용할 때 자동 검색이 많은 수의 보고서를 생성하는 것을 발견했습니다. 예를 들어, [Maven Surefire 플러그인](https://maven.apache.org/surefire/maven-surefire-plugin/)을 사용할 때 자동 검색은 각 테스트 클래스에 대해 서로 다른 보고서를 생성합니다.

**가능한 해결 방법:** 프레임워크에서 출력을 단일 파일로 집계할 수 있습니다. 예를 들어, Maven Surefire 플러그인을 사용하는 경우 `npx junit-merge`를 사용하여 파일을 수동으로 집계할 수 있습니다. 전체 표현식은 다음과 같습니다.

```
mvn test; cd test-package-path/surefire-reports && npx junit-merge -d ./ && rm *Test.xml
```

## CI/CD에 나열된 워크플로가 소스 리포지토리의 워크플로와 일치하지 않음
<a name="troubleshooting-workflow-source"></a>

**문제:** **CI/CD**, **워크플로** 페이지에 표시된 워크플로가 [소스 리포지토리](source.md)의 `~/.codecatalyst/workflows/` 폴더에 있는 워크플로와 일치하지 않습니다. 다음과 같은 불일치가 발생할 수 있습니다.
+ 워크플로 페이지에 **워크플로**가 표시되지만 해당 워크플로 정의 파일이 소스 리포지토리에 존재하지 않습니다.
+ 워크플로 정의 파일이 소스 리포지토리에 존재하지만 해당 워크플로가 **워크플로** 페이지에 나타나지 않습니다.
+ 워크플로는 소스 리포지토리와 **워크플로** 페이지에 모두 존재하지만 서로 다릅니다.

**워크플로** 페이지를 새로 고칠 시간이 없거나 워크플로 할당량을 초과한 경우 이 문제가 발생할 수 있습니다.

**수정 방법:**
+ 대기합니다. 일반적으로 소스에 커밋한 후 2\$13초 정도 기다려야 **워크플로** 페이지에서 변경 내용을 볼 수 있습니다.
+ 워크플로 할당량을 초과한 경우 다음 중 하나를 수행하세요.
**참고**  
워크플로 할당량을 초과했는지 확인하려면 [CodeCatalyst의 워크플로 할당량](workflows-quotas.md)을 검토하고 문서화된 할당량을 소스 리포지토리 또는 **워크플로** 페이지의 워크플로와 교차 확인합니다. 할당량이 초과되었음을 나타내는 오류 메시지는 없으므로 직접 조사해야 합니다.
  + **스페이스당 최대 워크플로 수** 할당량을 초과한 경우 일부 워크플로를 삭제한 다음 워크플로 정의 파일에 대해 테스트 커밋을 수행합니다. 테스트 커밋의 예시로는 파일에 스페이스를 추가하는 것이 있습니다.
  + **최대 워크플로 정의 파일 크기** 할당량을 초과한 경우에는 워크플로 정의 파일을 변경하여 길이를 줄입니다.
  + **단일 소스 이벤트 할당량에서 처리되는 워크플로 파일의 최대 개수**를 초과한 경우에는 여러 번 테스트 커밋을 수행합니다. 각 커밋에서 최대 워크플로 수보다 적은 수의 워크플로를 수정하세요.

## 워크플로를 생성하거나 업데이트할 수 없음
<a name="troubleshooting-workflows-branchrules"></a>

**문제:** 워크플로를 만들거나 업데이트하고 싶은데 변경 내용을 커밋하려고 할 때 오류가 발생합니다.

**가능한 해결 방법:** 프로젝트 또는 스페이스의 역할에 따라 코드를 푸시하여 프로젝트의 리포지토리를 소싱할 권한이 없을 수 있습니다. 워크플로용 YAML 파일은 리포지토리에 저장됩니다. 자세한 내용은 [워크플로 정의 파일](workflows-concepts.md#workflows-concepts-workflows-def) 섹션을 참조하세요. **스페이스 관리자** 역할, **프로젝트 관리자** 역할 및 **기여자** 역할은 모두 프로젝트의 리포지토리에 코드를 커밋하고 푸시할 수 있는 권한이 있습니다.

**기여자** 역할이 있지만 특정 브랜치에서 워크플로 YAML 변경 내용을 만들거나 커밋할 수 없는 경우 해당 브랜치에 대해 해당 역할이 있는 사용자가 특정 브랜치에 코드를 푸시하지 못하도록 하는 브랜치 규칙이 구성되어 있을 수 있습니다. 다른 브랜치에서 워크플로를 생성하거나 다른 브랜치에 변경 사항을 커밋해 보세요. 자세한 내용은 [브랜치 규칙을 사용하여 브랜치에 대한 작업 관리](source-branches-branch-rules.md) 섹션을 참조하세요.

# 문제 관련 문제 해결
<a name="troubleshooting-issues"></a>

다음은 CodeArtifact에서 일반적으로 발생하는 issues 문제를 해결하는 데 유용한 정보입니다.

**Topics**
+ [내 문제에 대한 담당자를 선택할 수 없습니다.](#troubleshooting-issues-assignees)

## 내 문제에 대한 담당자를 선택할 수 없습니다.
<a name="troubleshooting-issues-assignees"></a>

**문제:** 문제를 생성할 때 담당자 목록이 비어 있습니다.

**가능한 해결 방법:** 담당자 목록은 프로젝트의 멤버로 등록된 CodeCatalyst 사용자에게 직접 연결됩니다. 사용자 프로파일 액세스가 제대로 작동하는지 확인하려면 프로파일 아이콘을 선택한 다음 **사용자 프로파일**을 선택합니다. 사용자 프로파일 정보가 채워지지 않으면 상태 보고서에서 인시던트가 있는지 확인하세요. 채워지면 서비스 티켓을 제출합니다.

# CodeCatalyst의 검색 문제 해결
<a name="troubleshooting-search"></a>

다음 섹션을 참조하여 CodeCatalyst의 검색과 관련된 문제를 해결합니다. 워크플로에 대한 자세한 내용은 [CodeCatalyst에서 코드, 문제, 프로젝트 및 사용자 검색코드, 문제, 프로젝트 및 사용자 검색](search.md) 섹션을 참조하세요.

**Topics**
+ [프로젝트에서 사용자를 찾을 수 없음](#troubleshooting-search-users)
+ [프로젝트 또는 공간에서 원하는 것이 보이지 않음](#troubleshooting-missing-results)
+ [페이지를 탐색할 때 검색 결과 수가 계속 변경됨](#troubleshooting-search-results)
+ [검색 쿼리가 완료되지 않음](#troubleshooting-requests-limits)

## 프로젝트에서 사용자를 찾을 수 없음
<a name="troubleshooting-search-users"></a>

**문제:** 사용자의 세부 정보를 보려고 하면 프로젝트에 해당 사용자의 정보가 표시되지 않습니다.

**가능한 해결 방법:** 검색은 현재 프로젝트 내 사용자 검색을 지원하지 않습니다. 스페이스에 액세스할 수 있는 사용자를 검색하려면 빠른 검색에서 **이 스페이스**로 전환하거나 고급 쿼리 언어를 사용하여 지정한 프로젝트 필터를 제거하세요.

## 프로젝트 또는 공간에서 원하는 것이 보이지 않음
<a name="troubleshooting-missing-results"></a>

**문제:** 특정 정보를 검색하려고 해도 결과가 나타나지 않습니다.

**가능한 해결 방법:** 콘텐츠 업데이트는 검색 결과에서 업데이트하는 데 몇 초 정도 걸릴 수 있습니다. 대규모 업데이트는 몇 분 정도 걸릴 수 있습니다.

최근에 업데이트되지 않은 리소스의 경우 검색 범위를 좁혀야 할 수도 있습니다. 키워드를 더 추가하거나 고급 쿼리 언어를 사용하여 구체화할 수 있습니다. 쿼리 구체화에 대한 자세한 내용은 [검색 쿼리 구체화](search.md#search-query-language-examples) 섹션을 참조하세요.

## 페이지를 탐색할 때 검색 결과 수가 계속 변경됨
<a name="troubleshooting-search-results"></a>

**문제:** 다음 페이지로 이동하면 검색 결과 수가 변경되는 것처럼 보여서 총 검색 결과 수가 얼마나 되는지 명확하지 않습니다.

**가능한 해결 방법:** 검색 결과 페이지를 탐색할 때 검색어와 일치하는 검색 결과의 수가 변경되는 것을 볼 수 있습니다. 페이지를 탐색할 때 검색된 일치 항목의 수가 더 정확하게 반영되도록 결과 수가 업데이트될 수 있습니다.

결과를 탐색할 때 **'테스트'에 대한 결과 없음** 메시지가 표시될 수 있습니다. 나머지 결과에 액세스할 수 없는 경우 메시지가 표시됩니다.

## 검색 쿼리가 완료되지 않음
<a name="troubleshooting-requests-limits"></a>

**문제:** 검색 쿼리 결과가 표시되지 않고 너무 오래 걸리는 것 같습니다.

**가능한 해결 방법:** 프로그램적으로 또는 팀 활동량이 많아서 스페이스에서 동시에 많은 검색이 이루어지고 있는 경우 검색이 완료되지 않을 수 있습니다. 프로그래밍 검색을 실행하는 경우 검색을 일시 중지하거나 줄입니다. 그렇지 않으면 몇 초 후에 다시 시도합니다.

# 확장 프로그램 관련 문제 해결
<a name="troubleshooting-extensions"></a>

다음 섹션을 참조하여 CodeCatalyst의 확장 프로그램과 관련된 문제를 해결합니다. 확장 프로그램에 대한 자세한 내용은 [CodeCatalyst에서 확장 프로그램이 있는 프로젝트에 기능 추가확장 프로그램이 있는 프로젝트에 기능 추가](extensions.md) 섹션을 참조하세요.

**Topics**
+ [연결된 타사 리포지토리의 변경 내용을 보거나 해당 변경 결과를 검색할 수 없습니다.](#troubleshooting-detect-3p-changes)

## 연결된 타사 리포지토리의 변경 내용을 보거나 해당 변경 결과를 검색할 수 없습니다.
<a name="troubleshooting-detect-3p-changes"></a>

**문제:** 타사 리포지토리의 변경 내용이 CodeCatalyst에 표시되지 않습니다.

**가능한 해결 방법:** 현재 CodeCatalyst는 연결된 리포지토리에 대한 기본 브랜치의 변경 사항 감지를 지원하지 않습니다. 연결된 리포지토리의 기본 브랜치를 변경하려면 먼저 CodeCatalyst에서 연결을 해제하고 기본 브랜치를 변경한 다음 다시 연결해야 합니다. 자세한 내용은 [CodeCatalyst에서 GitHub 리포지토리, Bitbucket 리포지토리, GitLab 프로젝트 리포지토리 및 Jira 프로젝트 연결](extensions-link.md) 섹션을 참조하세요.

# 스페이스와 연결된 계정의 문제 해결
<a name="troubleshooting-connections"></a>

CodeCatalyst에서 스페이스 AWS 계정 에를 추가하여 리소스에 권한을 부여하고 결제를 목적으로 할 수 있습니다. 다음 정보는 CodeCatalyst에서 관련 계정과 관련된 일반적인 문제를 해결하는 데 도움이 될 수 있습니다.

**Topics**
+ [AWS 계정 연결 요청이 잘못된 토큰 오류를 수신함](#troubleshooting-connection-token)
+ [내 Amazon CodeCatalyst 프로젝트 워크플로가 구성된 계정, 환경 또는 IAM 역할에 대한 오류로 실패합니다](#connections-troubleshoot-workflow)
+ [프로젝트를 생성하려면 연결된 계정, 역할 및 환경이 필요해요](#connections-troubleshoot-environment)
+ [의 Amazon CodeCatalyst Spaces 페이지에 액세스할 수 없습니다. AWS Management Console](#connections-troubleshoot-console)
+ [다른 계정을 청구 계정으로 사용하고 싶어요](#connections-troubleshoot-billing)
+ [연결 이름 오류와 함께 프로젝트 워크플로가 실패합니다.](#connections-troubleshoot-restriction)

## AWS 계정 연결 요청이 잘못된 토큰 오류를 수신함
<a name="troubleshooting-connection-token"></a>

**문제:** 연결 토큰으로 연결 요청을 생성할 때 페이지는 토큰을 수락하지 않으며 토큰이 유효하지 않다는 오류를 표시합니다.

**가능한 해결 방법:** 스페이스에 추가할 계정 ID를 제공해야 합니다. 에 대한 관리 권한이 AWS 계정 있거나 관리자와 협력하여 계정을 추가할 수 있어야 합니다.

계정 확인을 선택하면 AWS Management Console에서 새 브라우저 창이 열립니다. 콘솔 측에 동일한 계정을 로그인해야 합니다. 다음을 확인한 후 다시 시도하세요.
+ 스페이스에 추가하려는 AWS 계정 것과 동일한 AWS Management Console 를 사용하여에 로그인합니다.
+ 리전이 스페이스에 맞는 올바른 리전으로 설정된 AWS Management Console 상태로에 로그인합니다.
+ 청구 페이지에서 AWS 계정 을 스페이스의 지정된 청구 계정으로 추가하려는 경우 계정이 다른 스페이스 또는 스페이스의 청구 계정으로 할당량에 도달하지 않았는지 확인하세요.

## 내 Amazon CodeCatalyst 프로젝트 워크플로가 구성된 계정, 환경 또는 IAM 역할에 대한 오류로 실패합니다
<a name="connections-troubleshoot-workflow"></a>

**문제:** 워크플로가 실행되고 스페이스과 연결된 구성된 계정 또는 IAM 역할을 찾지 못하면 워크플로 YAML에서 역할, 연결 및 환경 필드를 수동으로 입력해야 합니다. 실패한 워크플로 작업을 보고 오류 메시지가 다음과 같은지 확인합니다.
+ 이 역할은 환경과 연결된 연결과 함께 사용할 수 없습니다.
+ 작업이 성공하지 못했습니다. 상태: FAILED, 계정 연결 또는 환경에 대해 제공된 값이 유효하지 않습니다. 연결이 스페이스과 연결되어 있고 환경이 프로젝트와 연결되어 있는지 확인합니다.
+ 작업이 성공하지 못했습니다. 상태: FAILED, IAM 역할에 대해 제공된 값이 유효하지 않습니다. 이름이 존재하고, IAM 역할이 계정 연결에 추가되고, 연결이 이미 Amazon CodeCatalyst 스페이스와 연결되어 있는지 확인합니다.

**가능한 해결 방법:** 워크플로 YAML 필드에 [환경](build-action-ref.md#build.environment.connections.role), [연결](build-action-ref.md#build.environment) 및 [역할](build-action-ref.md#build.environment.connections)에 대한 정확한 값이 있는지 확인합니다. 환경이 필요한 CodeCatalyst 워크플로 작업은 AWS 리소스를 실행하거나 AWS 리소스 스택을 생성하는 빌드 또는 배포 작업입니다.

실패한 워크플로 작업 블록을 선택한 다음 **비주얼**을 선택합니다. **구성** 탭을 선택합니다. **환경,** **연결 이름** 및 **역할 이름** 필드가 채워지지 않은 경우 워크플로를 수동으로 업데이트해야 합니다. 워크플로 YAML을 편집하려면 다음 단계를 따르세요.
+ `/.codecatalyst` 디렉터리를 확장한 다음 `/workflows` 디렉터리를 확장합니다. 워크플로 YAML 파일을 엽니다. 워크플로에 대해 구성한 YAML에 IAM 역할 및 계정 정보가 지정되어 있는지 확인합니다. 예제: 

  ```
  Actions:
    cdk_bootstrap:
      Identifier: action-@v1
      Inputs:
        Sources:
          - WorkflowSource
      Environment:
        Name: Staging
        Connections:
          - Name: account-connection
            Role: build-role
  ```

  CodeCatalyst 워크플로 빌드를 실행하고 AWS 리소스를 사용하여 작업을 배포하려면 **Environment, Connection, Role** 속성이 필요합니다. 예시는 [Environment](build-action-ref.md#build.environment), [Connections](build-action-ref.md#build.environment.connections) 및 [Role](build-action-ref.md#build.environment.connections.role)에 대한 CodeCatalyst 빌드 작업 참조 YAML 파라미터를 참조하세요.
+ 스페이스에 계정이 추가되어 있는지 확인하고 계정에 적절한 IAM 역할 또는 계정에 추가된 역할이 있는지 확인합니다. **스페이스 관리자** 역할이 있는 경우 계정을 조정하거나 추가할 수 있습니다. 자세한 내용은 [연결된를 사용하여 AWS 리소스에 대한 액세스 허용 AWS 계정](ipa-connect-account.md) 섹션을 참조하세요.

## 프로젝트를 생성하려면 연결된 계정, 역할 및 환경이 필요해요
<a name="connections-troubleshoot-environment"></a>

**문제:** 프로젝트 생성 옵션에서 프로젝트에 내 스페이스에 사용 가능한 계정이 추가되지 않았거나 프로젝트를 사용하려면 내 스페이스에 다른 계정을 추가해야 합니다.

**가능한 수정 사항:** 스페이스 관리자 역할이 있는 경우 **스페이스**에 대해 프로젝트에 AWS 계정 추가할 수 있는 권한을 추가할 수 있습니다. 관리자 권한이 있거나 AWS 관리자와 함께 작업할 수 있는 AWS 계정 도 있어야 합니다.

프로젝트 생성 화면에서 계정과 역할을 사용할 수 있도록 하려면 먼저 계정과 역할을 추가해야 합니다. 자세한 내용은 [연결된를 사용하여 AWS 리소스에 대한 액세스 허용 AWS 계정](ipa-connect-account.md) 섹션을 참조하세요.

**CodeCatalystWorkflowDevelopmentRole-*spaceName*** 역할 정책이라는 역할 정책을 사용하여 서비스 역할을 생성하도록 선택할 수 있습니다. 역할에는 고유한 식별자가 추가된 `CodeCatalystWorkflowDevelopmentRole-spaceName` 이름이 있습니다. 역할 및 역할 정책에 대한 자세한 내용은 [**CodeCatalystWorkflowDevelopmentRole-*spaceName*** 서비스 역할 이해](ipa-iam-roles.md#ipa-iam-roles-service-role) 섹션을 참조하세요. 역할을 생성하는 단계는 [계정 및 스페이스의 **CodeCatalystWorkflowDevelopmentRole-*spaceName*** 역할 생성](ipa-iam-roles.md#ipa-iam-roles-service-create) 섹션을 참조하세요. 역할은 계정에 추가되며 CodeCatalyst의 프로젝트 생성 페이지에서 사용할 수 있습니다.

## 의 Amazon CodeCatalyst Spaces 페이지에 액세스할 수 없습니다. AWS Management Console
<a name="connections-troubleshoot-console"></a>

**문제:**의 Amazon CodeCatalyst 페이지에 액세스하여 내 CodeCatalyst 스페이스에 AWS Management Console 계정을 추가하거나의 계정에 역할을 추가하려고 하면 권한 오류가 AWS발생합니다.

**수정 방법:**

스페이스 관리자 역할이 있는 경우 **스페이스**에 대해 프로젝트에 AWS 계정 추가할 수 있는 권한을 추가할 수 있습니다. 관리자 권한이 있거나 AWS 관리자와 함께 작업할 수 있는 AWS 계정 도 있어야 합니다. 먼저 관리하려는 계정 AWS Management Console 과 동일한 계정으로에 로그인했는지 확인해야 합니다. 에 로그인한 후 콘솔을 열고 다시 시도 AWS Management Console할 수 있습니다.

 AWS Management Console [https://us-west-2.console.aws.amazon.com/codecatalyst/home?region=us-west-2](https://us-west-2.console.aws.amazon.com/codecatalyst/home?region=us-west-2#/)의 Amazon CodeCatalyst 페이지를 엽니다.

## 다른 계정을 청구 계정으로 사용하고 싶어요
<a name="connections-troubleshoot-billing"></a>

**문제:** CodeCatalyst 로그인을 설정할 때 스페이스를 설정하고 권한이 부여된 AWS 계정을 연결하는 여러 단계를 완료했습니다. 이제 다른 계정에 청구 권한을 부여하려고 합니다.

**가능한 해결 방법:** **스페이스 관리자** 역할이 있는 경우 스페이스에 대해 청구 계정을 승인할 수 있습니다. 관리자 권한이 있거나 AWS 관리자와 협력할 수 AWS 계정 있는 도 있어야 합니다.

자세한 내용은 Amazon CodeCatalyst 관리자 안내서의 [Managing billing](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-billing.html)을 참조하세요.

## 연결 이름 오류와 함께 프로젝트 워크플로가 실패합니다.
<a name="connections-troubleshoot-restriction"></a>

**문제:** 프로젝트를 생성한 다음 프로젝트 워크플로를 실행할 때 워크플로가 실패하고 다음과 같이 연결 이름이 유효하지 않다는 오류가 표시됩니다.

<action\$1name>에서 실패: 연결 이름이 유효하지 않습니다.

**가능한 해결 방법:** 스페이스에 추가할 계정 ID를 제공하고 계정이 프로젝트 제한 계정 연결에 대해 활성화되지 않았는지 확인합니다. 계정이 프로젝트 제한 계정 연결에 대해 활성화된 경우 새 프로젝트에 대한 액세스를 활성화하여 계정 연결을 업데이트해야 할 수 있습니다. 자세한 내용은 [Configuring project-restricted account connections](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-accounts.html#managing-accounts-restriction)를 참조하세요.

# Amazon CodeCatalyst와 AWS SDK 또는 AWS CLI 간의 문제 해결
<a name="troubleshooting-cli-sdk"></a>

다음 정보는 CodeCatalyst AWS CLI 및 AWS SDK로 작업할 때 발생하는 일반적인 문제를 해결하는 데 도움이 될 수 있습니다.

**Topics**
+ [명령줄 또는 터미널에서 **aws codecatalyst**라고 입력하면 잘못된 선택이라는 메시지가 표시됩니다.](#cli-sdk-troubleshoot-no-commands)
+ [**aws codecatalyst** 명령을 실행할 때 자격 증명 오류가 발생합니다.](#cli-sdk-troubleshoot-profile)

## 명령줄 또는 터미널에서 **aws codecatalyst**라고 입력하면 잘못된 선택이라는 메시지가 표시됩니다.
<a name="cli-sdk-troubleshoot-no-commands"></a>

**문제:** AWS CLI를 CodeCatalyst에서 사용하려고 할 때 하나 이상의 **aws codecatalyst** 명령이 유효한 것으로 인식되지 않습니다.

**해결 방법:** 이 문제의 가장 일반적인 원인은 최신 서비스 및 명령에 대한 최신 업데이트가 포함되지 않은 버전의 AWS CLI를 사용하고 있기 때문입니다. AWS CLI 설치를 업데이트한 다음 다시 시도하세요. 자세한 내용은 [CodeCatalyst AWS CLI 에서를 사용하도록 설정](set-up-cli.md)을 참조하세요.

## **aws codecatalyst** 명령을 실행할 때 자격 증명 오류가 발생합니다.
<a name="cli-sdk-troubleshoot-profile"></a>

**문제:** CodeCatalyst에서 AWS CLI를 사용하려고 할 때 `You can configure credentials by running "aws configure".` 또는 `Unable to locate authorization token`이라는 메시지가 표시됩니다.

**해결 방법:** CodeCatalyst 명령으로 작동하도록 AWS CLI 프로파일을 구성해야 합니다. 자세한 내용은 [CodeCatalyst AWS CLI 에서를 사용하도록 설정](set-up-cli.md) 섹션을 참조하세요.