์๋์ผ๋ก ์คํํ๋๋ก ์ํฌํ๋ก ๊ตฌ์ฑ
์ํฌํ๋ก๋ฅผ ์๋์ผ๋ก ์คํํ๋ ค๋ฉด ์ํฌํ๋ก๊ฐ workflow_dispatch
์ด๋ฒคํธ์์ ์คํ๋๋๋ก ๊ตฌ์ฑํด์ผ ํฉ๋๋ค.
workflow_dispatch
์ด๋ฒคํธ๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ค๋ฉด ์ํฌํ๋ก๊ฐ ๊ธฐ๋ณธ ๋ถ๊ธฐ์ ์์ด์ผ ํฉ๋๋ค. workflow_dispatch
์ด๋ฒคํธ ๊ตฌ์ฑ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ํฌํ๋ก๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ์ด๋ฒคํธ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
ํด๋น ๋จ๊ณ๋ฅผ ์ํํ๋ ค๋ฉด ๋ฆฌํฌ์งํ ๋ฆฌ์ ๋ํ ์ฐ๊ธฐ ๊ถํ์ด ํ์ํฉ๋๋ค.
์ํฌํ๋ก ์คํ
-
GitHub์์ ๋ฆฌํฌ์งํ ๋ฆฌ์ ๊ธฐ๋ณธ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
-
๋ฆฌํฌ์งํ ๋ฆฌ ์ด๋ฆ ์๋์์ ์์ ์ ํด๋ฆญํฉ๋๋ค.
-
์ผ์ชฝ ์ฌ์ด๋๋ฐ์์ ์คํํ ์ํฌํ๋ก ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
-
์ํฌํ๋ก ์คํ ๋ชฉ๋ก ์์์ ์ํฌํ๋ก ์คํ ๋จ์ถ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์ฐธ๊ณ ํญ๋ชฉ
์ํฌํ๋ก ์คํ ๋จ์ถ๋ฅผ ๋ณด๋ ค๋ฉด ์ํฌํ๋ก ํ์ผ์ด
workflow_dispatch
์ด๋ฒคํธ ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.workflow_dispatch
์ด๋ฒคํธ ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํ๋ ์ํฌํ๋ก ํ์ผ๋ง ์ํฌํ๋ก ์คํ ๋จ์ถ๋ฅผ ์ฌ์ฉํ์ฌ ์ํฌํ๋ก๋ฅผ ์๋์ผ๋ก ์คํํ๋ ์ต์ ์ด ์์ต๋๋ค.workflow_dispatch
์ด๋ฒคํธ ๊ตฌ์ฑ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์ํฌํ๋ก๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ์ด๋ฒคํธ์(๋ฅผ) ์ฐธ์กฐํ์ธ์. -
๋ถ๊ธฐ ๋๋กญ๋ค์ด ๋ฉ๋ด๋ฅผ ์ ํํ๊ณ ๋ถ๊ธฐ๋ฅผ ํด๋ฆญํ์ฌ ์ํฌํ๋ก๋ฅผ ์คํํฉ๋๋ค.
-
์ํฌํ๋ก์ ์ ๋ ฅ์ด ํ์ํ ๊ฒฝ์ฐ ํ๋๋ฅผ ์ ๋ ฅํฉ๋๋ค.
-
์ํฌํ๋ก ์คํ์ ํด๋ฆญํฉ๋๋ค.
์ฐธ๊ณ ํญ๋ชฉ
GitHub CLI์ ๋ํ ์์ธํ ๋ด์ฉ์ GitHub CLI ์ ๋ณด์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
์ํฌํ๋ก๋ฅผ ์คํํ๋ ค๋ฉด workflow run
ํ์ ๋ช
๋ น์ ์ฌ์ฉํฉ๋๋ค. workflow
๋งค๊ฐ ๋ณ์๋ฅผ ์คํํ ์ํฌํ๋ก์ ์ด๋ฆ, ID ๋๋ ํ์ผ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ๋๋ค. ์๋ฅผ ๋ค์ด "Link Checker"
, 1234567
๋๋ "link-check-test.yml"
์
๋๋ค. ์ํฌํ๋ก๋ฅผ ์ง์ ํ์ง ์์ผ๋ฉด GitHub CLI์์ ์ํฌํ๋ก๋ฅผ ์ ํํ ์ ์๋ ๋ํํ ๋ฉ๋ด๋ฅผ ๋ฐํํฉ๋๋ค.
gh workflow run WORKFLOW
์ํฌํ๋ก์์ ์
๋ ฅ์ ์๋ฝํ๋ฉด GitHub CLI์์ ์
๋ ฅํ๋ผ๋ ๋ฉ์์ง๊ฐ ํ์๋ฉ๋๋ค. ๋๋ -f
๋๋ -F
๋ฅผ ์ฌ์ฉํ์ฌ key=value
ํ์์ ์
๋ ฅ์ ์ถ๊ฐํ ์ ์์ต๋๋ค. -F
๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ์์ ์ฝ์ต๋๋ค.
gh workflow run greet.yml -f name=mona -f greeting=hello -F data=@myfile.txt
ํ์ค ์ ๋ ฅ์ ์ฌ์ฉํ์ฌ ์ ๋ ฅ์ JSON์ผ๋ก ์ ๋ฌํ ์๋ ์์ต๋๋ค.
echo '{"name":"mona", "greeting":"hello"}' | gh workflow run greet.yml --json
๋ฆฌํฌ์งํ ๋ฆฌ์ ๊ธฐ๋ณธ ๋ถ๊ธฐ๊ฐ ์๋ ๋ถ๊ธฐ์์ ์ํฌํ๋ก๋ฅผ ์คํํ๋ ค๋ฉด --ref
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
gh workflow run WORKFLOW --ref BRANCH
์ํฌํ๋ก ์คํ์ ์งํ๋ฅ ์ ๋ณด๋ ค๋ฉด run watch
ํ์ ๋ช
๋ น์ ์ฌ์ฉํ๊ณ ๋ํํ ๋ชฉ๋ก์์ ์คํ์ ์ ํํฉ๋๋ค.
gh run watch
REST API๋ฅผ ์ฌ์ฉํ์ฌ ์ํฌํ๋ก ์คํ
REST API๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ inputs
์ ref
๋ฅผ ์์ฒญ ๋ณธ๋ฌธ ๋งค๊ฐ ๋ณ์๋ก ๊ตฌ์ฑํฉ๋๋ค. ์
๋ ฅ์ ์๋ตํ๋ฉด ์ํฌํ๋ก ํ์ผ์ ์ ์๋ ๊ธฐ๋ณธ๊ฐ์ด ์ฌ์ฉ๋ฉ๋๋ค.
์ฐธ๊ณ ํญ๋ชฉ
workflow_dispatch
์ด๋ฒคํธ์ ๋ํด ์ต๋ 10๊ฐ์ inputs
๋ฅผ ์ ์ํ ์ ์์ต๋๋ค.
REST API ์ฌ์ฉ์ ๋ํ ์์ธํ ์ ๋ณด๋ ์ํฌํ๋ก์ ๋ํ REST API ์๋ํฌ์ธํธ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.