Skip to main content

pack add

์„ ํƒ์  ๋ฒ„์ „ ๋ฒ”์œ„๊ฐ€ ์žˆ๋Š” QL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŒฉ ๋ชฉ๋ก์„ ํ˜„์žฌ ํŒจํ‚ค์ง€์˜ ์ข…์†์„ฑ์œผ๋กœ ์ถ”๊ฐ€ํ•œ ๋‹ค์Œ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

๋ˆ„๊ฐ€ ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‚˜์š”?

CodeQL์€(๋Š”) ๋‹ค์Œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์œ ํ˜•์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • GitHub.com์˜ ํผ๋ธ”๋ฆญ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ, GitHub CodeQL ์‚ฌ์šฉ ์•ฝ๊ด€ ์ฐธ์กฐ
  • GitHub Code Security๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •๋œ GitHub Team์˜ ์กฐ์ง ์†Œ์œ  ๋ฆฌํฌ์ง€ํ† ๋ฆฌ

์ด ๋ฌธ์„œ์˜ ๋‚ด์šฉ

์ฐธ๊ณ  ํ•ญ๋ชฉ

์ด ์ฝ˜ํ…์ธ ๋Š” CodeQL CLI์˜ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด ์š”์†Œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ https://github.com/github/codeql-cli-binaries/releases์„(๋ฅผ) ์ฐธ์กฐํ•˜์„ธ์š”.

์ด์ „ ๋ฆด๋ฆฌ์Šค์—์„œ ์ด ๋ช…๋ น์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ณด๋ ค๋ฉด ํ„ฐ๋ฏธ๋„์—์„œ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ --help ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ์š”

Shell
codeql pack add <options>... -- <scope/name[@range]>...

์„ค๋ช…

์„ ํƒ์  ๋ฒ„์ „ ๋ฒ”์œ„๊ฐ€ ์žˆ๋Š” QL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŒฉ ๋ชฉ๋ก์„ ํ˜„์žฌ ํŒจํ‚ค์ง€์˜ ์ข…์†์„ฑ์œผ๋กœ ์ถ”๊ฐ€ํ•œ ๋‹ค์Œ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ช…๋ น์€ ํ˜„์žฌ ํŒจํ‚ค์ง€์˜ qlpack.yml ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. ์„œ์‹ ๋ฐ ์ฃผ์„์€ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

v2.6.0๋ถ€ํ„ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ต์…˜

๊ธฐ๋ณธ ์˜ต์…˜

<scope/name[@range]>...

[ํ•„์ˆ˜] ์ข…์†์„ฑ ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•  ํŒฉ์˜ ๋ฒ”์œ„, ์ด๋ฆ„ ๋ฐ ์„ ํƒ์  ๋ฒ„์ „ ๋ฒ”์œ„์ž…๋‹ˆ๋‹ค.

๋ฒ„์ „ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋ฒ„์ „ ๋ฒ”์œ„๊ฐ€ '์ตœ์‹ '์œผ๋กœ ์ง€์ •๋œ ๊ฒฝ์šฐ ์ตœ์‹  ๋ฒ„์ „์˜ ํŒฉ์ด ๋‹ค์šด๋กœ๋“œ๋˜๊ณ  ๋‹ค์šด๋กœ๋“œํ•œ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜๋Š” ๋ชจ๋“  ๋ฒ„์ „์„ ํ—ˆ์šฉํ•˜๋Š” ์ข…์†์„ฑ์ด qlpack.yml์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

๋‹จ์ผ ๋ฒ„์ „์ด ์ง€์ •๋œ ๊ฒฝ์šฐ ํ•ด๋‹น ๋ฒ„์ „์˜ ํŒฉ์ด ๋‹ค์šด๋กœ๋“œ๋˜๊ณ  ์ง€์ •๋œ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜๋Š” ๋ชจ๋“  ๋ฒ„์ „์„ ํ—ˆ์šฉํ•˜๋Š” ์ข…์†์„ฑ์ด qlpack.yml์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

๋ฒ„์ „ ๋ฒ”์œ„๊ฐ€ ์ง€์ •๋œ ๊ฒฝ์šฐ ์ง€์ •๋œ ๋ฒ”์œ„๋ฅผ ์ถฉ์กฑํ•˜๋Š” ํŒฉ์˜ ์ตœ์‹  ๋ฒ„์ „์ด ๋‹ค์šด๋กœ๋“œ๋˜๊ณ  ์ง€์ •๋œ ๋ฒ„์ „ ๋ฒ”์œ„๊ฐ€ ์žˆ๋Š” qlpack.yml์— ์ข…์†์„ฑ์ด ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

--dir=<dir>

ํŒจํ‚ค์ง€์˜ ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ์ž…๋‹ˆ๋‹ค.

--registries-auth-stdin

์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋œ <registry_url>=<token> ์Œ ๋ชฉ๋ก์„ ์ „๋‹ฌํ•˜์—ฌ GitHub Enterprise Server ์ปจํ…Œ์ด๋„ˆ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ธ์ฆํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด https://containers.GHEHOSTNAME1/v2/=TOKEN1,https://containers.GHEHOSTNAME2/v2/=TOKEN2๋ฅผ ์ „๋‹ฌํ•˜์—ฌ ๋‘ ๊ฐœ์˜ GitHub Enterprise Server ์ธ์Šคํ„ด์Šค์— ์ธ์ฆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด CODEQL_REGISTRIES_AUTH ๋ฐ GITHUB_TOKEN ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ์žฌ์ •์˜๋ฉ๋‹ˆ๋‹ค. github.com ์ปจํ…Œ์ด๋„ˆ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์—๋งŒ ์ธ์ฆํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋” ๊ฐ„๋‹จํ•œ --github-auth-stdin ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

--github-auth-stdin

ํ‘œ์ค€ ์ž…๋ ฅ์„ ํ†ตํ•ด github.com์— GitHub Apps ํ† ํฐ ๋˜๋Š” ๊ฐœ์ธ์šฉ ์•ก์„ธ์Šค ํ† ํฐ์„ ์ „๋‹ฌํ•˜์—ฌ github.com ์ปจํ…Œ์ด๋„ˆ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ธ์ฆํ•ฉ๋‹ˆ๋‹ค.

GitHub Enterprise Server ์ปจํ…Œ์ด๋„ˆ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ธ์ฆํ•˜๋ ค๋ฉด --registries-auth-stdin์„ ์ „๋‹ฌํ•˜๊ฑฐ๋‚˜ CODEQL_REGISTRIES_AUTH ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด GITHUB_TOKEN ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ์žฌ์ •์˜๋ฉ๋‹ˆ๋‹ค.

--[no-]allow-prerelease

์‹œํ—˜ํŒ ๋ฒ„์ „ ํ•œ์ •์ž๊ฐ€ ์žˆ๋Š” ํŒฉ(์˜ˆ: X.Y.Z-qualifier) ์‚ฌ์šฉ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”Œ๋ž˜๊ทธ๊ฐ€ ์—†์œผ๋ฉด ์‹œํ—˜ํŒ ํŒฉ์€ ๋ฌด์‹œ๋ฉ๋‹ˆ๋‹ค.

v2.11.3๋ถ€ํ„ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜ ์˜ต์…˜

-h, --help

์ด ๋„์›€๋ง ํ…์ŠคํŠธ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

-J=<opt>

[๊ณ ๊ธ‰] ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋Š” JVM์— ์˜ต์…˜์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

(๊ณต๋ฐฑ์„ ํฌํ•จํ•˜๋Š” ์˜ต์…˜์€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋‹ˆ ์ฃผ์˜ํ•˜์„ธ์š”.)

-v, --verbose

์ถœ๋ ฅ๋˜๋Š” ์ง„ํ–‰๋ฅ  ๋ฉ”์‹œ์ง€ ์ˆ˜๋ฅผ ์ ์ง„์ ์œผ๋กœ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค.

-q, --quiet

์ถœ๋ ฅ๋˜๋Š” ์ง„ํ–‰๋ฅ  ๋ฉ”์‹œ์ง€ ์ˆ˜๋ฅผ ์ ์ง„์ ์œผ๋กœ ์ค„์ž…๋‹ˆ๋‹ค.

--verbosity=<level>

[๊ณ ๊ธ‰] ์„ธ๋ถ€ ์ •๋ณด ํ‘œ์‹œ ์ˆ˜์ค€์„ ์˜ค๋ฅ˜, ๊ฒฝ๊ณ , ์ง„ํ–‰๋ฅ , ์ง„ํ–‰๋ฅ +, ์ง„ํ–‰๋ฅ ++, ์ง„ํ–‰๋ฅ +++ ์ค‘ ํ•˜๋‚˜๋กœ ๋ช…์‹œ์ ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. -v ๋ฐ -q๋ฅผ ์žฌ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

--logdir=<dir>

[๊ณ ๊ธ‰] ํƒ€์ž„์Šคํƒฌํ”„์™€ ์‹คํ–‰ ์ค‘์ธ ํ•˜์œ„ ๋ช…๋ น์˜ ์ด๋ฆ„์„ ํฌํ•จํ•˜๋Š” ์ƒ์„ฑ๋œ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์žˆ๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ ํŒŒ์ผ์— ์ž์„ธํ•œ ๋กœ๊ทธ๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

(๋ชจ๋“  ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์ด๋ฆ„์œผ๋กœ ๋กœ๊ทธ ํŒŒ์ผ์„ ์ž‘์„ฑํ•˜๋ ค๋ฉด --log-to-stderr์„(๋ฅผ) ์ง€์ •ํ•˜๊ณ  stderr๋ฅผ ์›ํ•˜๋Š” ๋Œ€๋กœ ๋ฆฌ๋””๋ ‰์…˜ํ•ฉ๋‹ˆ๋‹ค.)

--common-caches=<dir>

[๊ณ ๊ธ‰] ๋‹ค์šด๋กœ๋“œํ•œ QL ํŒฉ ๋ฐ ์ปดํŒŒ์ผ๋œ ์ฟผ๋ฆฌ ๊ณ„ํš๊ณผ ๊ฐ™์ด ์—ฌ๋Ÿฌ CLI ์‹คํ–‰ ๊ฐ„์— ์œ ์ง€๋˜๋Š” ๋””์Šคํฌ์˜ ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ๋ช…์‹œ์ ์œผ๋กœ ์„ค์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ด ๊ธฐ๋ณธ๊ฐ’์€ ์‚ฌ์šฉ์ž์˜ ํ™ˆ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ์ด๋ฆ„์ด ์ง€์ •๋œ .codeql ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ์„ค์ •๋˜๋ฉฐ, ์•„์ง ์—†๋Š” ๊ฒฝ์šฐ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.

v2.15.2๋ถ€ํ„ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.