CI-CD/GitHub Actions

[GitHub Actions] workflows 이름 설정하기

날래용 2024. 3. 21. 08:00

[GitHub Actions] workflows 이름 설정하기

GitHub Actions의 workflows는 소프트웨어 개발 과정에서 자동화된 작업을 정의합니다. 이를 통해 코드 푸시, 풀 요청 또는 다른 GitHub 이벤트에 반응하여 테스트, 빌드, 배포와 같은 CI/CD 작업을 실행할 수 있습니다.

 

GitHub Actions의 하나의 작업을 workflows라고 정의하는데요. name 설정과 run-name 설정을 통해 workflows와 workflow runs 이름을 설정하여 사용할 수 있습니다. 해당 설정을 활용하여 workflows 이름을 설정해보도록 하겠습니다.

 


"name", "run-name" 미설정 시 기본 이름

GitHub Action을 통해 workflows 실행 시 기본적으로 설정되는 이름을 확인해봅시다.

 

예시 코드

run_name_demo.yml 이름의 workflow 파일을 생성하였으며 간단히 echo 명령어로 Text를 출력하도록 설정하였습니다. commit 메시지는 "[Action] Test run_name_demo"로 지정 후 push하여 workflows를 실행하도록 하였습니다.

> run_name_demo.yml

on: 
  push:

jobs:
  Jobs-Names-run_name_demo-01:
    runs-on: ubuntu-latest
    steps:
      - name: Echo Test
        run: echo "Run Workflows - run_name_demo"

 

실행 결과

workflows 이름 설정인 name 설정을 하지 않을 경우 생성되는 이름을 확인해보도록 하겠습니다.
workflows 이름은 파일 경로인 .github/workflows/run_name_demo.yml으로 생성되었습니다.
별도로 name 설정을 하지 않으면 workflows 이름은 파일 이름으로 생성되는 것을 확인하실 수 있습니다.

 


자 이제는 workflow runs 이름을 확인해보도록 하겠습니다.
run 이름은 commit 메시지인 [Action] Test run_name_demo으로 생성되었습니다.
별도로 run-name 설정을 하지 않으면 workflow runs 이름은 commit 메시지로 생성되는 것을 확인하실 수 있습니다.

 

 


 

"name", "run-name" 기본 설정

GitHub Action을 통해 workflows 실행 시 name, run-name 설정을 통해 이름을 설정해봅시다.

 

예시 코드

workflows 이름을 설정하기 위해 name, run-name 옵션을 사용하여 이름을 설정하였습니다.

> run_name_demo.yml

name: Workflows Names - run_name_demo
run-name: Runs Names - run_name_demo 🚀

on: 
  push:

jobs:
  Jobs-Names-run_name_demo-01:
    runs-on: ubuntu-latest
    steps:
      - name: Echo Test
        run: echo "Run Workflows - run_name_demo"

 

 

실행 결과

설정한 name 옵션으로 "Workflows Names - run_name_demo" 이름의 workflows가 생성되었습니다.

 

 

또한 설정한 run-name 옵션으로 "Runs Names - run_name_demo 🚀" 이름의 workflow runs이 생성되었습니다.

 

 


"name", "run-name" 설정 활용

GitHub Action의 name, run-name 설정을 활용해보도록 하겠습니다.


활용해볼 설정은 run-name 설정입니다. run-name 설정은 githubinputs 컨텍스트를 사용하여 동적으로 구성할 수 있습니다.

 

예시 코드 및 실행 결과

이벤트 이름을 workflow runs 이름에 추가하기 위해 run-name 설정에 github 컨텍스트를 추가하였습니다.

run-name: Run_Names [ ${{ github.event_name }} ]

 

workflow runs 이름에 이벤트 이름을 확인하실 수 있습니다.

 

 

 

이번에는 branch 및 tag 정보를 추가해봤습니다.

run-name: Run_Names [ ${{ github.ref_type }} ]  [ ${{ github.ref_name }} ]

 

workflow runs 이름에 트리거된 branch 및 tag 타입과 이름을 확인하실 수 있습니다.

 

 

 

이번에는 workflows 실행자와 마지막 commit 시간 정보를 추가해봤습니다.

run-name: Run_Names [ ${{ github.actor }} ] [ ${{ github.event.head_commit.timestamp }} ]

 

workflow runs 이름에 workflows 실행자와 마지막 commit 시간을 확인하실 수 있습니다.

 

위 활용 방법과 같이 run-name 설정은 githubinputs 컨텍스트를 사용하여 동적으로 구성할 수 있습니다.


다만 아쉬운 점은 githubinputs 컨텍스트만 사용 할 수 있다는 점과 Job(작업)에서 활용된 변수나 결과에 따른 이름을 설정할 수 없다는 부분이 아쉽습니다. 또한 githubinputs 컨텍스트를 사용한다고 해도 원하는 형식의 문자열로 변환하거나 출력할 수 없습니다. 이러한 부분이 아쉽지만 github 컨텍스트 정보에는 많은 정보가 있기 때문에 잘 활용할 경우 유용하게 사용할 수 있을 것 같습니다.

 

 


 

GitHub Actions의 name, run-name 설정을 통해 workflows 이름과 workflow runs 이름을 지정해봤습니다.

 

name 설정은 workflows 이름을 지정하며, GitHub 저장소의 "Actions" 탭에 표시됩니다.

run-name 설정은 workflow runs 탭에 표시되며 이벤트 이름, 브랜치 또는 태그 정보, 워크플로우 실행자, 마지막 커밋의 타임스탬프 등과 같은 동적 정보를 포함시킬 수 있습니다

 

GitHub Actions의 namerun-name 설정은 workflows와 workflows run을 명확하게 식별하고 조직화하는 데 매우 중요합니다. 이 설정들을 적절히 활용하면 workflows 관리의 효율성을 높일 수 있습니다. 특히 run-name 설정을 통해 workflow runs의 동적 이름을 구성함으로써, 각 실행의 세부 사항을 쉽게 파악하고 필요에 따라 신속하게 대응할 수 있습니다.

 

GitHub Actions를 사용할 때는 이러한 설정들을 적극적으로 활용하여 더욱 효과적인 워크플로우 관리를 해보시기 바랍니다. 지금까지 name 설정과 run-name 설정을 통해 workflows와 workflow runs 이름을 설정하여 사용해보는 시간을 가졌습니다....! 끝...!

 

 

유익하게 보셨다면 공감을 눌러주고, 댓글로 의견을 공유해 남겨주시면 감사하겠습니다!

 

 

 

[Reference]
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions
https://docs.github.com/en/actions/learn-github-actions/contexts