- 이미 로그인된 상태에서 로그인 메시지가 표시됨
- 매뉴얼 설치 실패
잘못된 JWT
로 데이터 동기화 실패-
GitLab 인스턴스 업데이트 실패
그룹 링크에 실패함
Jira Connect 애플리케이션 ID를 불러오지 못했습니다
GitLab for Jira Cloud 앱 관리 문제 해결
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: null)
을 실행합니다.
-
GitLab 15.8 이상에서:
- 왼쪽 사이드바에서 아래쪽에 있는 관리 영역(Admin Area)을 선택합니다.
- 왼쪽 사이드바에서 설정 > 일반(General)을 선택합니다.
- GitLab for Jira App을 확장합니다.
- Jira Connect Proxy URL 텍스트 상자를 지웁니다.
- 변경 사항 저장을 선택합니다.
문제가 지속되면 Self-Managed형 GitLab 인스턴스가 Atlassian으로부터 공개 키를 가져오기 위해 connect-install-keys.atlassian.com
에 연결할 수 있는지 확인하세요. 연결성을 테스트하려면 다음 명령을 실행하세요.
# 토큰을 전달하지 않았기 때문에 `404 Not Found`가 기대됩니다
curl --head "https://connect-install-keys.atlassian.com"
잘못된 JWT
로 데이터 동기화 실패
GitLab for Jira Cloud 앱이 지속적으로 Self-Managed형 GitLab 인스턴스에서 데이터를 동기화하지 못할 경우 비밀 토큰이 오래되었을 수 있습니다. Atlassian은 GitLab으로 새로운 비밀 토큰을 보낼 수 있습니다. 그러나 GitLab이 이러한 토큰을 처리하거나 저장하지 못하면 잘못된 JWT
오류가 발생합니다.
이 문제를 해결하려면 Self-Managed형 GitLab 인스턴스에서 다음을 확인하세요:
- Self-Managed형 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"
- Self-Managed형 GitLab 인스턴스에 SSL이 구성되어 있으면 인증서가 유효하고 공개적으로 신뢰할 수 있는지 확인하세요.
앱을 설치한 방법에 따라 다음을 확인할 수 있습니다.
- 공식 Atlassian Marketplace 디렉터리에서 앱을 설치한 경우 GitLab for Jira Cloud 앱에서 GitLab 버전을 변경하세요:
- Jira에서 상단 바에서 앱 > 앱 관리를 선택합니다.
- GitLab for Jira (gitlab.com)을 확장합니다.
- 시작하기를 선택합니다.
- GitLab 버전 변경을 선택합니다.
- GitLab.com (SaaS)을 선택한 후 저장을 선택합니다.
- 다시 GitLab 버전 변경을 선택합니다.
- GitLab (Self-Managed)를 선택한 후 다음을 선택합니다.
- 모든 확인란을 선택한 후 다음을 선택합니다.
- GitLab 인스턴스 URL을 입력한 후 저장을 선택합니다.
이 방법이 작동하지 않으면, Premium이나 Ultimate 고객이라면 지원 티켓을 제출할 수 있습니다. GitLab 지원팀은 다음 스크립트를 실행하여 문제를 해결하려고 시도할 수 있습니다.
# GitLab.com이 Self-Managed형 인스턴스에 접속할 수 있는지 확인
checker = Gitlab::TcpChecker.new("gitlab.example.com", 443)
# 성공하면 `true`를 반환
checker.check
# 확인이 실패하면 오류 반환
checker.error
# Self-Managed형 인스턴스에서 설치 레코드 탐색
installation = JiraConnectInstallation.find_by_instance_url("https://gitlab.example.com")
# GitLab.com에서 Self-Managed형 인스턴스로 토큰을 다시 보내려고 시도
ProxyLifecycleEventService.execute(installation, :installed, installation.instance_url)
- 매뉴얼으로 앱을 설치한 경우:
- Jira Cloud 지원팀에게 Jira가 Self-Managed형 GitLab 인스턴스에 접속할 수 있는지 확인해달라고 요청하세요.
- 앱을 다시 설치하세요. 이 방법은 Jira 개발 패널에서 동기화된 데이터를 모두 제거할 수 있습니다.
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
플래그를 비활성화해야 합니다. 이러한 플래그를 확인하려면:
- 레일 콘솔을 엽니다.
-
다음 코드를 실행합니다:
# 두 플래그 모두 활성화되었는지 확인 # 플래그가 활성화되었다면 이 명령은 `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
에 대해 사용하여 결과를 좁힐 수 있습니다.
Jira Connect Proxy URL 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
로 설정되지 않았을 것입니다. -
만약 Self-Managed형 인스턴스 앞에 역방향 프록시가 있다면, 인스턴스로 전송된
Host
헤더가 역방향 프록시 FQDN과 일치하지 않을 수 있습니다. Self-Managed형 인스턴스의 Workhorse 로그를 확인하세요:grep /-/jira_connect/events/installed /var/log/gitlab/gitlab-workhorse/current
출력에는 다음이 포함될 수 있습니다:
{ "host":"gitlab.mycompany.com:443", // 호스트는 역방향 프록시 FQDN과 일치해야 합니다 "remote_ip":"34.74.226.3", // 이 IP는 GitLab.com IP 범위 내에 있어야 합니다. https://docs.gitlab.com/ee/user/gitlab_com/#ip-range "status":401, "uri":"/-/jira_connect/events/installed" }
-
Jira Connect Proxy URL은 아마도
-
- 시나리오 2:
-
json.exception.class
와json.exception.message
가 존재합니다. -
json.exception.class
와json.exception.message
는 Self-Managed형 인스턴스에 연락하는 동안 문제가 발생했는지 여부를 포함합니다.
-
그룹 링크에 실패함
그룹을 링크할 때 다음과 같은 오류가 발생할 수 있습니다:
그룹을 링크하는 데 실패했습니다. 다시 시도하세요.
사용자 정보가 부족한 경우 Jira에서 사용자 정보를 가져올 수 없어서 403 Forbidden
이 반환됩니다.
이 문제를 해결하려면, 앱을 설치하고 구성하는 Jira 사용자가 일정한 요구 사항을 충족하는지 확인하세요.
이 오류는 역방향 프록시로 리다이렉트 또는 subfilter를 사용하는 경우에도 발생할 수 있습니다. 요청에서 사용된 앱 키에는 일부 역방향 프록시 필터에 캡처될 수 있는 서버 호스트 이름 일부가 포함됩니다. Atlassian 및 GitLab의 앱 키가 인증이 올바르게 작동하려면 일치해야 합니다.
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 디렉터리에서 앱을 설치한 경우, Jira Connect Proxy URL이 앞에 슬래시 없이
https://gitlab.com
으로 설정되었는지 확인하세요.