수동 트리거 만들기

이 페이지에서는 수동 트리거를 만드는 방법을 설명합니다. 수동 트리거를 사용하면 빌드를 실행하기 전에 호출 시 정의된 대체 변수 값을 재정의할 수 있는 기능을 통해 빌드를 수동으로 호출할 수 있습니다. 또한 수동 트리거가 특정 시간에 자동으로 실행되도록 예약할 수 있습니다.

gcloud 명령줄 도구 또는 Cloud Build API를 사용하여 수동으로 빌드를 시작하는 방법은 수동으로 빌드 시작을 참조하세요.

시작하기 전에

  • Cloud Build API를 사용 설정합니다.

    API 사용 설정

  • 소스 코드를 준비하세요.

수동 트리거

수동 트리거를 사용하면 연결된 저장소에서 트리거를 호출할 때만 실행되는 빌드를 설정할 수 있습니다. 스테이징 또는 프로덕션 환경에 소스 코드를 배포하기 위한 파이프라인을 만든다고 가정해 보겠습니다. 워크플로를 자동화하려 할 수 있지만 수동으로만 빌드를 호출하려고 합니다. 이를 위해 수동 트리거를 정의할 수 있습니다.

수동 트리거를 사용하면 다음을 통해 빌드를 수동으로 호출할 수 있습니다.

  • 지정된 분기 또는 태그가 있는 호스팅된 저장소에서 소스 코드를 가져옵니다.
  • 빌드를 호출할 때마다 수동으로 전달할 필요가 없는 대체 변수로 빌드를 매개변수화합니다.
  • 빌드를 호출하기 전에 호출 시 정의된 대체 변수 값을 재정의합니다.

호스팅된 저장소 대신 로컬에서 작업 중인 디렉터리에서 빌드를 호출하거나 트리거를 만들지 않고 빌드를 제출하려는 경우 작업 디렉터리에서 다음 gcloud 명령어를 실행하면 됩니다.

gcloud builds submit --config build-config source-code

각 항목의 의미는 다음과 같습니다.

  • build-config는 빌드 구성 파일의 경로입니다.
  • source-code는 경로 또는 URL 소스 코드입니다.

로컬 디렉터리에서 gcloud 명령어를 사용하여 수동으로 빌드를 시작하는 방법에 대한 상세 정보는 수동으로 빌드 시작을 참조하세요.

수동 트리거 만들기

수동 트리거를 만들려면 다음 안내를 따르세요.

  1. 트리거 페이지 열기:

    트리거 페이지 열기

  2. 페이지 상단에서 프로젝트를 선택하고 열기를 클릭합니다.

  3. 트리거 만들기를 클릭합니다.

  4. 다음 트리거 설정을 입력합니다.

    • 이름: 트리거의 이름입니다.
    • 설명(선택 사항): 트리거에 대한 설명입니다.
    • 시기: 수동 실행을 선택하여 트리거를 수동으로 호출할 때만 빌드가 실행하도록 설정합니다.
    • 소스: 수동 트리거가 실행될 때 빌드할 저장소를 선택합니다.
    • 버전: 수동 트리거가 실행될 때 빌드할 분기 또는 태그를 선택합니다.
      • 분기: 이 분기에서 빌드할 트리거를 설정합니다. 리터럴 값을 지정해야 합니다. 정규 표현식은 현재 지원되지 않습니다.
      • 태그: 이 태그에 빌드할 트리거를 설정합니다. 리터럴 값을 지정해야 합니다. 정규 표현식은 현재 지원되지 않습니다.
    • 빌드 구성: 트리거로 호출한 각 빌드에 사용할 빌드 구성 파일(클라우드 프로젝트에 연결된 GitHub 저장소에 있음)을 선택합니다.
      • 빌드 구성에 Dockerfile을 사용하려면 Dockerfile 디렉터리를 지정하고 결과 이미지에 이름을 지정해야 합니다. 원하는 경우 빌드에 제한 시간을 제공할 수도 있습니다. Dockerfile과 이미지 이름을 제공하면, 빌드가 실행할 docker build 명령어의 미리보기가 표시됩니다.
      • 빌드 구성에 빌드 구성 파일을 사용하려면 빌드 구성 파일의 위치를 제공해야 합니다. 필요한 경우 사용할 대체 변수를 제공할 수 있습니다.
  5. 만들기를 클릭하여 수동 트리거를 만듭니다.

빌드 예약

수동 트리거를 사용하여 빌드가 지정된 시간에 실행되도록 예약할 수 있습니다. 수동 트리거를 만들지 않은 경우 수동 트리거 만들기를 참조하세요.

  1. 트리거 페이지 열기:

    트리거 페이지 열기

  2. 빌드를 예약할 수동 트리거의 이름을 클릭합니다.

    트리거 수정 페이지가 표시됩니다.

  3. 빌드를 예약하려면 일정에 따라 실행을 클릭합니다.

    오른쪽에 일정에 따라 트리거 실행 패널이 표시됩니다.

  4. Cloud Scheduler API를 사용 설정합니다.

    빌드를 처음 예약할 때만 Cloud Scheduler API를 사용 설정하라는 메시지가 표시됩니다.

  5. Cloud Scheduler에서 트리거를 호출하는 데 사용할 서비스 계정을 선택합니다.

    다음 형식으로 기본 예약 서비스 계정이 표시됩니다. 여기서 project-id는 프로젝트의 프로젝트 ID입니다.

     cloud-build-trigger-scheduler@project-id.iam.gserviceaccount.com
    

    선택하면 기본 서비스 계정이 자동으로 생성됩니다. Cloud Build 편집자 역할은 생성 시 서비스 계정에 부여됩니다. Cloud Scheduler에서 트리거를 호출하는 기본 서비스 계정을 삭제하지 않는 것이 좋습니다. 서비스 계정이 삭제되거나 서비스 계정과 연결된 권한이 수정된 경우 여기의 안내를 따라 빌드를 예약하여 서비스 계정을 다시 만들어야 합니다. 서비스 계정이 다시 생성되면 기존 Cloud Scheduler 작업이 다시 시작될 때까지 최대 1시간이 소요될 수 있습니다.

    계속을 클릭합니다.

  6. 다음 Cloud Scheduler 작업 설정을 입력합니다.

    • 이름: Cloud Scheduler 작업의 이름입니다.
    • 설명(선택사항): Cloud Scheduler 작업에 대한 설명입니다.
    • 빈도: 트리거를 실행할 빈도를 선택합니다. 드롭다운 메뉴에서 빈도를 선택하거나 크론 구문을 사용하여 커스텀 값을 입력할 수 있습니다. 수동 트리거를 매일 오전 6시에 실행하려면 크론 구문에서 실행 빈도를 0 6 * * *로 지정하면 됩니다. 크론 구문에 대한 자세한 내용은 크론 작업 일정 구성을 참조하세요.
    • 시간대: 시간대를 선택합니다.
  7. 만들기를 클릭하여 Cloud Scheduler 작업을 만듭니다.

  8. Cloud Scheduler 작업을 보려면 보기를 클릭합니다. 그렇지 않으면 완료를 클릭하여 패널을 닫습니다.

수동 트리거와 연결된 버전을 업데이트하는 경우 트리거와 관련된 Cloud Scheduler 작업을 수동으로 업데이트해야 합니다. 예를 들어 수동 트리거의 분기 이름을 업데이트하는 경우 작업의 분기 이름을 수동으로 업데이트해야 합니다. Cloud Scheduler 페이지에서 선택한 작업을 수정하여 Cloud Scheduler 작업의 본문에서 업데이트할 수 있습니다.

트리거와 연결된 스케줄러 작업을 삭제하면 트리거가 작업에 지정된 시간에 더 이상 실행되지 않습니다. 트리거를 삭제해도 트리거와 연결된 모든 작업이 자동으로 삭제되지 않습니다. 트리거 자체를 삭제하면 작업이 실패합니다.

작업을 삭제하는 방법은 작업 삭제를 참조하세요. 트리거를 삭제하는 방법은 빌드 트리거 삭제를 참조하세요.

수동 트리거 실행

Google Cloud Console을 사용하여 수동 트리거를 실행하려면 다음 안내를 따르세요.

  1. Google Cloud Console에서 트리거 페이지를 엽니다.

    트리거 페이지 열기

  2. 목록에서 트리거를 찾습니다.

  3. 트리거 실행을 클릭합니다.

    트리거 실행을 클릭하면 오른쪽에 트리거 실행 창이 표시됩니다. 분기 이름, 태그 이름 또는 대체 변수와 같은 필드를 지정한 경우 호출 시 이러한 필드를 재정의할 수 있습니다.

    대체할 새 변수 값을 지정한 경우 트리거 실행을 클릭하여 빌드를 호출하세요.

다음 단계