케이스윔의 개발 블로그

[github] Actions - workflows 를 자동화/개인화/실행 하다. (1) 본문

Study

[github] Actions - workflows 를 자동화/개인화/실행 하다. (1)

kswim 2022. 3. 13. 19:59

github 에서는 Action 이라는 기능을 제공한다.

공식 도큐먼트는 쉽고, 바로 따라해볼 수 있는 Quick start 도 제공한다.

 

간단히 개념을 파악하고 따라해보자!

 

Github Action 이란?

github 저장소를 기반으로 소프트웨어 workflow를 자동화, 개인화, 실행 할 수 있는 도구

빌드, 테스트, 릴리즈 또는 배포를 할 수 있도록 자동화할 수 있는 일종의 hook 서비스이다.

 

Action을 사용하려면 아래의 용어들이 함께 사용되고, Github에서 제공하는 Action 기능과 그 하위 용어들의 의미를 내가 이해한대로 정리하였다.

  • Action: Github에서 복잡하지만 반복되는 작업을 custom 하게 application 으로 만든 것
  • workflow: yaml 파일로 정의할 수 있다. 정해진대로 수행하거나, 스케줄에 따라 수행이 가능하다. repository의 특정 event 를 통해서 발생시킬 수 있고, 하나의 repository에는 여러개의 workflow가 있을 수 있다.
  • Event: workflow를 실행시킬 수 있는 특정한 활동 ex) PR, issue 생성 or Rest API 를 통해 특정한 시간에 trigger 할 수 있다.
  • Job: 같은 runner 안에서 수행되는 step 의 set, step 들은 각각 독립적으로 수행된다.
  • Runner: trigger 된 workflow가 실행되는 서버. 각 runnver는 하나의 job을 실행한다.

 

 

=> Action의 workflow는 repository의 특정 이벤트를 통해 발생시킬 수 있고, workflow는 하나 이상의 job으로 구성되어 있다. job은 순차적 or 병렬적으로 실행될 수 있으며, 각각 하나의 가상 runner machine 안에서 수행된다.

job 안에는 workflow를 간단히 할 수 있는 하나 이상의 step 으로 구성된다.

 

 

출처

https://docs.github.com/en/actions 

https://docs.github.com/en/actions/quickstart

Comments