Github Action

김신영·2022년 10월 24일
0

DevTool

목록 보기
2/4
post-thumbnail

Workflow

Workflow는 하나 이상의 Job을 실행하는 구성 가능한 자동화 프로세스입니다. Workflow는 Repository에 체크인된 YAML 파일에 의해 정의되며 Repository의 Event에 의해 트리거될 때 실행되거나 수동으로 또는 정의된 일정에 트리거될 수 있습니다.

name: ci
on:
  push:
    branches:
    - master
  pull_request:
    branches:
    - master

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Run a one-line script
      run: echo Hello, world!
	- name: Run a multi-line script
	- run: |
	    echo Add other actions to build,
	    echo test, and deploy your project.

Events

Event는 Workflow 실행을 트리거하는 Repository의 특정 Activity입니다

events-that-trigger-workflows

on:
  pull_request:
    types: [opened, reopened]
on:
  release:
    types: [published]

Job

Job은 동일한 Runner에서 실행되는 Workflow의 일련의 Step입니다.
Step은 실행될 Script이거나 실행할 Action입니다.

Step은 순서대로 실행되며 서로 종속됩니다. 각 Step은 동일한 Runner에서 실행되기 때문에 한 Step에서 다른 Step으로 데이터를 공유할 수 있습니다.

다른 Job과의 종속성을 구성할 수 있습니다. 기본적으로 Job에는 종속성이 없으며 서로 병렬로 실행됩니다. Job이 다른 작업에 종속되면 종속 작업이 완료될 때까지 기다렸다가 실행할 수 있습니다.

using-jobs

Action

Action은 복잡하지만 자주 반복되는 작업을 수행하는 GitHub Actions 플랫폼용 사용자 지정 응용 프로그램입니다.
Action을 사용하여 Workflow 파일에 작성하는 반복적인 코드의 양을 줄이십시오.

Action은 GitHub에서 git 리포지토리를 가져오거나, 빌드 환경에 대한 올바른 도구 체인을 설정하거나, 클라우드 공급자에 대한 인증을 설정할 수 있습니다.

creating-actions

Runner

Runner는 워크플로가 트리거될 때 워크플로를 실행하는 서버입니다.

using-larger-runners
hosting-your-own-runners

Example

name: learn-github-actions
run-name: ${{ github.actor }} is learning GitHub Actions
on: [push]
jobs:
  check-bats-version:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v
profile
Hello velog!

0개의 댓글