Skip to main content

ํŒฉ ๊ฒŒ์‹œ

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 publish [--dry-run] [--threads=<num>] [--ram=<MB>] [--pack=<folder> | <package.tgz>] <options>... -- <dir>

์„ค๋ช…

QL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŒฉ์„ ํŒจํ‚ค์ง€ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ช…๋ น์€ ํŒจํ‚ค์ง€ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ํŒฉ์„ ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ฒŒ์‹œํ•˜๊ธฐ ์ „์— ๋จผ์ € ํŒฉ์ด ์ปดํŒŒ์ผ๋˜๊ณ (ํ•„์š”ํ•œ ๊ฒฝ์šฐ) ๋ฒˆ๋“ค๋กœ ๋ฌถ์Šต๋‹ˆ๋‹ค.

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

์˜ต์…˜

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

<dir>

ํŒจํ‚ค์ง€ ๋˜๋Š” ์ž‘์—… ์˜์—ญ์˜ ๋ฃจํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ, ๊ธฐ๋ณธ๊ฐ’์€ ํ˜„์žฌ ์ž‘์—… ๋””๋ ‰ํ„ฐ๋ฆฌ์ž…๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ qlpack.yml์ด ํฌํ•จ๋œ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒฝ์šฐ ์ด ์ž‘์—…์€ ํ•ด๋‹น CodeQL ํŒจํ‚ค์ง€์—์„œ๋งŒ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ codeql-workspace.yml์ด ํฌํ•จ๋œ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฒฝ์šฐ ์ด ์ž‘์—…์€ ์ž‘์—… ์˜์—ญ์˜ ๋ชจ๋“  CodeQL ํŒจํ‚ค์ง€์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

-n, --[no-]dry-run

์ˆ˜ํ–‰๋œ ์ž‘์—…์„ ์ถœ๋ ฅํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ํŒจํ‚ค์ง€๋ฅผ ๊ฒŒ์‹œํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

--no-keep

๊ฒŒ์‹œํ•œ ํ›„ ํŒฉ ๋ฒˆ๋“ค์„ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

-j, --threads=<num>

ํ•ด๋‹น ์Šค๋ ˆ๋“œ ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฟผ๋ฆฌ๋ฅผ ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ๊ฐ’์€ 1์ž…๋‹ˆ๋‹ค. 0์„ ์ „๋‹ฌํ•˜์—ฌ ์ปดํ“จํ„ฐ์˜ ์ฝ”์–ด๋‹น ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ -_N_์„ ์ „๋‹ฌํ•˜์—ฌ _N_๊ฐœ์˜ ์ฝ”์–ด๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ๋‘˜ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(ํ•˜๋‚˜ ์ด์ƒ์˜ ์Šค๋ ˆ๋“œ๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ œ์™ธ).

-M, --ram=<MB>

์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ด RAM ์–‘์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

--no-precompile

[๊ณ ๊ธ‰] ํŒฉ ์ถœ๋ ฅ ๋””๋ ‰ํ„ฐ๋ฆฌ์—์„œ ์ปดํŒŒ์ผ ์บ์‹œ๋ฅผ ๋ฏธ๋ฆฌ ์ปดํŒŒ์ผํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํŒฉ์˜ ํฌ๊ธฐ์™€ ํŒฉ์„ ๋งŒ๋“œ๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด ์ค„์–ด๋“ค์ง€๋งŒ ํŒฉ์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์ปดํŒŒ์ผ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ฟผ๋ฆฌ ํŒฉ์—๋งŒ ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

--no-validate-extensions

[๊ณ ๊ธ‰] ์ปดํŒŒ์ผ ๋‹จ๊ณ„์˜ ์ผ๋ถ€๋กœ ๋ฐ์ดํ„ฐ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

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

--no-overwrite

[๊ณ ๊ธ‰] ์ด ๋ช…๋ น์˜ ์ด์ „ ํ˜ธ์ถœ์—์„œ ์ปดํŒŒ์ผ๋œ ๊ธฐ์กด ์ถœ๋ ฅ์„ ๋‹ค์‹œ ์ปดํŒŒ์ผํ•˜๊ณ  ๋ฎ์–ด์“ฐ์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

-p, --pack=<folder> | <package.tgz>

[๊ณ ๊ธ‰] ํŒจํ‚ค์ง€๋œ tarball์„ ๋ฐฐ์น˜ํ•  ์œ„์น˜์ž…๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์ด .tgz๋กœ ๋๋‚˜๋ฉด ํ•ด๋‹น ์ด๋ฆ„์œผ๋กœ tarball์ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ง€์ •๋œ ๊ฒฝ๋กœ์— ์ƒˆ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ๋งŒ๋“ค์–ด์ง€๊ณ  ๊ฑฐ๊ธฐ์— ํ•˜๋‚˜ ์ด์ƒ์˜ tarball์ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค. ์ž‘์—… ์˜์—ญ์—๋Š” .tgz๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

--file=<package.tgz>

[๊ณ ๊ธ‰] ์ƒˆ๋กœ ๋งŒ๋“ค๊ฑฐ๋‚˜ ๋ฒˆ๋“ค๋กœ ๋ฌถ์ง€ ์•Š๊ณ  package.tgz๋ฅผ ํŒจํ‚ค์ง€ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ง์ ‘ ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

--[no-]allow-prerelease

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

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

์ด ๋ช…๋ น์„ ์ ์šฉํ•  CodeQL ํŒฉ์„ ๊ตฌ์„ฑํ•˜๋Š” ์˜ต์…˜

--format=<fmt>

์ถœ๋ ฅ ํ˜•์‹(text(๊ธฐ๋ณธ๊ฐ’) ๋˜๋Š” json)์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

--groups=[-]<group>[,[-]<group>...]

์ด ์ž‘์—…์—์„œ ํฌํ•จํ•˜๊ฑฐ๋‚˜ ์ œ์™ธํ•  CodeQL ํŒฉ ๊ทธ๋ฃน ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ์ง€์ •๋œ ์ž‘์—… ์˜์—ญ์˜ qlpack์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

  • ๋นผ๊ธฐ ๊ธฐํ˜ธ ์—†์ด ๋‚˜์—ด๋œ ๊ทธ๋ฃน ์ค‘ ํ•˜๋‚˜ ์ด์ƒ์— ์†ํ•˜๋Š” ๊ฒฝ์šฐ(๋นผ๊ธฐ ๊ธฐํ˜ธ ์—†์ด ๋‚˜์—ด๋œ ๊ทธ๋ฃน์ด ์—†์œผ๋ฉด ์ด ์กฐ๊ฑด์ด ์ž๋™์œผ๋กœ ์ถฉ์กฑ๋จ) ๋ฐ
  • ๋นผ๊ธฐ ๊ธฐํ˜ธ๋กœ ๋‚˜์—ด๋œ ๊ทธ๋ฃน์— ์†ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ

์ปดํŒŒ์ผ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•˜๋Š” ์˜ต์…˜

--search-path=<dir>[:<dir>...]

QL ํŒฉ์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ๊ฐ ๋””๋ ‰ํ„ฐ๋ฆฌ๋Š” QL ํŒฉ(๋˜๋Š” ๋ฃจํŠธ์— .codeqlmanifest.json ํŒŒ์ผ์ด ํฌํ•จ๋œ ํŒฉ ๋ฒˆ๋“ค) ๋˜๋Š” ๊ทธ๋Ÿฌํ•œ ๋””๋ ‰ํ„ฐ๋ฆฌ ํ•˜๋‚˜ ์ด์ƒ์˜ ์ง๊ณ„ ๋ถ€๋ชจ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฝ๋กœ์— ๋‘˜ ์ด์ƒ์˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ ๋””๋ ‰ํ„ฐ๋ฆฌ์˜ ์ˆœ์„œ๊ฐ€ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ํ™•์ธํ•ด์•ผ ํ•˜๋Š” ํŒฉ ์ด๋ฆ„์ด ๋””๋ ‰ํ„ฐ๋ฆฌ ํŠธ๋ฆฌ ์ค‘ ๋‘˜ ์ด์ƒ์—์„œ ์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ ๋จผ์ € ์ง€์ •๋œ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค.

์˜คํ”ˆ ์†Œ์Šค CodeQL ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ฒดํฌ ์•„์›ƒ์—์„œ ์ด๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋ฉด ํ•ด๋‹น ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ์žˆ๋Š” ์–ธ์–ด ์ค‘ ํ•˜๋‚˜๋ฅผ ์ฟผ๋ฆฌํ•  ๋•Œ ์ž‘๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์••์ถ•์„ ํ‘ผ CodeQL ํˆด์ฒด์ธ์˜ ํ˜•์ œ๋กœ CodeQL ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ฒดํฌ ์•„์›ƒํ•œ ๊ฒฝ์šฐ ์ด ์˜ต์…˜์„ ์ง€์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ˜•์ œ ๋””๋ ‰ํ„ฐ๋ฆฌ๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” ์ฐพ์„ ์ˆ˜ ์—†๋Š” QL ํŒฉ์œผ๋กœ ํ•ญ์ƒ ๊ฒ€์ƒ‰๋ฉ๋‹ˆ๋‹ค. (์ด ๊ธฐ๋ณธ๊ฐ’์ด ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž๋ณ„ ๊ตฌ์„ฑ ํŒŒ์ผ์—์„œ --search-path๋ฅผ ํ•œ ๋ฒˆ๋งŒ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค).

(์ฐธ๊ณ : Windows์—์„œ๋Š” ๊ฒฝ๋กœ ๊ตฌ๋ถ„ ๊ธฐํ˜ธ๊ฐ€ ;์ž…๋‹ˆ๋‹ค.)

--additional-packs=<dir>[:<dir>...]

์ด ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ชฉ๋ก์ด ์ง€์ •๋œ ๊ฒฝ์šฐ --search-path์— ์žˆ๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๋ณด๋‹ค ๋จผ์ € ํŒฉ์ด ๊ฒ€์ƒ‰๋ฉ๋‹ˆ๋‹ค. ์ด ์‚ฌ์ด์˜ ์ˆœ์„œ๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ชฉ๋ก์„ ํ†ตํ•ด ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์œ„์น˜์—์„œ ํŒฉ ์ด๋ฆ„์„ ์ฐพ์„ ๊ฒฝ์šฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ธฐ๋Šฅ์€ ๊ธฐ๋ณธ ๊ฒฝ๋กœ์—๋„ ํ‘œ์‹œ๋˜๋Š” ํŒฉ์˜ ์ƒˆ ๋ฒ„์ „์„ ์ผ์‹œ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒฝ์šฐ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ๊ตฌ์„ฑ ํŒŒ์ผ์—์„œ ์ด ์˜ต์…˜์„ ์žฌ์ •์˜ํ•˜๋Š” ๊ฒƒ์€ ๊ถŒ์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€ ๋‚ด๋ถ€ ์ž‘์—…์—์„œ๋Š” ๊ตฌ์„ฑ๋œ ๊ฐ’์„ ์žฌ์ •์˜ํ•˜์—ฌ ์ฆ‰์‹œ ์ด ์˜ต์…˜์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

(์ฐธ๊ณ : Windows์—์„œ๋Š” ๊ฒฝ๋กœ ๊ตฌ๋ถ„ ๊ธฐํ˜ธ๊ฐ€ ;์ž…๋‹ˆ๋‹ค.)

--library-path=<dir>[:<dir>...]

[๊ณ ๊ธ‰] QL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์›์‹œ ๊ฐ€์ ธ์˜ค๊ธฐ ๊ฒ€์ƒ‰ ๊ฒฝ๋กœ์— ์ถ”๊ฐ€๋  ์„ ํƒ์  ๋””๋ ‰ํ„ฐ๋ฆฌ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. QL ํŒฉ์œผ๋กœ ํŒจํ‚ค์ง€๋˜์ง€ ์•Š์€ QL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ์—๋งŒ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

(์ฐธ๊ณ : Windows์—์„œ๋Š” ๊ฒฝ๋กœ ๊ตฌ๋ถ„ ๊ธฐํ˜ธ๊ฐ€ ;์ž…๋‹ˆ๋‹ค.)

--dbscheme=<file>

[๊ณ ๊ธ‰] ์ปดํŒŒ์ผํ•ด์•ผ ํ•˜๋Š” dbscheme ์ฟผ๋ฆฌ๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ž์‹ ์ด ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ๋Š” ์ž‘์—…์— ๋Œ€ํ•ด ๋งค์šฐ ํ™•์‹ ํ•˜๋Š” ํ˜ธ์ถœ์ž์— ์˜ํ•ด์„œ๋งŒ ์ง€์ •๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

--compilation-cache=<dir>

[๊ณ ๊ธ‰] ์ปดํŒŒ์ผ ์บ์‹œ๋กœ ์‚ฌ์šฉํ•  ์ถ”๊ฐ€ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

--no-default-compilation-cache

[๊ณ ๊ธ‰] ์ฟผ๋ฆฌ๋ฅผ ํฌํ•จํ•˜๋Š” QL ํŒฉ ๋˜๋Š” CodeQL ํˆด์ฒด์ธ ๋””๋ ‰ํ„ฐ๋ฆฌ์™€ ๊ฐ™์€ ํ‘œ์ค€ ์œ„์น˜์—์„œ ์ปดํŒŒ์ผ ์บ์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

CodeQL ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์˜ต์…˜

--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 ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ์žฌ์ •์˜๋ฉ๋‹ˆ๋‹ค.

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

-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๋ถ€ํ„ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.