728x90
728x90
# Github Action Workflow id 조회
curl \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GH_ACCESS_TOKEN" \
https://api.github.com/repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_FILENAME
ex)
curl \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GH_ACCESS_TOKEN" \
https://api.github.com/repos/suminhong/terraform/actions/workflows/cicd.yaml
output json의 스키마는 아래와 같다.
{
"id": "",
"node_id": "",
"name": "",
"path": "",
"state": "",
"created_at": "",
"updated_at": "",
"url": "",
"html_url": "",
"badge_url": ""
}
여기서 확인되는 id값을 가지고 workflow를 api로 실행시킬 수 있다.
# Github Action Workflow 실행
참고로 workflow_dispatch로 실행될 수 있는 workflow만 트리거 가능하다.
workflow 파일에 아래와 같은 조건이 있으면 된다.
on:
workflow_dispatch:
curl 명령은 아래와 같다.
curl \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GH_ACCESS_TOKEN" \
https://api.github.com/repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/dispatches \
-d '{"ref":"main"}'
만약 workflow_dispatch 시 인풋이 들어가야 한다면 아래와 같이 넣을 수 있다.
curl \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GH_ACCESS_TOKEN" \
https://api.github.com/repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/dispatches \
-d '{"ref":"main","inputs":{"input_key":"input_value"}}'
끝
728x90
728x90
'공부 > Git' 카테고리의 다른 글
[Github Runner/Python] Offline 상태의 러너들 일괄 삭제 (0) | 2024.08.04 |
---|---|
[Github] Custom Action 구성 시 같은 Org 허용 (0) | 2023.10.29 |
[Github Action Runner] Self-Hosted Runner in Amazon Linux 2023 (0) | 2023.09.17 |
[pre-commit] local repository 사용하기 (0) | 2023.05.08 |
[git stash] error: 다음 파일의 로컬 변경 사항을 체크아웃 때문에 덮어 쓰게 됩니다 (0) | 2022.08.13 |
댓글