Jira DVCS 커넥터 문제 해결

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

Jira DVCS 커넥터를 작업할 때 다음과 같은 문제가 발생할 수 있습니다.

Jira가 GitLab 서버에 접근할 수 없음

새 계정 추가 양식을 작성하고 접근을 승인했으나
이 오류가 발생하면 Jira와 GitLab이 연결할 수 없습니다.
다른 오류 메시지는 로그에 나타나지 않습니다:

액세스 토큰을 얻는 중 오류가 발생했습니다. Jira에서 https://gitlab.example.com에 접근할 수 없습니다.

Jira의 세션 토큰 버그

GitLab 15.0 이상을 사용하여 Jira Server와 함께 작업할 때
Jira에서의 세션 토큰 버그가 발생할 수 있습니다.
이 버그는 Jira Server 8.20.8, 8.22.3, 8.22.4, 9.4.6 및 9.4.14에 영향을 미칩니다.

이 문제를 해결하려면 Jira Server 8.20.11 이상 또는 9.1.0 이상을 사용해야 합니다.

SSL 및 TLS 문제

SSL 및 TLS 문제로 인해 다음과 같은 오류 메시지가 발생할 수 있습니다:

액세스 토큰을 얻는 중 오류가 발생했습니다. Jira에서 https://gitlab.example.com에 접근할 수 없습니다.
  • Jira 통합에는
    GitLab이 Jira에 연결해야 합니다.
    개인 인증 기관 또는 자체 서명된 인증서에서 발생하는 TLS 문제는
    GitLab 서버에서 해결됩니다.
    GitLab이 TLS 클라이언트입니다.

  • Jira 개발 패널은 Jira가 GitLab에 연결해야 하며,
    이로 인해 Jira가 TLS 클라이언트가 됩니다.
    GitLab 서버의 인증서가 공인 인증 기관에 의해 발급되지 않았다면,
    적절한 인증서(예: 조직의 루트 인증서)를 Jira Server의 Java Truststore에 추가해야 합니다.

Jira 설정에 대한 자세한 내용은 Atlassian 문서 및 Atlassian 지원을 참조하세요.

  • 인증서를 추가하세요
    신뢰 저장소에.
    • 가장 간단한 방법은 keytool입니다.
    • Jira가 공인 인증 기관을 신뢰할 수 있도록 Java의 기본 Truststore(cacerts)에
      추가 루트를 추가하세요.
    • Jira Java 런타임을 업그레이드한 후 통합이 작동하지 않으면,
      cacerts Truststore가 업그레이드 중에 교체되었을 수 있습니다.
  • TLS 핸드셰이킹을 포함한 연결 문제를 트러블슈팅하세요,
    SSLPoke Java 클래스를 사용하여.
  • Atlassian 지식 기반에서 클래스를 다운로드하여 Jira Server의 디렉토리(예: /tmp)에 저장하세요.
  • Jira와 동일한 Java 런타임을 사용하세요.
  • 프록시 설정이나 대체 루트 Truststore(-Djavax.net.ssl.trustStore)와 같은
    Jira가 호출되는 모든 네트워킹 관련 매개변수를 전달하세요:
${JAVA_HOME}/bin/java -Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -classpath /tmp SSLPoke gitlab.example.com 443

성공적으로 연결됨 메시지는 성공적인 TLS 핸드셰이킹을 나타냅니다.

문제가 발생하면 Java TLS 라이브러리가 오류를 생성하며,
자세한 내용을 찾아볼 수 있습니다.

Jira와 DVCS 연결 시 범위 오류

요청된 범위가 잘못되었거나, 알 수 없거나, 형식이 잘못되었습니다.

잠재적인 해결책:

  1. Jira에서 리디렉션된 후 브라우저에 표시된 URL의 Jira DVCS 커넥터 설정에서 쿼리 문자열에 scope=api가 포함되어 있는지 확인하세요.

  2. URL에서 scope=api가 누락된 경우, GitLab 계정 구성을 수정하세요. Scopes 필드를 검토하고 api 체크박스가 선택되어 있는지 확인하세요.

오류: 410 Gone

Jira에 연결하고 리포지토리를 동기화할 때 410 Gone 오류가 발생할 수 있습니다.

이 문제는 Jira DVCS 커넥터를 사용하고 있고 통합이 GitHub Enterprise를 사용하도록 구성되어 있을 때 발생합니다.

자세한 내용은 문제 340160을 참조하세요.

동기화 문제

Jira에서 삭제된 브랜치와 같이 잘못된 정보를 표시하는 경우, 정보를 다시 동기화해야 할 수 있습니다:

  1. Jira에서 Jira 관리 > 애플리케이션 > DVCS 계정을 선택하세요.

  2. 계정(그룹 또는 하위 그룹)에서 (생략 부호) 메뉴에서 리포지토리 새로 고침을 선택하세요.

  3. 각 프로젝트의 마지막 활동 날짜 옆에서:

    • 소프트 재동기화를 수행하려면 동기화 아이콘을 선택하세요.
    • 전체 동기화를 완료하려면 Shift를 누르고 동기화 아이콘을 선택하세요.

자세한 내용은 Atlassian 문서를 참조하세요.

오류: Sync Failed

특정 프로젝트에 대해 리포지토리 데이터 새로 고침을 할 때 Jira에서 Sync Failed 오류가 발생하면, Jira DVCS 커넥터 로그를 확인하세요. GitLab의 API 리소스에 대한 요청을 실행할 때 발생하는 오류를 찾아보세요. 예를 들어:

요청 실행 실패 [https://gitlab.com/api/v4/projects/:id/merge_requests?page=1&per_page=100 GET https://gitlab.com/api/v4/projects/:id/merge_requests?page=1&per_page=100에 대한 응답 상태가 403 Forbidden] 오류:
{"message":"403 Forbidden"}

403 Forbidden 오류가 발생하면, 이 프로젝트는 일부 GitLab 기능이 비활성화되었을 수 있습니다.

이전 예제에서는 병합 요청 기능이 비활성화되었습니다.

문제를 해결하려면 관련 기능을 활성화하세요:

  1. 왼쪽 사이드바에서 검색 또는 이동하기를 선택하고 프로젝트를 찾습니다.

  2. 설정 > 일반을 선택하세요.

  3. 가시성, 프로젝트 기능, 권한을 확장하세요.

  4. 필요에 따라 기능을 활성화하기 위해 토글을 사용하세요.

DVCS 연결 프로젝트에서 웹훅 로그 찾기

DVCS 연결 프로젝트에서 웹훅 로그를 찾으려면:

  1. 왼쪽 사이드바에서 검색 또는 이동하기를 선택하고 프로젝트를 찾습니다.

  2. 설정 > 웹훅을 선택하세요.

  3. 프로젝트 후크로 스크롤하세요.

  4. Jira 인스턴스를 가리키는 로그 옆에서 편집을 선택하세요.

  5. 최근 이벤트로 스크롤하세요.

프로젝트에서 웹훅 로그를 찾을 수 없는 경우, DVCS 설정에 문제가 있는지 확인하세요.