Image
CI\CD/GitHub Actions

[GitHub Actions] Action이란 무엇인가? checkout 사용해 코드 내려받기

Action이란 무엇인가?

Action이란 GitHub Actions에서 미리 정의된 명령어의 집합이다. Action은 복잡하고 자주 반복되는 작업을 간단하게 수행할 수 있도록 해준다.

 

 

checkout Action으로 코드 내려받기

예를 들어 GitHub 저장소에서 코드를 내려받아 실행 중인 Machine에 저장하는 작업은 간단해보이지만 매우 복잡하다. 따라서 만약 이 작업을 이전 글에서 다룬 run: 블록을 통해 커멘드 라인으로 실행해야 한다면 매우 여러 줄의 코드를 써야될 것이다.

 

하지만 uses: 블록으로 Action을 사용하면 단 한 줄의 step으로 모든 checkout을 수행한다. 뒤에 붙은 @v3은 checkout Action의 세번째 버전을 사용한다는 것이다.

* 글의 작성 시점을 기준으로 가장 최신 버전은 v3이다.

name: Android CI

on: workflow_dispatch

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

 

checkout에서 어떤 일을 하는지는 내부를 보면 보인다. checkout을 위한 토큰 설정부터, 저장소 복사까지 많은 일들을 수행한다.

 

이 checkout Action에 대한 유지 보수는 GitHub에 의해 진행되며 아래 레포지토리에서 유지 보수되는 것을 볼 수 있다.

 

GitHub - actions/checkout: Action for checking out a repo

Action for checking out a repo. Contribute to actions/checkout development by creating an account on GitHub.

github.com

 

checkout 사용법 문서는 아래 링크에서 확인 가능하다.

 

Checkout - GitHub Marketplace

Checkout a Git repository at a particular version

github.com

 

 

Action에 파라미터 넘겨 커스터마이즈 하기

Action에 파라미터를 넘길 때는 with:을 사용한다.

 

문서에서 checkout에 사용할 수 있는 다양한 파라미터들을 설명하고 있는 것을 확인할 수 있다. 너무 많아서 위에 있는 것 두개만 가져왔다.

- uses: actions/checkout@v3
  with:
    # 소유자의 이름과 저장소 이름을 설정 예를 들어 actions/checkout 와 같이 설정 가능하다.
    # 기본값: ${{ github.repository }}
    repository: ''

    # 체크아웃 할 브랜치, tag, SHA 설정, workflow를 실행시키는 브랜치 설정
    # 기본값 : default branch
    ref: ''

    ...

 

 

다른 Action들 확인하기

이 외의 다양한 Action들은 다음 링크에서 확인 가능하다.

 

GitHub Marketplace: actions to improve your workflow

Find the actions that help your team build better, together.

github.com

 

이후에 사용될 Setup Java JDK 등이 아래에 미리 정의되어 있는 것을 알 수 있다.

 

반응형

 

이 글의 저작권은 '조세영의 Kotlin World' 에 있습니다. 글, 이미지 무단 재배포 및 변경을 금지합니다.

 

 

Kotlin, Android, Spring 사용자 오픈 카톡

오셔서 궁금한 점을 질문해보세요!
비밀번호 : kotlin22

open.kakao.com