18.12. 튜토리얼: 자동화된 배포를 위해 S2I(Source-to-Image) Webhook 사용


Webhook를 사용하여 소스 코드를 변경할 때마다 빌드를 자동으로 트리거하고 배포합니다. 이 프로세스에 대한 자세한 내용은 빌드 트리거를 참조하십시오.

프로세스

  1. 터미널에서 GitHub Webhook 트리거 보안을 가져오려면 다음 명령을 실행합니다.

    $ oc get bc/ostoy-microservice -o=jsonpath='{.spec.triggers..github.secret}'

    출력 예

    `o_3x9M1qoI2Wj_cz1WiK`

    중요

    이 프로세스의 이후 단계에서 이 시크릿을 사용해야 합니다.

  2. OSToy의 buildconfig에서 GitHub Webhook 트리거 URL을 가져오려면 다음 명령을 실행합니다.

    $ oc describe bc/ostoy-microservice

    출력 예

    [...]
    Webhook GitHub:
    	URL:	https://api.demo1234.openshift.com:443/apis/build.openshift.io/v1/namespaces/ostoy-s2i/buildconfigs/ostoy/webhooks/<secret>/github
    [...]

  3. GitHub Webhook URL에서 < secret> 텍스트를 검색한 시크릿으로 바꿉니다. URL은 다음 예제 출력과 유사합니다.

    출력 예

    https://api.demo1234.openshift.com:443/apis/build.openshift.io/v1/namespaces/ostoy-s2i/buildconfigs/ostoy-microservice/webhooks/o_3x9M1qoI2Wj_czR1WiK/github

  4. GitHub 리포지토리에 Webhook URL을 설정합니다.

    1. 리포지토리에서 설정 > Webhook > Webhook 추가 를 클릭합니다.

      Webhook 추가
    2. "Payload URL" 필드에 포함된 Secret 을 사용하여 GitHub Webhook URL을 붙여넣습니다.
    3. "Content type"을 application/json 으로 변경합니다.
    4. Webhook 추가 버튼을 클릭합니다.

      Webhook 추가 완료

      GitHub에서 Webhook가 성공적으로 구성되었음을 알리는 메시지가 표시됩니다. 이제 GitHub 리포지토리에 변경 사항을 푸시할 때마다 새 빌드가 자동으로 시작되고 빌드가 성공하면 새 배포가 시작됩니다.

  5. 이제 소스 코드를 변경합니다. 모든 변경 사항은 빌드 및 배포를 자동으로 트리거합니다. 이 예에서는 OSToy 앱의 상태를 나타내는 색상이 임의로 선택됩니다. 구성을 테스트하려면 상자를 회색 스케일링만 표시하도록 변경합니다.

    1. 리포지토리의 소스 코드로 이동합니다 https://github.com/<username>/ostoy/blob/master/microservice/app.js.
    2. 파일을 편집합니다.
    3. 8행을 주석으로 주석 처리(로우를 허용하면 random color = getRandom Cryostat();).
    4. Uncomment line 9 (containing let randomColor = getRandomGrayScaleColor();).

      7   app.get('/', function(request, response) {
      8   //let randomColor = getRandomColor(); // <-- comment this
      9   let randomColor = getRandomGrayScaleColor(); // <-- uncomment this
      10
      11  response.writeHead(200, {'Content-Type': 'application/json'});
    5. "Graphscale 색상으로 변경됨"과 같은 업데이트 메시지를 입력합니다.
    6. 하단에서 커밋 을 클릭하여 기본 분기에 대한 변경 사항을 커밋합니다.
  6. 클러스터의 웹 UI에서 빌드 > 빌드 를 클릭하여 빌드 상태를 확인합니다. 이 빌드가 완료되면 배포가 시작됩니다. 터미널에서 oc 상태를 실행하여 상태를 확인할 수도 있습니다.

    빌드 실행
  7. 배포가 완료되면 브라우저의 OSToy 애플리케이션으로 돌아갑니다. 왼쪽의 Networking 메뉴 항목에 액세스합니다. 이제 상자 색상은 회색 영역 색상으로만 제한됩니다.

    회색
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.