GitHub 스포크
인스턴스에서 GitHub 분산 버전 제어 및 소스 코드를 관리합니다 ServiceNow . 에서 플로우 ServiceNow 를 생성하여 프로젝트의 GitHub버그 추적, 기능 요청, 작업 등과 같은 공동 작업 기능을 관리합니다. 부실 라이센스를 회수할 수 있도록 엔터프라이즈 클라우드 및 GitHub 엔터프라이즈 서버 소프트웨어 구독에 대한 GitHub 의미 있는 사용량 데이터를 보고 분석합니다.
스토어에서 앱 요청
사용 가능한 모든 앱을 보고 스토어에 요청을 제출하는 방법에 대한 자세한 내용을 보려면 다음을 ServiceNow Store 방문하십시오. 출시된 모든 앱의 누적 릴리스 정보는 ServiceNow Store 버전 기록 릴리스 정보를 참조하십시오.
통합 허브 구독
이 스포크는 Integration Hub 구독이 필요합니다. 자세한 내용은 법무 일정 - 통합 허브 개요를 참조하십시오.
스포크 버전
GitHub 스포크 v3.5.2 가 최신 버전입니다.
지원되는 버전
이 스포크는 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 스포크 에서 이벤트가 발생할 때 PROVIDES 작업은 분기, 문제, 리포지토리 및 소스 코드를 관리합니다.ServiceNow 사용 가능한 작업은 다음과 같습니다.
| 범주 | 동작 | 설명 |
|---|---|---|
| 분기 관리 | 분기 작성 | 특정 커밋 SHA를 기반으로 분기를 작성합니다.GitHub |
| 분기 삭제 | 리포지토리에서 분기를 삭제합니다 GitHub . | |
| 분기 조회 | 리포지토리의 분기에 대한 상세 정보를 검색합니다 GitHub . | |
| 분기 보호 조회 | 필요한 분기의 제한 상세 정보를 검색합니다. | |
| 분기 조회 | 리포지토리의 모든 분기 목록을 검색합니다. | |
| 분기 보호 제거 | 필요한 분기에 대한 보호를 제거합니다. | |
| 분기 보호 업데이트 | 필요한 분기에 대한 보호를 업데이트합니다. | |
| 문제 관리 | 문제에 대한 댓글 작성 | 필요한 문제에 대한 댓글을 작성합니다. |
| 문제 작성 | 필요한 리포지토리에 대한 문제를 작성합니다. | |
| 문제에 대한 댓글 삭제 | 필수 문제에 대한 댓글을 삭제합니다. | |
| 문제 잠금 | 필요한 문제를 잠급니다. 이렇게 하면 대화가 공동 작업자로만 제한됩니다. | |
| 문제 스트림에 대한 댓글 조회 | 문제에 대한 댓글 목록을 검색합니다. | |
| 문제 스트림 조회 | 리포지토리에 대한 문제 목록을 검색합니다. | |
| 문제 잠금 해제 | 필요한 문제의 잠금을 해제합니다. 그러면 모든 사용자에게 대화가 열립니다. | |
| 문제에 대한 댓글 업데이트 | 문제에 대한 댓글을 업데이트합니다. | |
| 문제 업데이트 | 필요한 문제의 상세 정보를 업데이트합니다. | |
| 메타데이터 조회 | 작업으로 필드 조회 | 필드 테이블에서 작업 필터의 필드 목록을 검색합니다 GitHub . |
| 분기 메타데이터 조회 | 분기의 메타데이터를 검색합니다. | |
| 문제 메타데이터 조회 | 문제의 메타데이터를 검색합니다. | |
| 마일스톤 메타데이터 조회 | 마일스톤의 메타데이터를 검색합니다. | |
| 끌어오기 요청 메타데이터 조회 | 끌어오기 요청의 메타데이터를 검색합니다. | |
| 조직 관리 | 조직 계획 조회 | 조직의 계획 이름을 검색합니다. |
| 조직 구성원 스트림 조회 | 조직 내의 모든 구성원 목록을 조회합니다. | |
| 조직 리포지토리 스트림 조회 | 조직 내의 모든 리포지토리 목록을 검색합니다. | |
| 조직 구성원 제거 | 조직에서 사용자를 제거합니다. | |
| 조직 이벤트 스트림 조회 | 제공된 조회 기준 날짜를 기준으로 조직의 이벤트 목록을 검색합니다. | |
| 조직 외부 공동 작업자 스트림 조회 | 조직 내의 모든 외부 공동 작업자 목록을 조회합니다. | |
| 조직 외부 공동 작업자 제거 | 조직에서 외부 공동 작업자를 제거합니다. | |
| 조직에서 보류 중인 외부 공동 작업자 스트림 조회 | 리포지토리 내에서 보류 중인 공동 작업자 목록을 검색합니다. | |
| 조직 초대 스트림 조회 | 조직 내에서 초대 목록을 조회합니다. | |
| 조직 감사 로그 스트림 조회 | 지정된 조사 기간 확인 날짜에 대한 조직 감사 로그 이벤트 목록을 검색합니다. | |
| 리포지토리 관리 | 공동 작업자 추가 | 필요한 리포지토리에 공동 작업자를 추가합니다. |
| 리포지토리 삭제 | 에서 GitHub리포지토리를 삭제합니다. | |
| 끌어오기 요청에 대한 댓글 작성 | 끌어오기 요청에 대한 검토 댓글을 생성합니다. | |
| 마일스톤 작성 | 필요한 리포지토리에 대한 마일스톤을 작성합니다. | |
| 끌어오기 요청 작성 | 리포지토리에 대한 끌어오기 요청을 작성합니다. | |
| 끌어오기 요청 검토 댓글에 대한 답글 작성 | 끌어오기 요청에 대한 검토 댓글에 대한 회신을 작성합니다. | |
| 리포지토리 작성 | 에서 리포지토리를 작성합니다 GitHub. | |
| 끌어오기 요청에 대한 댓글 삭제 | 끌어오기 요청에 대한 검토 댓글을 삭제합니다. | |
| 마일스톤 삭제 | 필요한 리포지토리에서 마일스톤을 삭제합니다. | |
| 끌어오기 요청 스트림에 대한 댓글 조회 | 끌어오기 요청에 대한 모든 검토 댓글 목록을 검색합니다. | |
| 마일스톤 스트림 조회 | 리포지토리의 모든 마일스톤 목록을 검색합니다. | |
| 리포지토리 이벤트 스트림 조회 | 리포지토리 전체에서 이벤트 목록을 검색합니다. | |
| 끌어오기 요청 스트림 조회 | 리포지토리에 대한 끌어오기 요청의 상세 정보를 검색합니다. | |
| 리포지토리 스트림 조회 | 특정 사용자 또는 조직을 기반으로 리포지토리의 상세 정보를 검색합니다. | |
| 리포지토리 상세 정보 조회 | 지정된 리포지토리의 상세 정보를 검색합니다. | |
| 끌어오기 요청 병합 | 끌어오기 요청을 리포지토리에 병합합니다. | |
| 공동 작업자 제거 | 리포지토리에서 공동 작업자를 제거합니다. | |
| 끌어오기 요청에 대한 댓글 업데이트 | 끌어오기 요청에 제공된 검토 댓글을 업데이트합니다. | |
| 마일스톤 업데이트 | 리포지토리에서 마일스톤의 상세 정보를 업데이트합니다. | |
| 끌어오기 요청 업데이트 | 리포지토리에서 끌어오기 요청의 상세 정보를 업데이트합니다. | |
| 리포지토리 업데이트 | 에서 리포지토리의 상세 정보를 업데이트합니다 GitHub. | |
| 소스 코드 관리 | 커밋에 대한 댓글 작성 | SHA를 사용하여 필요한 커밋에 대한 댓글을 작성합니다. |
| 파일 작성 또는 업데이트 | 리포지토리에서 파일을 작성하거나 기존 파일을 업데이트합니다. | |
| 커밋 ID 스트림으로 댓글 조회 | 단일 커밋에 대해 제공된 설명을 검색합니다. | |
| ID로 커밋 정보 조회 | 필요한 커밋 참조의 내용을 검색합니다. | |
| 파일 내용 조회 | 리포지토리에 있는 파일의 내용을 검색합니다. 주: 이 작업은 파일 크기가 최대 1MB인 파일을 지원합니다. |
|
| 리포지토리에 대한 커밋 조회 | 리포지토리에서 수행된 모든 커밋의 상세 정보를 조회합니다. | |
| 사용자 관리 | 엔터프라이즈 서버의 모든 사용자 조회 | 모든 GitHub 엔터프라이즈 서버 사용자 목록을 조회합니다. |
| 인증된 사용자 스트림에 대한 조직 조회 | 로그인한 사용자가 구성원으로 소속된 조직의 목록을 검색합니다. | |
| 사용자 일시 중단 | 사용자 계정을 일시 중단합니다 GitHub . | |
| 인증된 사용자 조회 | 인증된 사용자에 대한 정보를 조회합니다. |
사용 가능한 AI 에이전트
사용 가능한 AI 에이전트를 통합 허브 설치 Now Assist 하고 사용합니다. 자세한 내용은 통합 허브에 대한 Now Assist 문서를 참조하십시오.
- ServiceNow 에이전트 시스템에서는 목표를 실행하기 위한 하나 이상의 독립 실행형 AI 에이전트와 함께 대규모 언어 모델(LLM) 지침 세트로 구성된 에이전트 워크플로우를 생성할 수 있습니다. 요구 사항에 따라 에이전트 워크플로우를 생성하고 필요한 트리거를 제공하기 위해 AI 에이전트를 추가하는 방법에 대한 자세한 내용은 을 참조하십시오 .
사용 가능한 다른 AI 에이전트를 검색하고 에이전트 워크플로우에 추가할 수도 있습니다. 자세한 내용은 Find AI agents 문서를 참조하십시오.
- 필요한 스포크 AI 에이전트의 클론을 생성하고 요구 사항에 따라 사용자 지정할 수 있습니다. 클론 생성에 대한 자세한 내용은 을 참조하십시오 .
- AI 에이전트에 대한 자세한 내용은 을 참조하십시오 .
사용 가능한 AI 에이전트는 다음과 같습니다.
| AI 에이전트 | 설명 |
|---|---|
| GitHub 분기 관리 AI 에이전트 | 분기를 GitHub 관리하고 유지 관리합니다. 또한 분기에 GitHub 대한 정보를 검색합니다. |
| GitHub 문제 관리 AI 에이전트 | Integration Hub에서 GitHub 관련 작업을 관리하고 자동화합니다. |
| GitHub 리포지토리 관리 AI 에이전트 | 리포지토리 작업, 끌어오기 요청, 끌어오기 요청에 대한 주석 및 마일스톤을 처리하여 GitHub 리포지토리를 관리합니다. |
| GitHub 소스 코드 관리 AI 에이전트 | 소스 코드를 관리하고 리포지토리 파일, 커밋 및 주석을 처리합니다. |
| GitHub 코드 자동화 AI 에이전트 | ServiceNow 인스턴스에서 코드 변경 및 GitHub 작업을 관리합니다. 이 에이전트는 요청을 해석하고, 명확한 질문을 하고, 컨텍스트를 분석하여 잘 통합된 코드 업데이트를 제공합니다. 또한 분기 만들기, 변경 내용 커밋 및 끌어오기 요청 열기와 같은 GitHub 작업을 수행합니다. |
애플리케이션과 함께 Now Assist 설치된 AI 에이전트 중에 에이전틱 워크플로우에 사용되지 않을 수 있습니다. 사용할 수 있는 모든 에이전트를 보는 방법을 알아보려면 AI 에이전트 찾기를 참조하세요.
스포크 모듈
| 모듈 | 설명 |
|---|---|
| GitHub 소유자 | 생성한 소유자 기록이 GitHub 표시됩니다. |
| GitHub 리포지토리 | 소유자와 연결된 리포지토리의 GitHub 상세 정보를 표시합니다.GitHub |
연결 및 자격 증명 별칭 요구 사항
통합 허브 는 별칭을 사용하여 연결 및 자격 증명 정보와 OAuth 자격 증명을 관리합니다. 별칭을 사용하면 여러 환경을 사용할 때 여러 자격 증명과 연결 정보 프로파일을 구성하지 않아도 됩니다. 연결 또는 자격 증명 정보가 변경되면 연결을 사용하는 작업을 업데이트할 필요가 없습니다.
스포크 설정에 대한 자세한 내용은 다음 문서를 참조하십시오 스포크 설정 GitHub.