CLI를 사용하여 Snyk을 워크플로우에 통합

이 페이지는 Snyk CLI를 사용하여 GitHub 워크플로에 Snyk을 통합하는 예시를 제공합니다.

1단계: 환경 설정

  1. Snyk CLI를 열고 goof 리포지토리에서 git clone 명령을 실행합니다.

       git clone https://github.com/snyk/goof.git
  2. 새 브랜치를 생성하고 이 브랜치에 취약점을 추가한 다음 변경 사항을 Pull Request로 GitHub에 다시 병합합니다.

       git branch add_vulns
       git checkout add_vulns

2단계: 오픈소스 종속성 추가

복제된 goof 애플리케이션의 package.json 매니페스트 파일을 검토하여 나열된 여러 직접 종속성을 확인합니다.

package.json 파일의 종속성 목록.
package.json 파일의 종속성 목록
circle-info

이러한 직접 종속성은 추가 전이 종속성(의존하는 라이브러리)을 가질 수도 있습니다.

종속성을 추가하려면:

  • 종속성 목록 하단에 tinymce 4.1.0 라이브러리를 추가합니다.

circle-info

팁: 이전 종속성 뒤에 쉼표를 배치하는 것을 잊지 마십시오.

circle-info

팁: 이 파일이 이미 존재하는 경우 rm package-lock.json을 실행하여 제거하십시오.

3단계: 변경 사항 커밋 및 검토

  • 로컬에서 변경 사항을 커밋하고, 로컬 Git 리포지토리에서 변경 사항의 상태를 확인한 다음, 변경 사항을 로컬 Git에 추가한 다음, 커밋합니다.

  • 로컬 코드 변경 사항을 GitHub에 커밋하여 파일과 기록을 GitHub의 업스트림 Git 리포지토리로 전송합니다.

  • GitHub에서 비교 및 풀 리퀘스트를 클릭하여 add_vulns 브랜치를 master 브랜치와 비교하고 풀 리퀘스트를 생성합니다.

GitHub의 풀 리퀘스트 정보
GitHub의 풀 리퀘스트 정보

4단계: Snyk PR 확인 사용

Snyk은 병합 프로세스에서 풀 리퀘스트(PR)를 자동으로 스캔하여 취약점 및 라이선스 문제를 확인할 수 있습니다.

GitHub의 Snyk 풀 리퀘스트 확인
GitHub의 Snyk 풀 리퀘스트 확인

PR 워크플로가 완료되면 Snyk은 프로젝트에 설정된 취약점 및 라이선스 정책을 확인합니다. 정책에 따라 확인이 통과되거나 실패하며, 이는 GitHub에 표시됩니다.

이렇게 하면 보안 게이트를 설정하고 풀 리퀘스트가 새로운 취약점 또는 라이선스 정책을 충족하지 않는 새로운 오픈소스 라이브러리를 소스 코드 기준선에 추가하는 것을 방지할 수 있습니다.

Last updated