검색

1.4. 빌드의 매개변수 값 정의

download PDF

Build CR에서 빌드 전략 매개변수의 값을 지정할 수 있습니다. 매개변수 값을 지정하면 빌드 전략의 단계가 작동하는 방법을 제어할 수 있습니다. BuildRun 리소스의 값을 덮어쓸 수도 있습니다.

모든 매개변수의 경우 직접 또는 구성 맵 또는 시크릿의 참조 키를 사용하여 값을 지정해야 합니다.

참고

빌드 전략 단계에서 매개변수를 사용하면 구성 맵 및 시크릿 사용이 제한됩니다. 매개변수가 명령, 인수 또는 환경 변수에 사용되는 경우에만 구성 맵과 시크릿을 사용할 수 있습니다.

Build CR에서 paramValues 필드를 사용하는 경우 다음 시나리오를 사용하지 마십시오.

  • BuildStrategy CR에 정의된 spec.parameters 중 하나와 일치하지 않는 spec.paramValues 이름을 지정합니다.
  • shipwright 예약된 매개변수와 충돌하는 spec.paramValues 이름을 지정합니다. 이러한 매개변수에는 BUILDER_IMAGE,CONTEXT_DIRshp- 로 시작하는 모든 이름이 포함됩니다.

또한 Build CR에서 paramValues 필드를 정의하기 전에 전략의 내용을 이해해야 합니다.

1.4.1. 매개변수 값을 정의하는 구성 예

다음 예제에서는 빌드 전략에서 매개변수를 정의하고 Build CR을 사용하여 해당 매개변수에 값을 할당하는 방법을 보여줍니다. Build CR의 유형 배열 의 매개변수에 값을 할당할 수도 있습니다.

예: ClusterBuildStrategy CR의 매개변수 정의

다음 예제에서는 여러 매개변수를 정의하는 ClusterBuildStrategy CR을 보여줍니다.

apiVersion: shipwright.io/v1beta1
kind: ClusterBuildStrategy
metadata:
  name: buildah
spec:
  parameters:
    - name: build-args
      description: "The values for the args in the Dockerfile. Values must be in the format KEY=VALUE."
      type: array
      defaults: []
    # ...
    - name: storage-driver
      description: "The storage driver to use, such as 'overlay' or 'vfs'."
      type: string
      default: "vfs"
# ...
steps:
# ...

예: Build CR에서 매개변수에 값 할당

위의 ClusterBuildStrategy CR은 storage-driver 매개변수를 정의하고 다음 예와 같이 Build CR에서 storage-driver 매개변수 값을 지정할 수 있습니다.

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: <your_build>
  namespace: <your_namespace>
spec:
  paramValues:
  - name: storage-driver
    value: "overlay"
  strategy:
    name: buildah
    kind: ClusterBuildStrategy
  output:
  # ...

예: 중앙에서 매개변수를 제어하기 위해 ConfigMap CR 생성

여러 빌드에 storage-driver 매개변수를 사용하고 중앙에서 사용을 제어하려면 다음 예와 같이 ConfigMap CR을 생성할 수 있습니다.

apiVersion: v1
kind: ConfigMap
metadata:
  name: buildah-configuration
  namespace: <your_namespace>
data:
  storage-driver: overlay

다음 예와 같이 생성된 ConfigMap CR을 Build CR에서 매개변수 값으로 사용할 수 있습니다.

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: <your_build>
  namespace: <your_namespace>
spec:
  paramValues:
  - name: storage-driver
    configMapValue:
      name: buildah-configuration
      key: storage-driver
  strategy:
    name: buildah
    kind: ClusterBuildStrategy
  output:
  # ...

예: Build CR에서 type 배열 의 매개변수에 값 할당

배열 형식의 매개 변수에 값을 할당할 수 있습니다. buildah 전략을 사용하는 경우 registries-search 매개변수를 정의하여 특정 레지스트리의 이미지를 검색할 수 있습니다. 다음 예제에서는 registries-search 배열 매개변수에 값을 할당하는 방법을 보여줍니다.

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: <your_build>
  namespace: <your_namespace>
spec:
  paramValues:
  - name: storage-driver
    configMapValue:
      name: buildah-configuration
      key: storage-driver
  - name: registries-search
    values:
    - value: registry.redhat.io
  strategy:
    name: buildah
    kind: ClusterBuildStrategy
  output:
  # ...

예: Build CR에서 시크릿 참조

다음 예와 같이 registries-block 배열 매개변수의 시크릿을 참조할 수 있습니다.

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: <your_build>
  namespace: <your_namespace>
spec:
  paramValues:
  - name: storage-driver
    configMapValue:
      name: buildah-configuration
      key: storage-driver
  - name: registries-block
    values:
    - secretValue: 1
        name: registry-configuration
        key: reg-blocked
  strategy:
    name: buildah
    kind: ClusterBuildStrategy
  output:
  # ...
1
이 값은 보안을 참조합니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.