검색

4.5. 사용자 정의 매개변수 확장

download PDF

Pipeline을 코드로 사용하여 params 필드를 사용하여 PipelineRun 리소스 내에서 사용자 정의 매개변수를 확장할 수 있습니다. Repository CR(사용자 정의 리소스) 템플릿 내에 사용자 정의 매개변수 값을 지정할 수 있습니다. 지정된 값은 파이프라인 실행의 사용자 정의 매개변수를 대체합니다.

다음 시나리오에서는 사용자 지정 매개변수를 사용할 수 있습니다.

  • 푸시 또는 가져오기 요청에 따라 다른 레지스트리 URL과 같은 URL 매개변수를 정의하려면 다음을 수행합니다.
  • 관리자가 Git 리포지토리에서 PipelineRun 실행을 변경하지 않고도 관리할 수 있는 계정 UUID와 같은 매개변수를 정의하려면 다음을 수행합니다.
참고

Tekton 매개변수가 Pipeline 리소스에 정의되어 Git 리포지토리 내에서 함께 사용자 정의되므로 Tekton PipelineRun 매개변수를 사용할 수 없는 경우에만 사용자 정의 매개변수 확장 기능을 사용합니다. 그러나 사용자 지정 매개변수는 Repository CR이 있는 경우 정의 및 사용자 지정됩니다. 따라서 CI/CD 파이프라인을 단일 지점에서 관리할 수 없습니다.

다음 예제에서는 Repository CR에서 company 라는 사용자 정의 매개변수를 보여줍니다.

...
spec:
  params:
    - name: company
      value: "ABC Company"
...

value Cryo stat Company 는 파이프라인 실행 및 원격으로 가져온 작업에서 매개 변수 이름 회사로 대체됩니다.

다음 예와 같이 Kubernetes 시크릿에서 사용자 정의 매개변수 값을 검색할 수도 있습니다.

...
spec:
  params:
    - name: company
      secretRef:
        name: my-secret
        key: companyname
...

코드화로 파이프라인은 다음과 같은 방식으로 사용자 지정 매개변수를 구문 분석하고 사용합니다.

  • secretRef 가 정의된 경우 코드로 Pipeline은 값을 사용합니다.
  • params 섹션에 이름이 없는 경우 Code로 Pipeline이 매개변수를 구문 분석하지 않습니다.
  • 이름이 붙은 매개변수가 여러 개 있는 경우 Code와 Pipelines는 마지막 매개변수를 사용합니다.

사용자 지정 매개변수를 정의하고 지정된 조건이 CEL 필터에 일치하는 경우에만 확장을 사용할 수 있습니다. 다음 예제에서는 pull request 이벤트가 트리거될 때 company 라는 사용자 지정 매개변수에 적용 가능한 CEL 필터를 보여줍니다.

...
spec:
  params:
    - name: company
      value: "ABC Company"
      filter:
        - name: event
          value: |
      pac.event_type == "pull_request"
...
참고

이름과 다른 필터가 여러 개 있는 경우 Code와 Pipeline은 필터와 일치하는 첫 번째 매개변수를 사용합니다. 따라서 Pipeline as Code를 사용하면 다양한 이벤트 유형에 따라 매개변수를 확장할 수 있습니다. 예를 들어 push 및 pull request 이벤트를 결합할 수 있습니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.