검색

2장. 빌드 전략 구성

download PDF

BuildStrategy 또는 ClusterBuildStrategy CR(사용자 정의 리소스)에서는 전략 매개변수, 시스템 매개변수, 단계 리소스 정의, 주석 및 볼륨을 정의하여 빌드 전략을 구성할 수 있습니다. BuildStrategy 리소스는 네임스페이스 내에서 사용할 수 있으며 ClusterBuildStrategy 리소스는 클러스터 전체에서 사용할 수 있습니다.

빌드 전략을 구성하려면 BuildStrategy 또는 ClusterBuildStrategy 리소스 YAML 파일을 생성하여 OpenShift Container Platform 클러스터에 적용합니다.

2.1. 전략 매개변수 정의

BuildStrategy 또는 ClusterBuildStrategy CR(사용자 정의 리소스)에서 전략 매개변수를 정의하고 Build 또는 Build Run CR에서 해당 매개변수 값을 설정하거나 수정할 수 있습니다. 빌드 전략을 생성할 때 빌드 시 전략 매개변수를 구성하거나 수정할 수도 있습니다.

전략에 대한 매개변수를 정의하기 전에 다음 사항을 고려하십시오.

  • 빌드 전략 CR의 spec.parameters 필드에 매개변수 목록을 정의합니다. 각 목록 항목에는 배열 유형에 대한 이름, 설명, 유형 및 선택적 기본값 또는 값이 포함되어 있습니다. 기본값이 설정되지 않은 경우 Build 또는 BuildRun CR에 값을 정의해야 합니다.
  • 빌드 전략의 spec.steps 필드에 문자열 또는 배열 유형의 매개변수를 정의합니다.
  • $(params.your-parameter-name) 구문을 사용하여 문자열 유형의 매개변수를 지정합니다. 전략을 참조하는 Build 또는 BuildRun CR에서 your-parameter-name 매개변수 값을 설정할 수 있습니다. 요구 사항에 따라 다음 문자열 매개변수를 정의할 수 있습니다.

    표 2.1. 문자열 매개변수
    매개변수설명

    image

    이 매개변수를 사용하여 golang:$(params.go-version)과 같은 사용자 정의 태그를 정의합니다.

    args

    이 매개변수를 사용하여 빌더 명령에 데이터 전달

    env

    이 매개변수를 사용하여 환경 변수의 값을 제공

  • $(params.your-array-parameter-name[*]) 구문을 사용하여 배열 유형의 매개변수를 지정합니다. 배열을 지정한 후 인수 또는 명령에서 사용할 수 있습니다. 배열의 각 항목에 대해 인수가 설정됩니다. 다음 예제에서는 빌드 전략의 spec.steps 필드에서 array 매개변수를 사용합니다.

    apiVersion: shipwright.io/v1beta1
    kind: ClusterBuildStrategy
    metadata:
      name: <cluster_build_strategy_name>
      # ...
    spec:
      parameters:
        - name: tool-args
          description: Parameters for the tool
          type: array
      steps:
        - name: a-step
          command:
            - some-tool
          args:
            - --tool-args
            - $(params.tool-args[*])
  • 매개변수 값을 단순한 문자열로 제공하거나 구성 맵 또는 시크릿의 키에 대한 참조로 제공합니다. 매개변수의 경우 명령에 정의된 경우에만 구성 맵 또는 시크릿 값을 사용할 수 있습니다. spec.steps 필드의args 또는 env 섹션.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.