Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโ€™ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Step4 - ๐Ÿš€ 4๋‹จ๊ณ„ - ์ž๋™์ฐจ ๊ฒฝ์ฃผ(์šฐ์Šน์ž) #5540

Closed
wants to merge 48 commits into from

Conversation

rkaehdaos
Copy link

No description provided.

- Car๋Š” ์ „์ง„ํ•œ ๊ฑฐ๋ฆฌ distance๋ฅผ ๊ฐ€์ง„๋‹ค.
- Car๋Š” random๊ฐ’์ด 4 ์ด์ƒ์ด๋ฉด ๊ฑฐ๋ฆฌ์ฆ๊ฐ€
- ์ดˆ๊ธฐํ™” streawm ์ด์šฉ
- 0 ์ดํ•˜์‹œ ์—๋Ÿฌ
- runRound ์ถ”๊ฐ€
- ์•„์˜ˆ ์ฐจ๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š” ํ˜„์ƒ ๋ฐฉ์ง€
build.gradle
- deprecated ํ™•์ธ ์˜ต์…˜ ์ถ”๊ฐ€
- ํ•„๋“œ ์ถ”๊ฐ€
- ์ƒ์„ฑ์ž ์ถ”๊ฐ€
- 5์ž ์ œํ•œ ์ถ”๊ฐ€
- getter ์ถ”๊ฐ€
- ํ…Œ์ŠคํŠธ๋„ ๋”ฐ๋ผ์„œ ์ถ”๊ฐ€
- ์ƒ์ˆ˜ ์‚ฌ์šฉ
- `null` check
rkaehdaos and others added 12 commits April 15, 2024 16:43
- ํ…Œ์ŠคํŠธ ์ˆ˜์ •
- pmd๋กœ ncss 15line ๊ฐ•์ œํ™”
- jdk21 apply
- ๊ธฐ์กด ์—
* ์—๋Ÿฌ ์ •์˜ ์ฐจ์ด

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

* ์ตœ์ ํ™”

* Car ์ƒ์ˆ˜ ์‚ฌ์šฉ ๋ฐ ๋ณด์™„

* formatting

* ๊ฐ€๋…์„ฑ

* workflow ์ˆ˜์ •

* workflow ์ˆ˜์ •

* pmdtest4์— step4 ๋„ฃ์Œ

* workflow์— pmd summary ์ถ”๊ฐ€

* 15๋ผ์ธ rule์€ main ์ฝ”๋“œ์—๋งŒ ใ…‹ใ…‹

* Extract PMD info and update step summary

* test dependon pmdmain

* pmd ์‹คํŒจ์—ฌ๋„ ์ง„ํ–‰

* xmllint ์‚ฌ์šฉ ์ œ๊ฑฐ

* ๋ฉ”์‹œ์ง€ ์ถ”์ถœ ๋ถ€๋ถ„ ์ˆ˜์ •

* ์ผ๋‹จ ์›๋ณต

* awk๋กœ ๊ฐœ์„ ๋œ ์Šคํฌ๋ฆฝํŠธ

์„ค๋ช…
ํŒŒ์ผ ์ฒ˜๋ฆฌ:

awk๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ <file> ํƒœ๊ทธ๋กœ ์‹œ์ž‘ํ•˜๊ณ  </file> ํƒœ๊ทธ๋กœ ๋๋‚˜๋Š” ๋ธ”๋ก์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ์ด๋Š” awk '/<file name=/,/<\/file>/' ๋ช…๋ น์œผ๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
ํŒŒ์ผ ๋‚ด๋ถ€ ์ฒ˜๋ฆฌ:

awk ์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฐ ํŒŒ์ผ ๋ธ”๋ก์„ ์ฒ˜๋ฆฌํ•˜๋ฉด์„œ ํŒŒ์ผ ์ด๋ฆ„์„ ์ถ”์ถœํ•˜๊ณ , ๊ฐ ์œ„๋ฐ˜ ์‚ฌํ•ญ์˜ ์ •๋ณด๋ฅผ ํŒŒ์‹ฑํ•ฉ๋‹ˆ๋‹ค.
ํŒŒ์ผ ์ด๋ฆ„์€ gensub() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ถ”์ถœํ•˜๊ณ , ์œ„๋ฐ˜์˜ ๋ผ์ธ ๋ฒˆํ˜ธ, ๋ฉ”์‹œ์ง€, URL์„ ์ถ”์ถœํ•˜์—ฌ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
Markdown ํ˜•์‹:

์ถ”์ถœ๋œ ์ •๋ณด๋Š” ์ฝ˜์†”์— ์ถœ๋ ฅ๋˜๊ณ  pmd_summary.md ํŒŒ์ผ์— Markdown ํ˜•์‹์œผ๋กœ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.
์ตœ์ข…์ ์œผ๋กœ, ์ด Markdown ํŒŒ์ผ์€ GitHub Actions ๋‹จ๊ณ„ ์š”์•ฝ์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.
์žฅ์ 
์„ฑ๋Šฅ: awk๋Š” ์ŠคํŠธ๋ฆผ์„ ์ฒ˜๋ฆฌํ•˜๋ฉด์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ํฐ XML ํŒŒ์ผ์— ๋Œ€ํ•ด์„œ๋„ ์„ฑ๋Šฅ์ƒ์˜ ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ„๊ฒฐ์„ฑ: awk๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณต์žกํ•œ grep ๋ฐ sed ์กฐํ•ฉ์„ ํ•˜๋‚˜์˜ ๋ช…๋ น์œผ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ์–ด ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๋”์šฑ ๊ฐ„๊ฒฐํ•ด์ง‘๋‹ˆ๋‹ค.
์œ ์ง€ ๊ด€๋ฆฌ: ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๊ฐ„๊ฒฐํ•ด์ง€๋ฏ€๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ดํ•ด์ง€๋ฉฐ, ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๊ธฐ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

* awk๋กœ ๊ฐœ์„ ๋œ ์Šคํฌ๋ฆฝํŠธ2 - ํ…์ŠคํŠธ ํ•œ์ •

๋ณ€๊ฒฝ๋œ ๋ถ€๋ถ„ ์„ค๋ช…
ํƒœ๊ทธ ๋‚ด์šฉ ์ฒ˜๋ฆฌ ๋กœ์ง: <violation> ํƒœ๊ทธ๋ฅผ ๋งŒ๋‚˜๋ฉด ๋‚ด์šฉ ์บก์ฒ˜๋ฅผ ์‹œ์ž‘ํ•˜๊ณ , </violation> ํƒœ๊ทธ๋ฅผ ๋งŒ๋‚˜๋ฉด ๋‚ด์šฉ ์บก์ฒ˜๋ฅผ ์ข…๋ฃŒํ•˜๋ฉฐ, ๊ทธ ์‚ฌ์ด์— ์žˆ๋Š” ๋ชจ๋“  ํ…์ŠคํŠธ๋ฅผ content ๋ณ€์ˆ˜์— ๋ˆ„์ ํ•ฉ๋‹ˆ๋‹ค.
ํ…์ŠคํŠธ ์ถœ๋ ฅ: ์ตœ์ข…์ ์œผ๋กœ ๊ฐ violation์˜ ์„ค๋ช…์ด content ๋ณ€์ˆ˜์— ์ €์žฅ๋˜๊ณ , ์ด๋ฅผ Markdown ๋งํฌ์˜ ํ…์ŠคํŠธ๋กœ ์‚ฌ์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
์ด ์ˆ˜์ •์„ ํ†ตํ•ด PMD ์š”์•ฝ ์ •๋ณด์—๋Š” ๊ฐ violation์˜ ์ƒ์„ธ ์„ค๋ช…์ด <violation> ํƒœ๊ทธ ์‚ฌ์ด์˜ ํ…์ŠคํŠธ๋กœ ์ •ํ™•ํžˆ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ XML ๋ฐ์ดํ„ฐ์—์„œ ํ•„์š”ํ•œ ์ •๋ณด๋งŒ์„ ์ถ”์ถœํ•˜์—ฌ ๋ณด๋‹ค ๋ช…ํ™•ํ•˜๊ณ  ์œ ์šฉํ•œ ์š”์•ฝ์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

* message ์ˆ˜์ •

* workflow-PR ์ƒ์„ฑ

* NCSS 5->15

* NCSS 5->15

* NCSS 15->5

* README.md ์ˆ˜์ •

* onPRTest

* onPRTest -             $GITHUB_STEP_SUMMARY

* onPRTest

* Comment SUMMARY Report on PR body check

* body-path: 'PR_summary.md'

* body-path: 'PR_summary.md'

* PUSH_summary.md ์— ๋ชจ์œผ๊ธฐ

* PR_summary.md ์— total count ์ถ”๊ฐ€

* push workflow๋Š” pr์ด ์žˆ์œผ๋ฉด ์ž‘๋™ํ•˜์ง€ ์•Š์Œ

* pr workflow type ์ง€์ •

* PR์‹œ์—๋Š” build task

* github.event.pull_request์‚ญ์ œ - pr workflow์—์„œ๋งŒ true ๊ฐ€๋Šฅ

* types ๊ฐ€๋…์„ฑ

* graalvm ์ ์šฉ

* ์ •๋ฆฌ

* ์–ธ์–ด ์ •๋ฆฌ

* pmd pmdtest๋Š” ์ „๋ถ€ ์ œ์™ธ, pmdmin์€ step4๋งŒ

* ๋ฉ”์„œ๋“œ๋ผ์ธ์€ 15๋ผ์ธ

* ๋ฌธ์ œ๊ฐ€ ์—†์„์‹œ pmd report ์š”์•ฝ ์•ก์…˜ ์—๋Ÿฌ ์ˆ˜์ •

* push workflow - ๋ฌธ์ œ๊ฐ€ ์—†์„์‹œ pmd report ์š”์•ฝ ์•ก์…˜ ์—๋Ÿฌ ์ˆ˜์ •

* PR ๋ฉˆ์ถ”๊ธฐ

* push test

* push test2

* error ์ˆ˜์ •: branches-ignore: ['*']

* total_violations ์ถœ๋ ฅ ์ˆ˜์ •

* ๊ทน๋‹จ์  test

* ๊ทน๋‹จ์  test2

* ๊ทน๋‹จ์  test3

* PMD ๋ฆฌํฌํŠธ ์š”์•ฝ ๋ณต์›

* grep ๋ช…๋ น ์‹คํŒจ ํ—ˆ์šฉ

* jacoco summary ์ง€์›Œ์ง€๋Š” ๊ฑฐ ๋ฐฉ์ง€

* PR workflow ํ™œ์„ฑํ™”

---------

Co-authored-by: Kai Ahn <[email protected]>
* psvm ํด๋ž˜์Šค rename

* ํŒจํ‚ค์ง€ ์ด๋™

* ๋ฉ”์„œ๋“œ๋ช… ๋ณ€๊ฒฝ

* CarRacingRunner ์ƒ์„ฑ

* ๋‹จ์ผ์ฑ…์ž„ ์›์น™

---------

Co-authored-by: GeunChang Ahn <[email protected]>
@rkaehdaos rkaehdaos closed this Apr 17, 2024
C
Merge branch 'rkaehdaos' into step4_racing_winner
@rkaehdaos rkaehdaos reopened this Apr 17, 2024
@rkaehdaos rkaehdaos closed this Apr 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant