GitHub 스포크
ServiceNow 인스턴스에서 GitHub의 분산 버전 제어 및 소스 코드를 관리합니다. ServiceNow에서 플로우를 만들어 GitHub의 프로젝트에 대한 버그 추적, 기능 요청, 작업 등과 같은 공동 작업 기능을 관리합니다. 부실 라이센스를 회수할 수 있도록 GitHub Enterprise Cloud 및 GitHub Enterprise Server 소프트웨어 구독에 대한 의미 있는 사용량 데이터를 보고 분석합니다.
스토어에서 앱 요청
ServiceNow Store 웹 사이트를 방문하면 사용 가능한 모든 앱을 확인하고 스토어에 요청을 제출하는 방법에 대한 정보를 참조할 수 있습니다. 출시된 모든 앱의 누적 릴리스 정보는 ServiceNow Store 버전 기록 릴리스 정보를 참조하십시오.
통합 허브 구독
이 스포크는 Integration Hub 구독이 필요합니다. 자세한 내용은 법무 일정 - 통합 허브 개요를 참조하십시오.
스포크 버전
GitHub 스포크 대3.3.0 은 최신 버전입니다.
지원되는 버전
이 스포크는 API 버전 v3용으로 GitHub 빌드되었지만 이후 버전과 호환될 수 있습니다.
스포크 요구 사항
- GitHub 계정
- 관리자 자격 증명이 있는 사용자
- 인스턴스를 인증 ServiceNow 하는 토큰
GitHub 웹후크 모듈
양방향 웹후크는 필요한 이벤트에 대한 알림을 받도록 설정할 수 있습니다. 라우팅 정책은 앱에 알리기 ServiceNow 위해 충족해야 하는 조건을 정의합니다. 이러한 조건은 알림을 받으려는 이벤트를 GitHub 기반으로 합니다. 조건이 충족되면 라우팅 정책이 연결된 하위 플로우를 트리거하여 작업을 자동화합니다 GitHub .
- GitHub 웹후크 레지스트리
- GitHub WebHook 라우팅 정책
| 지원되는 GitHub 필드 | ||
|---|---|---|
| 작업 | 프로젝트 카드 생성자 | 참조 |
| 기본 참조 | 프로젝트 카드 메모 | 참조 유형 |
| 댓글 커밋 본문 | 프로젝트 카드 이전 메모 | 릴리스 자산 |
| 댓글 커밋 생성 시간 | 프로젝트 카드 업데이트 시간 | 릴리스 작성자 |
| 댓글 커밋 경로 | 프로젝트 열 생성 시간 | 릴리스 본문 |
| 댓글 커밋 업데이트 시간 | 프로젝트 열 이름 | 릴리스 생성 시간 |
| 댓글 커밋 사용자 | 프로젝트 열 이전 이름 | 릴리스 초안 |
| 강제 푸시 | 프로젝트 열 업데이트 시간 | 릴리스 이름 |
| GitHub 인스턴스 URL | 프로젝트 생성 시간 | 릴리스 게시 시간 |
| 문제 담당 대상 | 프로젝트 이름 | 릴리스 태그 이름 |
| 문제 담당자 | 프로젝트 이전 본문 | 릴리스 대상 커밋 |
| 문제 본문 | 프로젝트 이전 이름 | 리포지토리 보관됨 |
| 문제 종결 시간 | 프로젝트 상태 | 리포지토리 생성 시간 |
| 문제 댓글 | 프로젝트 업데이트 시간 | 리포지토리 설명 |
| 문제 댓글 수 | 끌어오기 요청 담당 대상 | 리포지토리 비활성 |
| 문제 댓글 생성 시간 | 끌어오기 요청 담당자 | 리포지토리 전체 이름 |
| 문제 댓글 업데이트 시간 | 끌어오기 요청 본문 | 리포지토리에 문제가 있음 |
| 문제 생성 시간 | 끌어오기 요청 종결 시간 | 리포지토리에 프로젝트가 있음 |
| 문제 레이블 대상 | 끌어오기 요청 설명 수 | 리포지토리 임포트 상태 |
| 문제 레이블 | 끌어오기 요청 생성 시간 | 리포지토리 라이선스 |
| 문제 잠김 | 끌어오기 요청 초안 | 리포지토리 오픈 문제 수 |
| 문제 마일스톤 | 끌어오기 요청 레이블 대상 | 리포지토리 소유자 |
| 문제 이전 본문 | 끌어오기 요청 레이블 | 리포지토리 프라이빗 |
| 문제 이전 설명 | 끌어오기 요청 잠김 | 리포지토리 푸시 시간 |
| 문제 이전 마일스톤 | 끌어오기 요청 병합 가능 | 리포지토리 별표 표시 시간 |
| 문제 이전 제목 | 끌어오기 요청 병합됨 | 리포지토리 업데이트 시간 |
| 문제 이전 담당 대상 | 끌어오기 요청 병합 시간 | 리포지토리 취약성 경보 영향을 받는 범위 |
| 문제 이전 레이블 대상 | 끌어오기 요청 마일스톤 | 리포지토리 취약성 경보 외부 식별자 |
| 문제 상태 | 끌어오기 요청 이전 본문 | 리포지토리 취약성 경보 고정된 위치 |
| 문제 제목 | 끌어오기 요청 이전 제목 | 리포지토리 취약성 경보 패키지 이름 |
| 문제 업데이트 시간 | 끌어오기 요청 이전 담당 대상 | 보안 자문 설명 |
| 문제 사용자 | 끌어오기 요청 이전 레이블 대상 | 보안 자문 ID |
| 마일스톤 종결 시간 | 끌어오기 요청 리베이스 가능 | 보안 자문 게시 시간 |
| 마일스톤 생성 시간 | 끌어오기 요청 검토 본문 | 보안 자문 심각도 |
| 마일스톤 생성자 | 끌어오기 요청 검토 설명 | 보안 자문 요약 |
| 마일스톤 설명 | 끌어오기 요청 검토 설명 수 | 보안 자문 업데이트 시간 |
| 마일스톤 기한 | 끌어오기 요청 검토 설명 생성 시간 | 보안 자문 철회 시간 |
| 마일스톤 상태 | 끌어오기 요청 검토 설명 파일 경로 | 보낸 사람 로그인 |
| 마일스톤 제목 | 끌어오기 요청 검토 설명 이전 설명 | 상태 커밋 메시지 |
| 마일스톤 업데이트 시간 | 끌어오기 요청 검토 설명 업데이트 시간 | 상태 컨텍스트 |
| 조직 설명 | 끌어오기 요청 검토 이전 본문 | 상태 생성 시간 |
| 조직 로그인 | 끌어오기 요청 검토 상태 | 상태 설명 |
| 사전 릴리스 | 끌어오기 요청 상태 | 상태 이름 |
| 프로젝트 본문 | 끌어오기 요청 제목 | 상태 상태 |
| 프로젝트 카드 보관됨 | 끌어오기 요청 업데이트 시간 | 상태 업데이트 시간 |
| 프로젝트 카드 생성 시간 | 끌어오기 요청 사용자 | 웹후크 이벤트 |
라우팅 정책에서 다른 조건을 사용하려면 WebHook 라우팅 정책 모듈에서 GitHub 라우팅 정책을 생성하고 요구 사항에 따라 조건을 지정합니다. 웹후크 설정 및 구성에 관한 정보는 을 참조하십시오 GitHub 스포크에 대한 양방향 웹후크 설정 .
스포크 트리거
ServiceNow 는 트리거를 만드는 특정 이벤트를 GitHub 지원합니다. 먼저 지원되는 트리거 정의를 사용하여 플로우를 구성해야 합니다. 푸시 요청 등의 이벤트가 에서 발생하면 GitHub웹후크를 통해 페이로드를 ServiceNow 인스턴스로 보냅니다. 이후에는 구성한 플로우가 인스턴스에서 트리거 ServiceNow 되어 워크플로우를 자동화합니다. 지원되는 이벤트는 다음과 같습니다.
| 범주 | 트리거 | 설명 |
|---|---|---|
| 분기 관리 | 분기 작성됨 | 에 분기 GitHub를 만들 때 플로우가 트리거됩니다. |
| 리포지토리 관리 | 끌어오기 요청 오픈됨 | 에서 새 끌어오기 요청을 GitHub시작할 때 흐름이 트리거됩니다. |
| 끌어오기 요청 편집됨 | 에서 끌어오기 요청을 GitHub업데이트할 때 플로우가 트리거됩니다. | |
| 끌어오기 요청 종결됨 | 에서 GitHub끌어오기 요청을 닫으면 플로우가 트리거됩니다. | |
| 끌어오기 요청 할당됨 | 에서 사용자에게 GitHub끌어오기 요청을 할당할 때 플로우가 트리거됩니다. | |
| 끌어오기 요청 재오픈됨 | 에서 GitHub끌어오기 요청을 다시 열면 플로우가 트리거됩니다. | |
| 리포지토리 포크 | 에서 리포지토리 GitHub를 포크할 때 플로우가 트리거됩니다. | |
| 리포지토리 푸시 | 의 리포지토리 GitHub에 밀어넣을 때 플로우가 트리거됩니다. | |
| 릴리스 관리 | 릴리스 생성됨 | 릴리스의 상세 정보가 에 생성 GitHub되면 플로우가 트리거됩니다. |
| 릴리스 편집됨 | 릴리스의 상세 정보가 에서 업데이트 GitHub될 때 플로우가 트리거됩니다. | |
| 릴리스 삭제됨 | 에서 릴리스가 제거 GitHub되면 플로우가 트리거됩니다. | |
| 릴리스 릴리스됨 | 에 릴리스가 릴리스 GitHub되면 플로우가 트리거됩니다. |
스포크에 GitHub 대한 트리거 설정에 대한 자세한 내용은 문서를 참조하십시오 인스턴스에서 트리거 정의 ServiceNow 활성화. 인바운드 통합에 대한 자세한 내용은 다음 문서를 참조하십시오 조건부 및 이벤트 기반 인바운드 통합.
스포크 하위 플로우
| 하위 플로우 | 설명 | 지원되는 GitHub 이벤트 |
|---|---|---|
| GitHub 분기 및 태그 웹후크 이벤트 처리 | 분기 및 태그 웹후크 이벤트를 처리합니다. | 분기 및 태그 |
| GitHub 커밋 웹후크 이벤트 처리 | 커밋 웹후크 이벤트를 처리합니다. | 커밋 |
| GitHub 문제 웹후크 이벤트 처리 | 문제 웹후크 이벤트를 처리합니다. | 문제 |
| GitHub 마일스톤 웹후크 이벤트 처리 | 마일스톤 웹후크 이벤트를 처리합니다. | 마일스톤 |
| GitHub 프로젝트 웹후크 이벤트 처리 | 프로젝트 웹후크 이벤트를 처리합니다. | 프로젝트 |
| GitHub 끌어오기 요청 웹후크 이벤트 처리 | 끌어오기 요청 웹후크 이벤트를 처리합니다. | 끌어오기 요청 |
| GitHub 푸시 웹후크 이벤트 처리 | 푸시 요청 웹후크 이벤트를 처리합니다. | 푸시 요청 |
| GitHub 릴리스 웹후크 이벤트 처리 | 릴리스 웹후크 이벤트를 처리합니다. | 릴리스 |
| GitHub 리포지토리 웹후크 이벤트 처리 | 리포지토리 웹후크 이벤트를 처리합니다. | 리포지토리 |
| GitHub 보안 웹후크 이벤트 처리 | 보안 웹후크 이벤트를 처리합니다. | 보안 |
| GitHub 웹후크 이벤트 처리 | 모든 GitHub 웹후크 이벤트를 처리합니다. |
주:
이 하위 플로우가 모든 GitHub 이벤트를 처리합니다. 기본적으로 지원되지 않는 다른 GitHub 웹후크 이벤트를 처리하도록 이 하위 플로우를 사용자 지정할 수 있습니다. |
다른 GitHub 웹후크 이벤트를 처리하거나 지원되는 GitHub 웹후크 이벤트를 다르게 처리하는 하위 플로우를 생성하려면 GitHub 웹후크 이벤트 처리 하위 플로우를 사용자 지정합니다. 이를 위해서는 하위 플로우의 사본을 만들고, 페이로드를 구문 분석하고, 요구 사항에 따라 하위 플로우를 사용자 지정해야 합니다. 페이로드는 하위 플로우에 대한 입력 중 하나입니다.
하위 플로우를 사용자 지정하는 동안 하위 플로우가 무한 루프를 방지하도록 구성되어 있는지 확인해야 합니다.
- 스포크 하위 플로우를 사용하도록 웹후크를 구성해야 합니다. 웹후크 설정 및 구성에 대한 정보는 을 참조하십시오 GitHub 스포크에 대한 양방향 웹후크 설정 .
- 샘플 하위 플로우는 기본적으로 사용자로 실행됩니다. 시스템으로 실행하도록 구성할 수 있습니다.
- GitHub 스포크 애플리케이션/JSON 페이로드를 지원합니다. 그에 따라 웹후크를 GitHub 구성합니다. 자세한 내용은 GitHub 개발자 웹후크를 만들고 구성하는 방법에 대한 지침이 포함된 설명서입니다.
스포크 작업
GitHub 스포크 에서 이벤트가 발생할 ServiceNow때 작업이 분기, 문제, 리포지토리 및 소스 코드를 관리하는 기능을 제공합니다. 사용 가능한 작업은 다음과 같습니다.
| 범주 | 작업 | 설명 |
|---|---|---|
| 분기 관리 | 분기 생성 | 특정 커밋 SHA를 기반으로 분기 GitHub 를 만듭니다. |
| 분기 삭제 | 리포지토리에서 분기를 GitHub 삭제합니다. | |
| 분기 가져오기 | 리포지토리에서 GitHub 분기의 상세 정보를 검색합니다. | |
| 분기 보호 가져오기 | 필요한 분기의 제한 상세 정보를 검색합니다. | |
| 지점 나열 | 리포지토리의 모든 분기 목록을 조회합니다. | |
| 분기 보호 제거 | 필요한 분기에 대한 보호를 제거합니다. | |
| 분기 보호 업데이트 | 필요한 분기에 대한 보호를 업데이트합니다. | |
| 문제 관리 | 문제에 대한 댓글 작성 | 필요한 문제에 대한 의견을 작성합니다. |
| 문제 생성 | 필요한 리포지토리에 대한 문제점을 작성합니다. | |
| 문제에 대한 댓글 삭제 | 필요한 문제에 대한 의견을 삭제합니다. | |
| 문제 잠금 | 필요한 문제를 잠급니다. 이렇게 하면 대화가 공동 작업자로만 제한됩니다. | |
| 문제에 대한 댓글 조회 | 문제에 대한 의견 목록을 검색합니다. | |
| 문제 조회 | 리포지토리의 문제 목록을 검색합니다. | |
| 문제 잠금 해제 | 필요한 문제의 잠금을 해제합니다. 그러면 모든 사용자에게 대화가 열립니다. | |
| 문제에 대한 댓글 업데이트 | 문제에 대한 의견을 업데이트합니다. | |
| 문제 업데이트 | 필요한 문제의 상세 정보를 업데이트합니다. | |
| 메타데이터 조회 | 작업으로 필드 조회 | 필드 테이블에서 작업 필터 GitHub 의 필드 목록을 검색합니다. |
| 분기 메타데이터 조회 | 분기의 메타데이터를 검색합니다. | |
| 문제 메타데이터 조회 | 문제의 메타데이터를 검색합니다. | |
| 마일스톤 메타데이터 조회 | 마일스톤의 메타데이터를 검색합니다. | |
| 끌어오기 요청 메타데이터 조회 | 끌어오기 요청의 메타데이터를 검색합니다. | |
| 조직 관리 | 조직 계획 가져오기 | 조직의 계획 이름을 검색합니다. |
| 조직 구성원 목록 | 조직 내 모든 구성원의 목록을 조회합니다. | |
| 조직 리포지토리 나열 | 조직 내의 모든 리포지토리 목록을 조회합니다. | |
| 조직 구성원 제거 | 조직에서 사용자를 제거합니다. | |
| 조직 이벤트 스트림 조회 | 제공된 조회 기준 날짜를 기준으로 조직의 이벤트 목록을 검색합니다. | |
| 조직 외부 공동 작업자 스트림 조회 | 조직 내의 모든 외부 공동 작업자 목록을 검색합니다. | |
| 조직 외부 공동 작업자 제거 | 조직에서 외부 공동 작업자를 제거합니다. | |
| 조직에서 보류 중인 외부 공동 작업자 스트림 조회 | 리포지토리 내에서 보류 중인 공동 작업자 목록을 검색합니다. | |
| 조직 초대 스트림 조회 | 조직 내에서 초대 목록을 검색합니다. | |
| 리포지토리 관리 | 공동 작업자 추가 | 필요한 리포지토리에 공동 작업자를 추가합니다. |
| 끌어오기 요청에 대한 댓글 작성 | 끌어오기 요청에 대한 검토 주석을 생성합니다. | |
| 마일스톤 작성 | 필요한 리포지토리에 대한 마일스톤을 작성합니다. | |
| 끌어오기 요청 작성 | 리포지토리에 대한 끌어오기 요청을 생성합니다. | |
| 끌어오기 요청 검토 댓글에 대한 답글 작성 | 끌어오기 요청에 대한 검토 댓글에 대한 회신을 작성합니다. | |
| 리포지토리 작성 | 에 GitHub리포지토리를 작성합니다. | |
| 끌어오기 요청에 대한 댓글 삭제 | 끌어오기 요청에 대한 검토 주석을 삭제합니다. | |
| 마일스톤 삭제 | 필요한 리포지토리에서 마일스톤을 삭제합니다. | |
| 끌어오기 요청에 대한 댓글 나열 | 끌어오기 요청에 대한 모든 검토 설명 목록을 검색합니다. | |
| 마일스톤 나열 | 리포지토리의 모든 마일스톤 목록을 검색합니다. | |
| 리포지토리 이벤트 나열 | 리포지토리에서 이벤트 목록을 검색합니다. | |
| 끌어오기 요청 조회 | 리포지토리에 대한 끌어오기 요청의 상세 정보를 검색합니다. | |
| 리포지토리 조회 | 특정 사용자 또는 조직을 기준으로 리포지토리의 상세 정보를 검색합니다. | |
| 끌어오기 요청 병합 | 끌어오기 요청을 리포지토리에 병합합니다. | |
| 공동 작업자 제거 | 리포지토리에서 공동 작업자를 제거합니다. | |
| 끌어오기 요청에 대한 댓글 업데이트 | 끌어오기 요청에 대해 제공된 검토 주석을 업데이트합니다. | |
| 마일스톤 업데이트 | 리포지토리에서 마일스톤의 상세 정보를 업데이트합니다. | |
| 끌어오기 요청 업데이트 | 리포지토리에서 끌어오기 요청의 상세 정보를 업데이트합니다. | |
| 리포지토리 업데이트 | 에서 GitHub리포지토리의 상세 정보를 업데이트합니다. | |
| 소스 코드 관리 | 커밋에 대한 댓글 작성 | SHA를 사용하여 필요한 커밋에 대한 주석을 생성합니다. |
| 파일 작성 또는 업데이트 | 리포지토리에서 파일을 만들거나 기존 파일을 업데이트합니다. | |
| 커밋 ID를 기준으로 댓글 가져오기 | 단일 커밋에 대해 제공된 설명을 조회합니다. | |
| ID로 커밋 정보 가져오기 | 필요한 커밋 참조의 내용을 검색합니다. | |
| 파일 컨텐츠 가져오기 | 리포지토리에 있는 파일의 내용을 검색합니다. 주: 이 작업은 파일 크기가 최대 1MB인 파일을 지원합니다. |
|
| 리포지토리에 대한 커밋 나열 | 리포지토리에서 수행된 모든 커밋의 상세 정보를 조회합니다. | |
| 사용자 관리 | 엔터프라이즈 서버의 모든 사용자 가져오기 | 모든 GitHub Enterprise Server 사용자 목록을 검색합니다. |
| 인증된 사용자에 대한 조직 나열 | 로그인한 사용자가 구성원으로 속해 있는 조직의 목록을 검색합니다. | |
| 사용자 일시 중단 | 사용자 계정을 일시 중단합니다 GitHub . | |
| 인증된 사용자 조회 | 인증된 사용자에 대한 정보를 조회합니다. |
사용 가능한 AI 에이전트
스포크를 설치하고 Now Assist 사용 가능한 AI 에이전트 사용을 시작합니다. 자세한 내용은 Now Assist 스포크용 문서를 참조하십시오.
- ServiceNow 에이전트 시스템에서는 목표를 실행하기 위한 하나 이상의 독립 실행형 AI 에이전트와 함께 대규모 언어 모델(LLM) 지침 세트로 구성된 에이전트 워크플로우를 생성할 수 있습니다. 요구 사항에 따라 에이전트 워크플로우를 생성하고 필요한 트리거를 제공하기 위해 AI 에이전트를 추가하는 방법에 대한 자세한 내용은 을 참조하십시오 Create an agentic workflow .
사용 가능한 다른 AI 에이전트를 검색하고 에이전트 워크플로우에 추가할 수도 있습니다. 자세한 내용은 Find AI agents 문서를 참조하십시오.
- 필요한 스포크 AI 에이전트의 클론을 생성하고 요구 사항에 따라 사용자 지정할 수 있습니다. 클론 생성에 대한 자세한 내용은 을 참조하십시오 Duplicate an AI agent .
- AI 에이전트에 대한 자세한 내용은 을 참조하십시오 Now Assist AI agents .
사용 가능한 AI 에이전트는 다음과 같습니다.
| AI 에이전트 | 설명 |
|---|---|
| GitHub 분기 관리 AI 에이전트 | 분기를 GitHub 관리하고 유지 관리합니다. 또한 분기에 GitHub 대한 정보를 검색합니다. |
| GitHub 문제 관리 AI 에이전트 | Integration Hub에서 GitHub 관련 작업을 관리하고 자동화합니다. |
| GitHub 리포지토리 관리 AI 에이전트 | 리포지토리 작업, 끌어오기 요청, 끌어오기 요청에 대한 주석 및 마일스톤을 처리하여 GitHub 리포지토리를 관리합니다. |
| GitHub 소스 코드 관리 AI 에이전트 | 소스 코드를 관리하고 리포지토리 파일, 커밋 및 주석을 처리합니다. |
- 애플리케이션과 함께 Now Assist 설치된 AI 에이전트 중에 에이전틱 워크플로우에 사용되지 않을 수 있습니다. 인스턴스에서 사용할 수 있는 모든 에이전트를 보는 방법에 대한 자세한 내용은 AI 에이전트 찾기를 참조하십시오.
- 인스턴스에 설치되어 있지 않을 수 있는 에이전트를 찾으려면 에서 ServiceNow StoreAI 에이전트 마켓플레이스를 방문하십시오.
스포크 모듈
| 모듈 | 설명 |
|---|---|
| GitHub 소유자 | GitHub 생성한 소유자 기록을 표시합니다. |
| GitHub 저장소 | 소유자와 연결된 GitHub 리포지토리의 GitHub 상세 정보를 표시합니다. |
연결 및 자격 증명 별칭 요구 사항
통합 허브는 별칭을 사용하여 연결 및 자격 증명 정보와 OAuth 자격 증명을 관리합니다. 별칭을 사용하면 여러 환경을 사용할 때 여러 자격 증명과 연결 정보 프로파일을 구성하지 않아도 됩니다. 연결 또는 자격 증명 정보가 변경되면 연결을 사용하는 작업을 업데이트할 필요가 없습니다.
스포크 설정에 대한 자세한 내용은 다음을 참조하십시오. GitHub 스포크 설정.