[Github] Github Actions 공식문서로 간단하게 공부해보기

공부기록·2024년 6월 24일
0
post-thumbnail

가장 먼저 해야할 일은? .github 폴더 밑에 workflows라는 폴더 만들고 안에 배포관련 파일 생성해주기!

Github 공식문서를 보면서 워크플로우란 뭔지 공부해보자


⌨️ Workflows란?

  • 하나 이상의 작업을 실행하는 행위를 의미한다.
  • yml 파일로 정의된다
  • 트리거로 설정한 이벤트가 발생하면 실행된다.
    - Trigger로 어떤 이벤트를 설정할 수 있을까? merge, issue creating 혹은 release
  • 하나 이상의 Runner가 존재하며 각각 각자의 step을 갖는다.


⌨️ yml 파일로 공부하기

name: learn-github-actions
run-name: ${{ github.actor }} is learning GitHub Actions
on: [push]
jobs:

  check-bats-version:
    runs-on: ubuntu-lates
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: npm install -g bats
      - run: bats -v

다음의 yml 파일 실행시 아래와 같이 작업된다.


✏️ on

  • 어떤 이벤트를 Trigger로 설정할지 정하기
name: learn-github-actions
#Actions 실행시 보여질 이름
run-name: ${{ github.actor }} is learning GitHub Actions
on: [push]

이러면 모든 push할 때마다 Github actions 발생

on:
  push:
    branches:
      -main

main 브랜치로 push될 때 발생


✏️ jobs

  • 하나의 작업은 독립적인 서버에서 실행된다고 보면된다.
jobs:
  # check-bats-version이라는 이름의 job 생성
  check-bats-version:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: npm install -g bats
      - run: bats -v
  • runs-on으로 실행될 환경의 타입을 정해준다. 우리는 주로 ubuntu환경을 이용하므로 ubuntu-latest를 사용하도록 되어있는데 사용하는 특정 버전이 있으면 그걸로 적용해주면 될 거 같다.

다음은 steps에 따라 차례로 실행된다!
각 step마다 이름 달아주면 어디서 오류났는지 확인하기 좋은데 공식에선 안했으니까 나도 pass

uses: actions/checkout@v4

  • uses: {소유자}/{저장소명}@{참조자} 형식
  • 내가 사용하는 repository를 가져오고 특정 브랜치로 전환하는 작업이다.
  • version이란 개념이 생소하다. 그리고 얼마전까지 v3까지 사용한다고 나와있는데 그새 v4가 나온건지 공식문서에서는 v4를 사용한다.

uses: actions/setup-node@v4

  • Node.js 빌드하는 과정이다. 나는 주로 java를 이용할거라 나중에 이 부분은 setup-java@v4로 변경될 예정!

run:

그냥 terminal에 적힐 명령어다. 평소 쓰던 linux 명령어를 작성하면 된다.


해당 파일을 push해주면 Actions가 발생했음을 확인할 수 있다.

😊결과도 성공적으로 나왔다!

  • 이제 대충 어떻게 사용할지 + Docker 이용하기도 공부해야한다.

0개의 댓글

관련 채용 정보