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
에 인수를 추가하는 것과 동일합니다.
script
와 command
를 동시에 제공하면 유효하지 않은 빌드 후크가 생성됩니다.
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"