2023.04.30 - [DevOps] - CircleCi Yaml Configure 살펴보기 1 - Jobs
어제에 이어서 공식 문서 예제를 보고 config.yml을 이해해보자
Simple configuration examples
Concurrent workflow
- 아래 구성 예제는 빌드 및 테스트 작업이 동시에 실행되는 병렬 워크플로를 보여준다.
- 두 작업 모두 CircleCI에서 제공하는 기본 이미지를 사용하여 Docker 컨테이너에서 실행한다.
version: 2.1
# Define the jobs we want to run for this project
jobs:
build:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the build job"
test:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the test job"
# Orchestrate our job run sequence
workflows:
build_and_test:
jobs:
- build
- test
Sequential workflow
- 아래 구성 예제는 빌드 작업이 실행되고, 빌드가 완료된 후 테스트 작업이 실행되는 순차적인 워크플로우를 보여준다.
- 이를 위해 requires 키를 사용하여 테스트 작업이 실행되기 위해서는 빌드 작업이 필요하다고 지정한다.
- 두 작업 모두 CircleCI에서 제공하는 기본 이미지를 사용하여 Docker 컨테이너에서 실행된다.
version: 2.1
# Define the jobs we want to run for this project
jobs:
build:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the build job"
test:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the test job"
# Orchestrate our job run sequence
workflows:
build_and_test:
jobs:
- build
- test:
requires:
- build
Approval job
- 아래 예제는 승인 단계가 있는 순차적인 워크플로우를 보여준다.
- 빌드 작업이 실행되고, 그 다음에 테스트 작업이 실행되고, 그 후에 CircleCI에서 제공하는 기본 이미지를 사용하여 Docker 컨테이너에서 실행되는 hold 작업이 실행된다.
- 이때 type: approval을 사용하여 워크플로우가 CircleCI 웹 앱에서 수동 승인을 받아야만 배포 작업이 실행될 수 있도록 한다.
version: 2.1
# Define the jobs we want to run for this project
jobs:
build:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the build job"
test:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the test job"
deploy:
docker:
- image: cimg/base:2023.03
steps:
- checkout
- run: echo "this is the deploy job"
# Orchestrate our job run sequence
workflows:
build_and_test:
jobs:
- build
- test:
requires:
- build
- hold:
type: approval
requires:
- build
- test
- deploy:
requires:
- hold
'DevOps' 카테고리의 다른 글
CircleCi Yaml Configure 살펴보기 1 - Jobs (0) | 2023.04.30 |
---|---|
다중 컨테이너를 활용한 애플리케이션의 개발 환경 구축 - 1 (0) | 2023.03.13 |
도커 컴포즈 파일 작성하기 (0) | 2023.03.10 |
주절주절 + Docker 이미지 효율적으로 빌드하기 (0) | 2023.03.09 |
Dockerfile로 nginx + django 서버 만들기 (0) | 2023.03.07 |