🤷‍♀️ Github Actions란

Github에서 지원하는 CI/CD, 빌드, 테스트 도구입니다.
Github Actions 에서 더 정확히 확인해보실 수 있습니다.

가격

공개 Repo 에 한해서는 무료 입니다.
비공개 Repo 에서도 무료 요금제를 사용할 수 있습니다. (월마다 2000분 무료)
자세한 요금은 Github Actions 를 참고해보시면 될 것 같습니다!

실제로 사용해보기

Github Actions 설정하기

깃헙 Repo 상단에 Actions를 선택하면 Github Actions를 설정할 수 있습니다.
image.png

해당 Repo 상단에 Actions를 선택하면 아래와 같은 화면을 보시게 되실 겁니다.

image.png

Github 에서 감지한 언어를 가지고 Workflow 를 추천해줍니다.
하단에 Python, Docker 등등 여러 Workflow 들이 있으니 원하시는 것을 선택하시면 됩니다.

image.png
파일의 변경에 따라 라벨을 붙여주거나, 첫 기여자에게 환영해주는등 여러 Automation에 대한 Workflow 도 있으니 참고하시면 좋을 것 같습니다.

설정이 되면 생성되는 파일 살펴보기

Github Actions가 정상적으로 설정되였다면, Github Actions에 대한 설정파일은 .github/workflows/*.yml에 위치하여 있습니다.

name: Node CI

on: [push]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [8.x, 10.x, 12.x]

    steps:
    - uses: actions/checkout@v1
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v1
      with:
        node-version: ${{ matrix.node-version }}
    - name: npm install, build, and test
      run: |
        npm ci
        npm run build --if-present
        npm test
      env:
        CI: true

yml로 구성되어 있습니다.
CircleCI나 yml로 구성된 CI를 사용해보셨던 분들은 아마 확인하시기 쉬우실 것 같습니다.

이 Workflow 를 설정하는 방법에 대해서는 영문 Document 를 확인하시면 될 것 같습니다.

🎉 마치며

저는 기존에 CircleCI 라는 CI를 적용하고 사용하고 있었습니다.
이번에 Github Actions 가 생긴 것을 보고 한번 바꾸어 봐야겠다고 생각이 들기도 합니다.

CI 가격이 부담되셨거나 기타 문제로 CI를 프로젝트에 적용해보시지 못한 분이시라면 한번 적용해보시는 것도 도움이 되실 것 같습니다.

부족한 글 읽어 주셔서 감사합니다 😍