8.8.2. Post Commit 빌드 후크 구성


빌드 후 후크를 구성하는 방법은 다양합니다. 다음 예제의 모든 양식은 동일하고 bundle exec rake test --verbose:

  • 쉘 스크립트:

    postCommit:
      script: "bundle exec rake test --verbose"

    script 값은 /bin/sh -ic를 사용하여 실행할 쉘 스크립트입니다. 쉘 스크립트가 빌드 후크를 실행하는 데 적합한 경우 이 값을 사용합니다. 예를 들면 위와 같이 단위 테스트를 실행하는 경우입니다. 이미지 항목 지점을 제어하려는 경우 또는 이미지에 /bin/sh가 없는 경우 command 및/또는 args를 사용합니다.

    참고

    추가 -i 플래그는 CentOS 및 RHEL 이미지 작업 환경을 개선하기 위해 도입되었으며 향후 릴리스에서 제거될 수 있습니다.

  • 이미지 진입점으로서의 명령:

    postCommit:
      command: ["/bin/bash", "-c", "bundle exec rake test --verbose"]

    이 양식에서 command는 실행할 명령에 해당하며 Dockerfile 참조에 설명된 exec 형식의 이미지 진입점을 덮어씁니다. 이 명령은 이미지에 /bin/sh가 없거나 쉘을 사용하지 않는 경우 필요합니다. 다른 모든 경우에는 script를 사용하는 것이 더 편리할 수 있습니다.

  • 기본 진입점에 인수를 전달합니다.

    postCommit:
      args: ["bundle", "exec", "rake", "test", "--verbose"]

    이 형식의 args 는 이미지의 기본 진입점에 제공된 인수 목록입니다. 이미지 진입점은 인수를 처리할 수 있어야 합니다.

  • 인수가 있는 쉘 스크립트:

    postCommit:
      script: "bundle exec rake test $1"
      args: ["--verbose"]

    쉘 스크립트에서 올바르게 인용하기 어려운 인수를 전달해야 하는 경우 이 양식을 사용하십시오. 스크립트에서$0 은 "/bin/sh"이고 $1,$2, etc는 args 의 위치 인수입니다.

  • 인수가 있는 명령:

    postCommit:
      command: ["bundle", "exec", "rake", "test"]
      args: ["--verbose"]

    이 형식은 command에 인수를 추가하는 것과 동일합니다.

참고

scriptcommand를 동시에 제공하면 유효하지 않은 빌드 후크가 생성됩니다.

8.8.2.1. CLI 사용

oc set build-hook 명령은 빌드 설정에 빌드 후크를 설정하는 데 사용할 수 있습니다.

명령을 post-commit 빌드 후크로 설정하려면 다음을 실행합니다.

$ oc set build-hook bc/mybc \
    --post-commit \
    --command \
    -- bundle exec rake test --verbose

스크립트를 post-commit 빌드 후크로 설정하려면 다음을 실행합니다.

$ oc set build-hook bc/mybc --post-commit --script="bundle exec rake test --verbose"
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.