비밀번호

커뮤니티2

  • 구름조금속초10.5맑음북춘천12.0맑음철원12.6맑음동두천13.8구름조금파주11.2구름많음대관령9.2맑음춘천13.0박무백령도9.5구름많음북강릉12.3구름많음강릉12.5구름조금동해10.9맑음서울12.6맑음인천10.5구름조금원주13.4맑음울릉도12.6맑음수원11.7구름조금영월12.9맑음충주11.6맑음서산13.0구름조금울진11.1맑음청주13.7맑음대전14.1구름조금추풍령12.9맑음안동12.7맑음상주12.8맑음포항15.1맑음군산12.4맑음대구14.0맑음전주14.2맑음울산13.8맑음창원15.4맑음광주13.0맑음부산14.2맑음통영13.7맑음목포11.3맑음여수13.7맑음흑산도12.2맑음완도14.4맑음고창12.7맑음순천12.8맑음홍성13.7맑음서청주14.1구름많음제주12.4맑음고산13.2구름조금성산14.2구름조금서귀포14.7맑음진주13.3맑음강화10.3맑음양평11.7구름조금이천12.7구름조금인제11.7맑음홍천12.4구름많음태백10.3구름조금정선군12.2맑음제천12.0맑음보은13.2맑음천안12.7맑음보령13.1맑음부여13.3구름조금금산13.9맑음세종13.6맑음부안14.1맑음임실13.4맑음정읍14.0맑음남원12.9구름조금장수13.0맑음고창군14.6맑음영광군13.2맑음김해시14.1맑음순창군12.8맑음북창원14.6맑음양산시15.7맑음보성군14.3구름조금강진군13.6구름조금장흥13.5구름조금해남12.9구름조금고흥14.6맑음의령군14.9구름조금함양군14.9맑음광양시14.7맑음진도군12.0맑음봉화12.3구름조금영주12.9구름조금문경14.3맑음청송군13.3맑음영덕15.4맑음의성13.4맑음구미14.5맑음영천14.3맑음경주시14.8구름조금거창13.1맑음합천14.1맑음밀양13.8맑음산청14.1맑음거제13.6맑음남해13.4맑음북부산15.0
  • 2025.04.04(금)

데이터 엔지니어링데이터 엔지니어링

Gitlab Pipeline schedules를 사용하여 예약 배포하기

Gitlab에서는 CI/CD 파이프라인을 지원하여 애플리케이션의 배포를 자동화할 수 있습니다.

또한 Pipeline schedules를 통해 예약된 스케쥴을 통해 배포 파이프라인을 실행하는 기능 또한 지원합니다.

 

프로젝트 내 메뉴에서 Build > Pipeline schedules 로 이동하여 새 스케쥴을 생성합니다.

Interval Pattern은 미리 지정되어있는 스케쥴로 설정하거나 cron 표현식을 이용하여 설정할 수도 있습니다.

배포될 타겟 브랜치를 선택하고 스케쥴 파이프라인에서 사용될 변수 또한 지정할 수 있습니다.

 

예약 파이프라인은 설정한 Interval에 의해 실행되며, Gitlab UI에서 수동으로 실행할 수 있습니다.

 

스케쥴에 의해 실행된 파이프라인은 기본적으로 scheduled 태그를 가집니다. 이를 이용하여 CI 스크립트 내에서 해당 파이프라인이 예약된 파이프라인인지 분기처리하여 워크로드에 맞는 파이프라인 로직을 작성할 수 있습니다.

 

scheduled pipeline: 
  stage: build 
  rules:  
    - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PIPELINE_SOURCE == "schedule" 
  image: node:lts-alpine  
  script: 
    - echo "Scheduled Pipeline" 

 

위는 예약된 파이프라인에서만 실행되는 스크립트를 정의한 스크립트 블록입니다.

rules 블록에서 커밋 브랜치가 스케쥴에서 설정한 타겟 브랜치이고, 파이프라인의 소스가 schedule인 경우에만
해당 스크립트가 실행되게 됩니다.
 
이를 통해 스케쥴된 특정 브랜치는 매 커밋마다 배포하지 않고, 예약된 시간에만 배포되도록 설정할 수 있습니다.

전체댓글0

검색결과는 총 25건 입니다.    글쓰기
1 2