참고자료: Quickstart for GitHub Actions: https://docs.github.com/en/actions/quickstart
1. 소개
GitHub Action을 생성하고 실행시키기 의해서 GitHub 저장소(repository) 만 필요하다.
GitHub Action이 자동적으로 자동으로 트리거 되는 방법, 실행되는 위치 및 저장소의 코드와 상호 작용하는 방법에 대해서 설명한다.
2. 첫 워크플로우 생성
(1) GitHub내 위크플로우를 적용시킬 저장소에 .github/workflows 폴더가 없다면 생성한다.
(2) .github/workflows
폴더 내에 github-actions-demo.yml
이라는 파일을 생성한다.
(3) 다음의 YAML 형식을 적상된 내용을 github-actions-demo.yml
파일에 복사한다.
name: GitHub Actions Demo
on: [push]
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v2
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
(4) 페이지의 아래로 이동한 후 Create a new branch for this commit and start a pull request
메뉴를 선택한 후 새로운 branch를 생성하고 Propose new file
을 클릭한다.
워크플로우 파일을 저장소의 브랜치로 커밋을 하면 github-actions-demo.yml
파일의 2번 째 줄의
on: [push] 다음의 선언들이 push
이벤트로 트리거되어 워크플로우를 실행한다.
3. 워크플로우 결과 확인
(1) GitHub.com 에서 저장소의 메인 페이지로 옮겨간다.
(2) 저장소 이름에서 Actions
메뉴를 클릭한다.
github-actions-demo.yml
파일 생성 후 commit(push) 하기 전에Actions
메뉴를 클릭했을 때 결과는 다음과 같다.
github-actions-demo.yml
파일 생성 후 commit(push) 한 후 결과 화면과Actions
메뉴를 클릭했을 때 결과는 다음과 같다.
(3) 왼쪽 사이드바에서 확인하고자 하는 워크플로우를 클릭한다.
- 현재의 화면에는
GitHub Actions Demo
워크플로우만 존재하고 있는 상태이다.
(4) 워크플로우 실행 목록에서 확인하려는 실행 이름을 클릭하면 github-actions-demo.yml
파일을 실행한 결과를 확인할 수 있다.
(5) Creat-github-actions-demo.yml
을 클릭하면 아래의 화면과 같이 github-actions-demo.yml의 결과를 확인할 수 있는 화면이 나타난다.
(6) Explore-GitHub-Actions
작업의 각 절차 의 목록의 에서 작업을 클릭하면 로그를 확인할 수 있따. 로그는 워크플로우의 각 절차(step)가 어떻게 처리되었는지 보여준다.
(7) 상세한 정보를 보기 위해서 각 절차(step)를 확장할 수 있다.
Run actions/checkout@v2
를 클릭하면 아래와 같이 상세 실행 내용을 볼 수 있다.
예로, 저장소에서 파일의 목록을 볼 수 있다.
4. 워크플로우 템플릿
GitHub는 독자적인 CI 워크플로우를 생성하기 위해서 사전에 구성된 워크플로우 템플릿을 사용하여 맞춤화할 수 있다. GitHub는 코드를 분석하고 저장소에 활용할 수 있는 CI 템플릿을 보여준다. 예로 저장소에 Node.js 코드가 포함되어 있는 경우 Node.js 프로젝트에 대한 제안 내용을 확인할 수 있다. 워크플로우 템플릿을 바탕으로 사용자 맞춤형 워크플로우를 작성하거나 템플릿 그대로 사용할 수 있다.
워크플로우의 템플릿의 목록은 actions/starter-workflows 저장소에서 찾을 수 있다.
5. 새로운 변경 내용에 대한 적용 예
(1) 저장소에 text.txt
파일을 생성하고 브렌치를 commit 한다.
(2) Actions
페이지에 새로운 워크플로우가 만들어졌음을 확인할 수 있다.
(3) 저장소에 새로운 text.txt 파일 목록을 확인할 수 있다.
6. 다음 절차
예로 추가된 워크플로우는 브렌치(branch)에 코드가 추가될 때 마다 실행된다. GitHub Actions가 저장소의 내용과 함께 작동하는 방법을 보여준다.
- 저장소에는 서로 다른 이벤트를 기반으로 서로 다른 작업을 트리거하는 여러 워크플로우가 포함될 수 있다.
- 워크플로우를 사용하여 소프트웨어 테스트 앱을 설치하고 GitHub의 runner에서 코드를 자동으로 테스틀 할 수 있다.
GitHub Action은 애플리케이션 개발 프록세스의 거의 모든 것을 자동화할 수 있다.
상세한 내용은 Learn GitHub Actions에서 얻을 수 있다.
'개발환경관련' 카테고리의 다른 글
[Sublime Text] C++ 빌드 시스템 설정하기 (0) | 2021.12.12 |
---|---|
[Sublime Text] 문제 해결 (1) | 2021.12.10 |
[맥북관련] Jenkins (2) 계정 비밀 번호 초기화 및 로그인 화면 (0) | 2021.11.04 |
[맥북관련] brew 설치하기 (0) | 2021.10.29 |
[맥북관련] 스크린 샷 저장 장소 변경 (0) | 2021.10.29 |