CI\CD/GitHub Actions

    [GitHub Actions] Workflow 실행이 Cancel되거나 Skip되는 경우 알아보기

    Workflow가 Cancel 되는 경우 Job이 실패하는 경우 Job이 Fail 되면 Workflow는 Cancel 된다. Job은 하나 이상의 Step이 Fail되면 Job은 자동으로 Fail된다. 또한 해당 Job을 필요로 하는 Job 또한 모두 실패한다. 직접 취소를 시키는 경우 Cancel workflow 버튼을 눌러 직접 Workflow를 취소 할 수 있다. Workflow가 취소 되었을 때 다시 실행하기 위에서 Cancel workflow 버튼을 누르면 아래와 같은 취소 화면이 뜬다. 여기서 Re-run jobs 를 누르면 실패한 Job을 다시 실행하거나 Workflow 자체를 처음부터 다시 실행 할 수 있다. Re-run failed jobs : 실패한 Job을 다시 실행 Re-run fa..

    [GitHub Actions] 유용한 Trigger Event 알아보기 : push, pull request, 매 시간마다 실행 등등

    Workflow Trigger Events Workflow는 Trigger Events에 의해 Trigger된다. 이번 글에서는 유용한 Trigger Events들에 대해 알아볼 것이다. 저장소 기반 push : 저장소에 push 되었을 때 Trigger 시키기 만약 저장소의 어떤 브랜치든 push 되었을 때 Workflow를 Trigger 시키고 싶다면 다음과 같이 쓰면 된다. on: push 만약 특정 브랜치에 push 되었을 경우에만 Workflow를 Trigger 시키고 싶다면 다음과 같이 쓰면 된다. 아래 예시에서는 main과 release/ 로 시작하는 모든 브랜치에 푸시되었을 경우에 trigger 시키도록 하였다. on: push: branches: - main - release/** pul..

    [GitHub Actions] Workflow의 Trigger 사용법 정리

    Workflow Trigger 이란 Workflow는 특정한 이벤트들에 의해 Trigger된다. Workflow가 Trigger되면 내부의 조건에 따라 Job들이 돌아가게 되며, 결과를 내보낸다. Trigger 한 개 만들기 보통 아래와 같이 'name: ' 아래의 on: 으로 설정을 한다. 아래의 on: workflow_dispatch는 유저가 직접 이 Workflow를 실행을 눌러야 실행되는 옵션이다. # WorkFlow의 이름 설정 name: First workflow # on: Work Flow가 언제 실행되어야 하는지 설정 # workflow_dispatch : 유저가 직접 실행하도록 설정하는 옵션 on: workflow_dispatch 이런 식으로 여러 Trigger을 만들어 Workflow가..

    [GitHub Action] GitHub Actions Context 데이터 알아보기

    GitHub Action의 Context Data GitHub Action은 CI/CD에 도움이 되는 여러 데이터를 생성하는데, 이를 Context Data 라 한다. Context 데이터의 종류 Context 데이터의 종류는 다음과 같다. Context명 Type 설명 github object Workflow 실행과 관련된 정보. 더 많은 정보를 원한다면 github context를 참고하라 env object Workflow, Job, Step과 관련된 환경 변수를 포함. 더 많은 정보를 원한다면 env context를 참고하라 job object 현재 실행 중인 Job에 대한 정보. 더 많은 정보를 원한다면 job context를 참고하라. jobs object 재사용 가능한 Workflow에만 적..

    [GitHub Actions] Job 여러개 만들고 실행하기. Test와 Build 동시에 실행하기

    이번 시간의 목표 복수의 Job 을 만들고, 이 Job들을 병렬 실행하거나 순차적으로 실행하는 방법을 알아본다. Workflow 파일 만들기 .github/workflows 경로에 multiple_action.yml 파일을 생성한다. 이전 글에서 다룬 test_action에서 이름만 Multiple Action으로 바꾼 후 복사 붙여넣기 한다. name: Multiple Action on: workflow_dispatch: push: jobs: test: runs-on: ubuntu-latest steps: - name: Check out Repository uses: actions/checkout@v3 - name: set up JDK 11 uses: actions/setup-java@v3 with: ..