본문 바로가기
Dev-ops/githubActions

Github Actions 요약 정리

by livemehere 2023. 2. 5.

Github Actions 란

gitbub Actions 는 CI/CD 를 위한 플랫폼이다.

workflows - jobs -step + actions 으로 구성된다.

Linux, Windows, macOS 의 가상 OS환경을 제공한다.

 

Event

정의한 워크플로우는 github 레포지토리의 이벤트가 발생할 때 트리거될 수 있다. ( PR, push, issue ... )

REST API 도 제공한다.

워크블로우는 1개 이상의 jobs을 가지고 있고, job 들은 동시 혹은 순차적으로 실행 될 수 있다.

job 들은 가상 머신 OS에서 실행된다.

Workflows

워크플로우는 1개 이상의 jobs을 정의할 수 있다.

workflows는 레포지토리의 .github/workflows 경로 아래에 yml 파일로 정의할 수 있다.

workflows 는 이벤트 혹은 스케쥴링으로 트리거 할 수 있다.

서로다른 워크플로우 간에 참조를 할 수 있다.

Jobs

job은 step 의 묶음이다.

step은 순차적으로 실행되며 서로 종속적이다.

반면 job은 서로간에 종속적이지 않고, 각각 병렬로 실행된다.

Actions

github actions 플랫폼의 커스텀한 앱단위 이다.

반복되고, 복잡한 일의 묶음이라고 생각할 수 있다.

Runners

워크플로우가 실행되는 가상머신환경이다.

각 워크플로우는 하나의 runner 에서 실행됨으로 독립적이다.

개인 runner 를 사용할 수 도 있다.

예제

node 환경에서 패키지 설치하고 버전확인해보기

name: node-environment-test
run-name: node-install-test
on: [push]
jobs:
  check-node-install:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/setup-node@v3
        with:
          node-version: '14'
      - run: npm i -g bats
      - run: bats -v

context

참조할 수 있는 컨텍스트이다. (링크)

 

 

GitHub - livemehere/github-actions-study

Contribute to livemehere/github-actions-study development by creating an account on GitHub.

github.com

 

반응형