- 이미 로그인한 상태에서 로그인 메시지가 표시됨
- 매뉴얼 설치 실패
잘못된 JWT
로 데이터 동기화 실패-
GitLab 인스턴스 업데이트 실패
그룹 링크 실패
Jira Connect 애플리케이션 ID 로드 실패
Jira Cloud 앱 관리의 GitLab 문제 해결
GitLab for Jira Cloud 앱을 관리하는 중 다음과 같은 문제가 발생할 수 있습니다.
사용자 설명서는 GitLab for Jira Cloud 앱을 참조하세요.
이미 로그인한 상태에서 로그인 메시지가 표시됨
이미 로그인한 상태에서 다음 메시지를 받을 수 있습니다:
계속하기 전에 로그인하거나 가입하셔야 합니다.
GitLab for Jira Cloud 앱은 설정 페이지에 그룹을 추가하기 위해 iframe을 사용합니다. 일부 브라우저는 교차 사이트 쿠키를 차단할 수 있으며, 이로 인해 이러한 문제가 발생할 수 있습니다.
이 문제를 해결하려면 OAuth 인증을 설정하세요.
매뉴얼 설치 실패
공식 마켓플레이스 디렉터리에서 GitLab for Jira Cloud 앱을 설치하고 매뉴얼으로 설치한 경우 다음 오류 중 하나가 발생할 수 있습니다:
앱 "gitlab-jira-connect-gitlab.com"은 Atlassian Marketplace에서 이전에 설치되었으므로 로컬 앱으로 설치할 수 없습니다.
앱 호스트가 설치 중에 연락하려고 시도했을 때 HTTP 응답 코드 401을 반환했습니다. 나중에 다시 시도하거나 앱 공급자에게 문의하세요.
이 문제를 해결하려면 Jira Connect Proxy URL 설정을 해제하세요.
-
GitLab 15.7에서:
- 레일 콘솔을 엽니다.
-
ApplicationSetting.current_without_cache.update(jira_connect_proxy_url: nil)
을 실행합니다.
-
GitLab 15.8 및 이후:
- 왼쪽 사이드바에서 가장 아래에서 관리 영역을 선택합니다.
- 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
- GitLab for Jira App을 확장합니다.
- Jira Connect Proxy URL 텍스트 상자를 지웁니다.
- 변경 사항 저장을 선택합니다.
문제가 지속되는 경우, 자체 호스팅하는 GitLab 인스턴스가 Atlassian에서 공개 키를 가져오기 위해 connect-install-keys.atlassian.com
에 연결할 수 있는지 확인합니다. 연결성을 테스트하려면 다음 명령을 실행하세요:
# 토큰을 전달하지 않았으므로 `404 Not Found`가 예상됩니다
curl --head "https://connect-install-keys.atlassian.com"
잘못된 JWT
로 데이터 동기화 실패
GitLab for Jira Cloud 앱이 자체 호스팅 GitLab 인스턴스에서 데이터를 지속적으로 동기화하지 못하는 경우 비밀 토큰이 오래되었을 수 있습니다. Atlassian은 새로운 비밀 토큰을 GitLab로 보낼 수 있습니다. GitLab이 이러한 토큰을 처리하거나 저장하지 못하면 잘못된 JWT
오류가 발생합니다.
이 문제를 해결하려면 자체 호스팅 GitLab 인스턴스에서 다음을 확인하세요:
- 공식 Atlassian Marketplace 디렉터리에서 앱을 설치했을 경우 GitLab.com에
-
설치했을 경우 Jira Cloud에
액세스할 수 있는지 확인합니다. 앱을 설치할 때
/-/jira_connect/events/installed
엔드포인트로 보낸 토큰 요청이 Jira에서 액세스할 수 있는지 확인합니다. 다음 명령어는401 Unauthorized
를 반환해야 합니다:
curl --include --request POST "https://gitlab.example.com/-/jira_connect/events/installed"
-
설치했을 경우 Jira Cloud에
액세스할 수 있는지 확인합니다. 앱을 설치할 때
- 자체 호스팅 GitLab 인스턴스에 SSL을 구성했는지 확인하고 인증서가 유효하고 공개적으로 신뢰받는지 확인합니다.
앱을 설치한 방법에 따라 다음을 확인할 수 있습니다:
- 공식 Atlassian Marketplace 디렉터리에서 앱을 설치했을 경우 GitLab for Jira Cloud 앱에서 GitLab 버전을 변경하세요:
- Jira에서 상단 바에서 앱 > 앱 관리를 선택합니다.
- GitLab for Jira (gitlab.com)을 확장합니다.
- 시작하기를 선택합니다.
- GitLab 버전 변경을 선택합니다.
- GitLab.com (SaaS)를 선택하고 저장을 선택합니다.
- GitLab 버전 변경을 다시 선택합니다.
- GitLab (자체 호스팅)를 선택하고 다음을 선택합니다.
- 모든 확인란을 선택하고 다음을 선택합니다.
- GitLab 인스턴스 URL을 입력하고 저장을 선택합니다.
이 방법이 작동하지 않는 경우 Premium 또는 Ultimate 고객이라면 지원 티켓을 제출하세요. GitLab 지원팀은 문제를 해결하기 위해 다음 스크립트를 실행해 볼 수 있습니다:
# GitLab.com이 자체 호스트 인스턴스에 연결할 수 있는지 확인
checker = Gitlab::TcpChecker.new("gitlab.example.com", 443)
# 성공하면 `true`를 반환
checker.check
# 확인에 실패하면 오류를 반환
checker.error
# 자체 호스팅 인스턴스에 대한 설치 기록 찾기
installation = JiraConnectInstallation.find_by_instance_url("https://gitlab.example.com")
# GitLab.com에서 자체 호스팅 인스턴스로 토큰을 다시 전송하는 시도
ProxyLifecycleEventService.execute(installation, :installed, installation.instance_url)
-
매뉴얼으로 앱을 설치한 경우:
- Jira Cloud 지원팀에게 Jira가 자체 호스트 GitLab 인스턴스에 연결할 수 있는지 확인해 달라고 요청합니다.
- 앱을 다시 설치합니다. 이 방법은 Jira 개발 패널에 있는 GitLab 데이터를 동기화했던 모든 데이터를 제거할 수 있습니다.
GitLab 인스턴스 업데이트 실패
GitLab for Jira Cloud 앱을 설정할 때, Self-managed 인스턴스 URL을 입력한 후 GitLab 인스턴스 업데이트 실패
오류가 발생할 수 있습니다.
이 문제를 해결하려면 설치 방법의 모든 전제 조건이 충족되었는지 확인하세요:
Jira Connect Proxy URL을 구성한 경우에도 전제 조건을 확인한 후에도 문제가 지속된다면, Jira Connect Proxy 문제 해결을 검토하세요.
GitLab 15.8 이전을 사용하고 있으며 이전에 jira_connect_oauth_self_managed
와 jira_connect_oauth
피처 플래그를 모두 활성화한 경우, 알려진 문제로 인해 jira_connect_oauth_self_managed
플래그를 비활성화해야 합니다. 이러한 플래그를 확인하려면:
- Rails 콘솔을 엽니다.
-
다음 코드를 실행합니다:
# 두 피처 플래그가 활성화되어 있는지 확인합니다. # 플래그가 활성화된 경우, 이 명령은 'true'를 반환합니다. Feature.enabled?(:jira_connect_oauth) Feature.enabled?(:jira_connect_oauth_self_managed) # 두 플래그가 활성화된 경우, `jira_connect_oauth_self_managed` 플래그를 비활성화합니다. Feature.disable(:jira_connect_oauth_self_managed)
Jira Connect Proxy 문제 해결
Jira Connect Proxy URL을 https://gitlab.com
으로 설정했다면,
인스턴스 설정시 브라우저 개발 도구에서 네트워크 트래픽을 검사하고,
더 많은 정보를 위해 GitLab 인스턴스 업데이트 실패
오류를 복제하세요.
https://gitlab.com/-/jira_connect/installations
로의 GET
요청을 찾아야 합니다.
이 요청은 200 OK
를 반환해아 하지만, 문제가 있으면 422 Unprocessable Entity
가 반환될 수 있습니다.
오류를 확인하기 위해 응답 본문을 확인할 수 있습니다.
문제를 해결할 수 없다면, GitLab 고객인 경우 GitLab 지원팀에 문의하여 지원을 받으세요. 지원을 위해 GitLab 지원팀에 다음 정보를 제공하세요:
- Self-managed 인스턴스 URL.
- GitLab.com 사용자 이름.
- 선택 사항.
https://gitlab.com/-/jira_connect/installations
로의 실패한GET
요청에 대한X-Request-Id
응답 헤더. - 선택 사항. 문제를 캡처한
harcleaner
로 처리한 HAR 파일.
그럼 GitLab 지원팀이 GitLab.com 서버 로그에서 문제를 조사할 수 있습니다.
GitLab 지원
Kibana에서 로그를 필터링하여 json.meta.caller_id: JiraConnect::InstallationsController#update
및 NOT json.status: 200
로 필터링해야 합니다.
X-Request-Id
값이 제공된 경우, 해당 값을 사용하여 json.correlation_id
를 통해 결과를 좁힐 수 있습니다.
https://gitlab.com/-/jira_connect/installations
로의 각 GET
요청은 두 개의 로그 항목을 생성합니다.
첫 번째 로그의 경우:
-
json.status
는422 Unprocessable Entity
입니다. -
json.params.value
는 Self-managed GitLab URL에 일치해야 합니다[[FILTERED], {"instance_url"=>"https://gitlab.example.com"}]
.
두 번째 로그의 경우, 다음 중 하나를 가질 수 있습니다:
- 시나리오 1:
-
json.message
,json.jira_status_code
, 및json.jira_body
가 있습니다. -
json.message
는Proxy lifecycle event received error response
와 유사합니다. -
json.jira_status_code
와json.jira_body
에 Self-managed 인스턴스나 인스턴스 앞에 있는 프록시로부터 받은 응답이 포함될 수 있습니다. - 만약
json.jira_status_code
가401 Unauthorized
이고json.jira_body
가 비어 있다면, Jira Connect Proxy URL가https://gitlab.com
으로 설정되지 않았을 수 있습니다.
-
- 시나리오 2:
-
json.exception.class
와json.exception.message
가 있습니다. -
json.exception.class
와json.exception.message
는 Self-managed 인스턴스에 연락하는 동안 문제가 발생했는지를 나타냅니다.
-
그룹 링크 실패
그룹을 링크할 때 다음 오류가 발생할 수 있습니다:
그룹 링크 실패. 다시 시도하세요.
사용자 정보가 충분한 권한으로 인해 Jira에서 가져올 수 없는 경우 403 Forbidden
이 반환됩니다.
이 문제를 해결하려면, 앱을 설치 및 구성하는 Jira 사용자가 특정 요구 사항을 충족하는지 확인하세요.
Jira Connect 애플리케이션 ID 로드 실패
Self-managed 인스턴스를 가리킨 후 GitLab for Jira Cloud 앱에 로그인하면 다음과 같은 오류가 발생할 수 있습니다:
Jira Connect 애플리케이션 ID 로드 실패. 다시 시도하세요.
브라우저 콘솔을 확인하면 다음 메시지도 표시될 수 있습니다:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://gitlab.example.com/-/jira_connect/oauth_application_id. (Reason: CORS header 'Access-Control-Allow-Origin' missing). Status code: 403.
이 문제를 해결하려면:
-
/-/jira_connect/oauth_application_id
가 공개적으로 접근 가능하도록 되어 있으며 JSON 응답을 반환하는지 확인하세요:curl --include "https://gitlab.example.com/-/jira_connect/oauth_application_id"
-
공식 Atlassian Marketplace 디렉터리에서 앱을 설치한 경우 leading 슬래시 없이
https://gitlab.com
으로 Jira Connect Proxy URL이 설정되어 있는지 확인하세요.