Dev

Github Action 정리

Joo 2019. 11. 25. 16:06

https://help.github.com/en/actions/automating-your-workflow-with-github-actions/about-github-actions 읽으면서 정리.

Github Actions는 code, pr, issue에서 사용할 수 있는 workflow다. workflow는 빌드, 테스트, 패키지, 릴리즈, 배포와 같은 커스텀 자동화 프로세스다. 이를 통해 CI/CD를 만들 수 있다.

workflow는 Linux, macOS, Windows, Github server의 container에서 실행된다. 포크된 리포지토리에서는 기본으로 실행되지 않는다.

Github marketplace에 action을 공유하고 사용할 수 있다.

Github Actions에는 한번에 설정가능한 제한이 있다. 결제를 통해 더 많은 용량을 사용할 수 있다.

workflow

https://help.github.com/en/actions/automating-your-workflow-with-github-actions/configuring-a-workflow

.github/workflows에 하나 이상의 workflow를 만들 수 있다. workflow는 하나 이상의 job을 가지고 있어야 한다. job은 여러 스텝의 task로 구성된다. 스텝은 명령이나 액션을 실행한다. workflow는 github event, 스케쥴, 외부 event로 시작하게 할 수 있다.

on문법으로 trigger를 지정할 수 있다. push, pr, branch, tag등

runs-on으로 runner를 지정할 수 있다. ubuntu, windows, macos등

matrix로 여러 os, platform, 언어로 동시에 테스트할 수 있다.

uses: actions/checkout@v1로 마지막 커밋을 checkout할 수 있다.

.github/actions/NAME/action.yml로 커스텀 액션을 만들 수 있다.

https://github.com/<OWNER>/<REPOSITORY>/workflows/<WORKFLOW_NAME>/badge.svg로 status 배지를 표시할 수 있다.

Github Action 문법: https://help.github.com/en/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions

반응형