InfoGrab DocsInfoGrab Docs

GitLab Duo with Amazon Q

요약

GitLab Duo with Amazon Q는 다른 GitLab Duo 애드온과 결합할 수 없습니다. re:Invent 2024에서 Amazon은 GitLab Duo with Amazon Q 통합을 발표했습니다. GitLab Duo with Amazon Q:

히스토리
  • GitLab 17.7에서 amazon_q_integration이라는 기능 플래그와 함께 베타로 도입됨. 기본적으로 비활성화됩니다.
  • GitLab 17.8에서 기능 플래그 amazon_q_integration 제거됨.
  • GitLab 17.11에서 추가적인 GitLab Duo 기능 지원과 함께 일반 공개됨.
Note

GitLab Duo with Amazon Q는 다른 GitLab Duo 애드온과 결합할 수 없습니다.

re:Invent 2024에서 Amazon은 GitLab Duo with Amazon Q 통합을 발표했습니다. 이 통합으로 작업을 자동화하고 생산성을 높일 수 있습니다.

GitLab Duo with Amazon Q:

클릭스루 데모는 GitLab Duo with Amazon Q 제품 투어를 참조하세요.

GitLab Duo with Amazon Q 구독을 얻으려면 Account Executive에 문의하세요.

또는 트라이얼을 요청하려면 이 양식을 작성하세요.

GitLab Duo with Amazon Q 설정#

GitLab Duo with Amazon Q 구독과 GitLab 17.11 이상이 있으면 인스턴스에서 GitLab Duo with Amazon Q를 설정할 수 있습니다.

이슈에서 GitLab Duo with Amazon Q 사용#

이슈에 대해 GitLab Duo with Amazon Q를 호출하려면 빠른 액션을 사용합니다.

아이디어를 머지 리퀘스트로 전환#

이슈의 아이디어를 제안된 구현이 포함된 머지 리퀘스트로 전환합니다.

Amazon Q는 이슈 제목, 설명과 프로젝트 컨텍스트를 사용하여 이슈를 해결하는 코드가 포함된 머지 리퀘스트를 생성합니다.

이슈 설명에서#

  1. 새 이슈를 만들거나 기존 이슈를 열고 오른쪽 상단 모서리에서 Edit를 선택합니다.
  2. 설명 상자에 /q dev를 입력합니다.
  3. Save changes를 선택합니다.

댓글에서#

  1. 이슈의 댓글에 /q dev를 입력합니다.
  2. Comment를 선택합니다.

Java 업그레이드#

Amazon Q는 Java 8 또는 11 코드를 분석하고 코드를 Java 17로 업데이트하는 데 필요한 Java 변경 사항을 결정할 수 있습니다.

연습 보기.

사전 요구 사항:

Java를 업그레이드하려면:

  1. 이슈를 만듭니다.
  2. 이슈 제목과 설명에 Java를 업그레이드하고 싶다는 것을 설명합니다. 버전 세부 정보를 입력할 필요가 없습니다. Amazon Q가 버전을 결정할 수 있습니다.
  3. 이슈를 저장합니다. 그런 다음 댓글에 /q transform을 입력합니다.
  4. Comment를 선택합니다.

CI/CD job이 시작됩니다. 세부 정보와 job 링크가 포함된 댓글이 표시됩니다.

  • job이 성공하면 업그레이드에 필요한 코드 변경 사항이 포함된 머지 리퀘스트가 생성됩니다.
  • job이 실패하면 댓글에 잠재적인 수정 사항에 대한 세부 정보가 제공됩니다.

머지 리퀘스트에서 GitLab Duo with Amazon Q 사용#

머지 리퀘스트에 대해 GitLab Duo with Amazon Q를 호출하려면 빠른 액션을 사용합니다.

머지 리퀘스트 검토#

Amazon Q는 머지 리퀘스트를 분석하고 코드에 대한 개선 사항을 제안할 수 있습니다. 보안 문제, 품질 문제, 비효율성 및 기타 오류를 찾을 수 있습니다.

머지 리퀘스트를 열거나 다시 열 때 Amazon Q가 자동으로 검토하도록 설정하거나 수동으로 검토를 시작할 수 있습니다.

수동으로 시작하려면:

  1. 머지 리퀘스트를 엽니다.
  2. Overview 탭의 댓글에 /q review를 입력합니다.
  3. Comment를 선택합니다.

Amazon Q가 머지 리퀘스트 변경 사항을 검토하고 댓글에 결과를 표시합니다.

피드백을 기반으로 코드 변경#

Amazon Q는 리뷰어 피드백을 기반으로 코드를 변경할 수 있습니다.

  1. 리뷰어 피드백이 있는 머지 리퀘스트를 엽니다.
  2. Overview 탭에서 해결하려는 댓글로 이동합니다.
  3. 댓글 아래의 Reply 상자에 /q dev를 입력합니다.
  4. Add comment now를 선택합니다.

Amazon Q는 리뷰어의 댓글과 피드백을 기반으로 머지 리퀘스트에 대한 변경 사항을 제안합니다.

유닛 테스트 생성#

Amazon Q를 사용하여 코드에 대한 새 유닛 테스트를 생성합니다.

이슈에서#

  1. 이슈를 만듭니다.
  2. 다음 옵션 중 하나를 사용하여 코드에 대한 테스트 생성을 요청합니다:
    • 이슈 설명에 요청을 설명하고 Save changes를 선택합니다.
    • 댓글에 /q dev를 입력하고 Comment를 선택합니다.

Amazon Q는 제안된 테스트가 포함된 머지 리퀘스트를 만듭니다.

머지 리퀘스트에서#

  1. 머지 리퀘스트를 엽니다.
  2. Changes 탭에서 테스트를 추가하려는 위치에 인라인 댓글을 남깁니다. 파일 이름, 클래스 이름 및 줄 번호와 같이 피드백에 최대한 많은 세부 정보를 포함합니다.
  3. 댓글에 새 줄에 /q dev를 입력하고 Add comment now를 선택합니다.

Amazon Q는 제안된 테스트로 머지 리퀘스트를 업데이트합니다.

인증 및 권한 부여#

히스토리

GitLab Duo with Amazon Q는 컴포지트 아이덴티티(composite identity)를 사용하여 요청을 인증합니다.

Note

제품의 다른 영역에서 컴포지트 아이덴티티를 지원하는 것은 이슈 511373에서 제안되었습니다.

요청을 인증하는 토큰은 두 아이덴티티의 컴포지트입니다:

  • 기본 작성자(primary author)로, Amazon Q 서비스 계정입니다. 이 서비스 계정은 인스턴스 전체에 적용되며 Amazon Q 빠른 액션이 사용된 프로젝트에서 Developer 역할을 갖습니다. 서비스 계정은 토큰의 소유자입니다.
  • 보조 작성자(secondary author)로, 빠른 액션을 제출한 사람 사용자입니다. 이 사용자의 id는 토큰의 범위에 포함됩니다.

이 컴포지트 아이덴티티는 Amazon Q가 작성한 모든 활동이 Amazon Q 서비스 계정에 올바르게 귀속되도록 보장합니다. 동시에 컴포지트 아이덴티티는 사람 사용자에 대한 권한 상승이 발생하지 않도록 보장합니다.

동적 범위는 API 요청의 권한 부여 중에 확인됩니다. 권한 부여가 요청되면 GitLab은 서비스 계정과 빠른 액션을 시작한 사용자 모두 충분한 권한을 가지고 있는지 검증합니다.

Mermaid 다이어그램 (9줄)
소스 코드 보기
flowchart TD
    accTitle: Authentication flow for GitLab Duo
    accDescr: API requests are checked against user permissions first, then service account permissions, with access denied if either check fails.
A[API Request] --> B{Human user has access?}
B -->|No| D[Access denied]
B -->|Yes| C{Service account has access?}
C -->|No| D
C --&gt;|Yes| E[API request succeeds]</code></pre></details></div>

관련 주제#

GitLab Duo with Amazon Q

GitLab v19.2
Tier: Ultimate
Offering: GitLab Self-Managed
원문 보기
요약

GitLab Duo with Amazon Q는 다른 GitLab Duo 애드온과 결합할 수 없습니다. re:Invent 2024에서 Amazon은 GitLab Duo with Amazon Q 통합을 발표했습니다. GitLab Duo with Amazon Q:

히스토리
  • GitLab 17.7에서 amazon_q_integration이라는 기능 플래그와 함께 베타로 도입됨. 기본적으로 비활성화됩니다.
  • GitLab 17.8에서 기능 플래그 amazon_q_integration 제거됨.
  • GitLab 17.11에서 추가적인 GitLab Duo 기능 지원과 함께 일반 공개됨.
Note

GitLab Duo with Amazon Q는 다른 GitLab Duo 애드온과 결합할 수 없습니다.

re:Invent 2024에서 Amazon은 GitLab Duo with Amazon Q 통합을 발표했습니다. 이 통합으로 작업을 자동화하고 생산성을 높일 수 있습니다.

GitLab Duo with Amazon Q:

클릭스루 데모는 GitLab Duo with Amazon Q 제품 투어를 참조하세요.

GitLab Duo with Amazon Q 구독을 얻으려면 Account Executive에 문의하세요.

또는 트라이얼을 요청하려면 이 양식을 작성하세요.

GitLab Duo with Amazon Q 설정#

GitLab Duo with Amazon Q 구독과 GitLab 17.11 이상이 있으면 인스턴스에서 GitLab Duo with Amazon Q를 설정할 수 있습니다.

이슈에서 GitLab Duo with Amazon Q 사용#

이슈에 대해 GitLab Duo with Amazon Q를 호출하려면 빠른 액션을 사용합니다.

아이디어를 머지 리퀘스트로 전환#

이슈의 아이디어를 제안된 구현이 포함된 머지 리퀘스트로 전환합니다.

Amazon Q는 이슈 제목, 설명과 프로젝트 컨텍스트를 사용하여 이슈를 해결하는 코드가 포함된 머지 리퀘스트를 생성합니다.

이슈 설명에서#

  1. 새 이슈를 만들거나 기존 이슈를 열고 오른쪽 상단 모서리에서 Edit를 선택합니다.
  2. 설명 상자에 /q dev를 입력합니다.
  3. Save changes를 선택합니다.

댓글에서#

  1. 이슈의 댓글에 /q dev를 입력합니다.
  2. Comment를 선택합니다.

Java 업그레이드#

Amazon Q는 Java 8 또는 11 코드를 분석하고 코드를 Java 17로 업데이트하는 데 필요한 Java 변경 사항을 결정할 수 있습니다.

연습 보기.

사전 요구 사항:

Java를 업그레이드하려면:

  1. 이슈를 만듭니다.
  2. 이슈 제목과 설명에 Java를 업그레이드하고 싶다는 것을 설명합니다. 버전 세부 정보를 입력할 필요가 없습니다. Amazon Q가 버전을 결정할 수 있습니다.
  3. 이슈를 저장합니다. 그런 다음 댓글에 /q transform을 입력합니다.
  4. Comment를 선택합니다.

CI/CD job이 시작됩니다. 세부 정보와 job 링크가 포함된 댓글이 표시됩니다.

  • job이 성공하면 업그레이드에 필요한 코드 변경 사항이 포함된 머지 리퀘스트가 생성됩니다.
  • job이 실패하면 댓글에 잠재적인 수정 사항에 대한 세부 정보가 제공됩니다.

머지 리퀘스트에서 GitLab Duo with Amazon Q 사용#

머지 리퀘스트에 대해 GitLab Duo with Amazon Q를 호출하려면 빠른 액션을 사용합니다.

머지 리퀘스트 검토#

Amazon Q는 머지 리퀘스트를 분석하고 코드에 대한 개선 사항을 제안할 수 있습니다. 보안 문제, 품질 문제, 비효율성 및 기타 오류를 찾을 수 있습니다.

머지 리퀘스트를 열거나 다시 열 때 Amazon Q가 자동으로 검토하도록 설정하거나 수동으로 검토를 시작할 수 있습니다.

수동으로 시작하려면:

  1. 머지 리퀘스트를 엽니다.
  2. Overview 탭의 댓글에 /q review를 입력합니다.
  3. Comment를 선택합니다.

Amazon Q가 머지 리퀘스트 변경 사항을 검토하고 댓글에 결과를 표시합니다.

피드백을 기반으로 코드 변경#

Amazon Q는 리뷰어 피드백을 기반으로 코드를 변경할 수 있습니다.

  1. 리뷰어 피드백이 있는 머지 리퀘스트를 엽니다.
  2. Overview 탭에서 해결하려는 댓글로 이동합니다.
  3. 댓글 아래의 Reply 상자에 /q dev를 입력합니다.
  4. Add comment now를 선택합니다.

Amazon Q는 리뷰어의 댓글과 피드백을 기반으로 머지 리퀘스트에 대한 변경 사항을 제안합니다.

유닛 테스트 생성#

Amazon Q를 사용하여 코드에 대한 새 유닛 테스트를 생성합니다.

이슈에서#

  1. 이슈를 만듭니다.
  2. 다음 옵션 중 하나를 사용하여 코드에 대한 테스트 생성을 요청합니다:
    • 이슈 설명에 요청을 설명하고 Save changes를 선택합니다.
    • 댓글에 /q dev를 입력하고 Comment를 선택합니다.

Amazon Q는 제안된 테스트가 포함된 머지 리퀘스트를 만듭니다.

머지 리퀘스트에서#

  1. 머지 리퀘스트를 엽니다.
  2. Changes 탭에서 테스트를 추가하려는 위치에 인라인 댓글을 남깁니다. 파일 이름, 클래스 이름 및 줄 번호와 같이 피드백에 최대한 많은 세부 정보를 포함합니다.
  3. 댓글에 새 줄에 /q dev를 입력하고 Add comment now를 선택합니다.

Amazon Q는 제안된 테스트로 머지 리퀘스트를 업데이트합니다.

인증 및 권한 부여#

히스토리

GitLab Duo with Amazon Q는 컴포지트 아이덴티티(composite identity)를 사용하여 요청을 인증합니다.

Note

제품의 다른 영역에서 컴포지트 아이덴티티를 지원하는 것은 이슈 511373에서 제안되었습니다.

요청을 인증하는 토큰은 두 아이덴티티의 컴포지트입니다:

  • 기본 작성자(primary author)로, Amazon Q 서비스 계정입니다. 이 서비스 계정은 인스턴스 전체에 적용되며 Amazon Q 빠른 액션이 사용된 프로젝트에서 Developer 역할을 갖습니다. 서비스 계정은 토큰의 소유자입니다.
  • 보조 작성자(secondary author)로, 빠른 액션을 제출한 사람 사용자입니다. 이 사용자의 id는 토큰의 범위에 포함됩니다.

이 컴포지트 아이덴티티는 Amazon Q가 작성한 모든 활동이 Amazon Q 서비스 계정에 올바르게 귀속되도록 보장합니다. 동시에 컴포지트 아이덴티티는 사람 사용자에 대한 권한 상승이 발생하지 않도록 보장합니다.

동적 범위는 API 요청의 권한 부여 중에 확인됩니다. 권한 부여가 요청되면 GitLab은 서비스 계정과 빠른 액션을 시작한 사용자 모두 충분한 권한을 가지고 있는지 검증합니다.

Mermaid 다이어그램 (9줄)
소스 코드 보기
flowchart TD
    accTitle: Authentication flow for GitLab Duo
    accDescr: API requests are checked against user permissions first, then service account permissions, with access denied if either check fails.
A[API Request] --&gt; B{Human user has access?}
B --&gt;|No| D[Access denied]
B --&gt;|Yes| C{Service account has access?}
C --&gt;|No| D
C --&gt;|Yes| E[API request succeeds]</code></pre></details></div>

관련 주제#