DevSecOps 커먼즈 스크립트 이해하기

DevSecOps, 일부 단계는 구성 YAML 파일에 지정되지 않은 경우 기본 스크립트를 실행합니다. 이러한 기본 스크립트는 파이프라인 구성 사용자 지정의 시작점으로 사용할 수 있는 재사용 가능한 스크립트 집합을 제공하는 커먼 스크립트 라이브러리의 일부입니다.

커먼즈 스크립트 라이브러리

  • 커먼 스크립트 라이브러리는 DevSecOps 파이프라인에서 사용할 수 있는 재사용 가능한 스크립트 모음입니다.
  • 이 커먼 스크립트 라이브러리의 스크립트와 함수는 특정 파이프라인 요구 사항을 충족하기 위해 파이프라인 구성을 사용자 지정하는 데 사용할 수 있습니다.

커먼즈 스크립트 라이브러리와 그 사용법에 대해 자세히 알아보려면 커먼즈 스크립트 라이브러리 문서를 참조하세요.

기본 스크립트 보기

스테이지에서 실행 중인 기본 스크립트를 보려면 해당 스테이지의 로그를 검토하세요. 예를 들어 ' scan-artifact ' 단계입니다:

=== Executing custom script for stage 'scan-artifact' ===

The custom script can be viewed using the following link: '<SCRIPT URL>'

You can customize this stage in your pipeline config. For more information, see [Custom scripts](/docs/devsecops?topic=devsecops-cd-devsecops-pipelines-custom-customize).

The script(s) used in this stage can be found at the following location(s):

- path: scan-artifact
  repo: <REPO URL>
  sha: b0fff29d715e0f9a33b3c84e649777cfb9d40738
- path: icr-va
  repo: <REPO URL>
  sha: de693814ba2bd992941b432fc71111efb54e2b27

Using the following defaults for stage "scan-artifact":

scan-artifact:
  image: icr.io/continuous-delivery/pipeline/pipeline-base-image:2.12@sha256:ff4053b0bca784d6d105fee1d008cfb20db206011453071e86b69ca3fde706a4
  dind: false
  abort_on_failure: false
  image_pull_policy: IfNotPresent
  script: |
    #!/bin/sh

    "/opt/commons/scan-artifact/scan.sh"

이 메시지는 세 부분으로 구성되어 있습니다:

  1. 첫 번째 줄은 현재 실행 중인 정확한 스크립트 URL 를 커밋 수준에서 가리키고 있습니다.

  2. 두 번째 부분은 빌드 중에 파이프라인 기본 이미지로 가져오는 경로, 리포지토리 및 커밋 해시의 목록입니다. 런타임에 이러한 리포지토리에서 가져오지 않습니다. 이 정보는 파이프라인에 정확히 무엇이 포함되어 있는지에 대한 공개 추적성을 향상시킵니다.

  3. 세 번째 부분은 구성 YAML로 사용되는 기본 구성입니다. 이 YAML 스니펫을 가져와서 DevSecOps 구성 YAML 파일에 포함할 수 있습니다. 이 작업은 기본 구성을 사용자 구성으로 재정의하지만 기본 이미지의 기본 스크립트를 계속 사용합니다. 이 방법은 기본 검사 전에 다른 검사를 구현하려는 경우에 유용합니다.

이 정보는 채택자가 기본적으로 단계적으로 실행되는 커먼 스크립트 라이브러리에서 스크립트와 기능을 식별하는 데 도움이 되도록 표시됩니다. 결국 스크립트를 검사하고, 스크립트가 수행하는 작업을 이해하고, 스크립트를 스크립트 컬렉션에 복사하고, 사용 사례에 맞게 업데이트할 수 있습니다.

커먼즈 스크립트 라이브러리를 사용하여 사용자 지정

커먼즈 라이브러리는 특정 에지 케이스에 맞게 코드를 복사하고 사용자 지정할 수 있는 소스로도 사용할 수 있습니다. 라이브러리를 시작점으로 삼아 다양한 요구 사항에 따라 사용자 지정 스크립트를 만들 수 있습니다.

파이프라인 사용자 지정에 대해 자세히 알아보려면 여기를 참조하세요

우수 사례

  • 커먼즈 라이브러리를 파이프라인 역학에 대한 참조로 사용하세요.
  • 특정 엣지 사례에 맞게 기본 스크립트를 사용자 지정하세요.
  • ' collect-evidence 스크립트를 사용하여 사용자 지정 스크립트에서 증거를 수집합니다.