GitHub Actions란?
빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 지속적 통합 및 지속적 배포(CI/CD) 플랫폼
GitHub Actions의 구성 요소
- Workflow
- Event
- Job
- Action
- Runner
WorkFlow .yaml 파일 예제
name: learn-github-actions
#[Optinal] 작업탭에 표시되는 이름
run-name: ${{ github.actor }} is learning GitHub Actions
#[Optional] WorkFlow 실행의 이름
# 보통 WorkFlow 실행을 트리거한 user의 이름을 표시
on: [push]
#WorkFlow의 트리거를 지정
jobs:
#WorkFlow에서 실행되는 모든 작업을 함께 그룹화
check-bats-version:
#작업을 정의
runs-on: ubuntu-latest
#어떤 OS Version에서 실행할건지 구성
#이때 GitHub에서 호스팅하는 새로운 가상머신에서 실행
steps:
#작업에서 실행되는 모든 단계를 함께 그룹화
- uses: actions/checkout@v3
# 비공개 저장소 사용e.g)./.github/actions/my-private-repo/my-action
# {owner}/{repo}@{ref(릴리즈 버전|브랜치|커밋ID)}
if: ${{ <expression> }}
- uses: actions/setup-node@v3
with:
node-version: '14'
- run: npm install -g bats
- run: bats -v
env:
myNull: ${{ null }}
myBoolean: ${{ false }}
myIntegerNumber: ${{ 711 }}
myFloatNumber: ${{ -9.2 }}
myHexNumber: ${{ 0xff }}
myExponentialNumber: ${{ -2.99e-2 }}
myString: Mona the Octocat
myStringInBraces: ${{ 'It''s open source!' }}