728x90
๐จ Error :
์์ฃผ ์ค๋๋ง์ GithubActions๋ฅผ ๋ง์ก๋ค. ๊ธฐ์ ๋ฉด์ ์ ๋๋นํ๊ธฐ ์ํด ๋ง๋ ๋์ค์ฝ๋ ๋ด์ ๋ฆฌํฉํ ๋ง์ ์งํํ๊ธฐ ์ ์ GithubActions๋ก ๋ฐฐํฌ ์๋ํ๋ฅผ ํด๋์ ์๊ฐ์ด์๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก Actions์ ์๋ Java With Gradle์ ๋ ํ์งํ ๋ฆฌ์ commit ํ๊ณ , Gradle.yml ํ์ผ์ ์์ ํด AWS S3์ ์ ๋ก๋ํ๋ ์์ ๋ถํฐ ์งํํ๋ค.
๊ทธ๋ฐ๋ฐ, ๋น๋๊ฐ ๋ฐ๋ก ์คํจํ๋ค. ๋ ๋ฌ ์ฌ ์ ๋ฉ์ธํ๋ก์ ํธ์์ ๊ฐ์ ์ผ์ด ์์๊ธฐ ๋๋ฌธ์ ๊ทธ๋ ๋ธ๋ก๊ทธํ ๋ด์ฉ์ ๋ณด๊ณ yml ํ์ผ์ ์์ ํ๋ค.(๊ด๋ จ ๋งํฌ)
InterviewerApplicationTests > contextLoads() FAILED
java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:98
Caused by: org.springframework.beans.factory.BeanCreationException at AutowiredAnnotationBeanPostProcessor.java:405
Caused by: java.lang.IllegalArgumentException at PropertyPlaceholderHelper.java:180
์ด๋ผ..? ๋ ๋น๋๊ฐ ๋์ง ์์๋ค. build๊ฐ ์๋๋ ๋ฌธ์ ์ธ ๊ฒ ๊ฐ์๋ค.
์ฐ์ githubActions ๋ฌธ์ ์ธ์ง ํ์ผ ์์ฒด์ ๋ฌธ์ ์ธ ํ์ธํ๊ธฐ ์ํด ์ธํ ๋ฆฌ์ ์ด๋ก ํด๋น ํ์ผ์ ๋น๋ํด๋ณด์๋ค.
๊ฐ์ ์ค๋ฅ๊ฐ ๋์๋ค. PropertyPlaceHolder๊ฐ ๋ฐํ์ ์์ ์ค์ ๊ฐ์ผ๋ก ๋์ฒด๋์ด์ผ ํ๋๋ฐ ์ ํจํ์ง ์์ ๊ฐ์ด ๋ค์ด๊ฐ๊ฑฐ๋, ์์ ๊ฐ์ด ๋ค์ด๊ฐ์ง ์์ ๋ฏํ๋ค.
๐ค ์์ธ :
์คํ๋ง ๊ตฌ์ฑ ํ์ผ์์ ์ง์ ๊ฐ์ ์ค์ ํด ์ค ๊ฑด ๋์ค์ฝ๋ ์ฐ๊ฒฐ์ฉ ํ ํฐ๋ฐ์ ์์๋ค.
๊ทธ๋ ๋ค๋ฉด, ๋น๋ ์ ํ ํฐ ๊ฐ์ ๋ชป ์ฝ๋ ๊ฒ์ด ๋ถ๋ช ํ๋ค.
๋๋ ํ์ฌ ์ธ๋ถ ๊ตฌ์ฑ ์ค์ (?)์ ํตํด ํ ํฐ ๊ฐ์ ๋ฃ๊ณ ์์๋ค. ๊ทธ๋์ ์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ฉด ๋ฌธ์ ์์ด ๋์๊ฐ์ง๋ง, ๋น๋ ์์๋ ๊ฐ์ ์ฝ์ด๋ด์ง ๋ชปํ๋ ๋ฏํ๋ค.
๐ ํด๊ฒฐ :
@PropertySource๋ฅผ ์ฌ์ฉํด application.yml ํ์ผ์ ํ ํฐ ๊ฐ์ ๋ฃ๊ณ ์ฝ๋ ๋ฐฉ์์ผ๋ก ํด๊ฒฐํ๋ค.
@PropertySource์ ์์ ์ธ๋ถ ๊ตฌ์ฑ ์ค์ ์ ๋ฃ์ ํ๊ฒฝ ๋ณ์๋ ์ฝ๊ฒ ํ๋ ๊ฒฝ๋ก ์ค์ ์ด ์๋์ง ์ฐพ๋ค๊ฐ ์ฝ๊ฒ ์ฐพ์ ์ ์์ด์ yml ํ์ผ์ ๋ฃ๊ธฐ๋ก ํ๋ค.. ์ด์ฐจํผ GithubActions์์ ํ ์คํธํ๊ฑฐ๋, EC2์ ์๋ ํ์ผ์ ๋น๋ํ ๋๋ application.yml์ ์ฝ๋ ๋ฐฉ์์ผ๋ก ์ฒ๋ฆฌํ์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ํฌ๊ฒ ๊ณ ๋ฏผํ์ง ์์๋ค.
๋, Gradle.yml ํ์ผ์ ์์ ์ด ํ์ํ๋ค. build ์ ์ ํ ํฐ ๊ฐ์ yml ํ์ผ์ ๋ฃ์ด์ฃผ๊ฒ ํ์ฌ ํ ์คํธ๋ฅผ ์งํํ๊ฒ ํ๋ค.
๋ ํ์งํ ๋ฆฌ ์ธํ ์์ ํ ํฐ ๊ฐ์ ๋ฃ์ด์ฃผ์๋ค. ์์ Gradle.yml ํ์ผ๋ก ๋น๋ ์์ ์์ ํด๋น ํ ํฐ ๊ฐ์ ๋ถ๋ฌ์ค๋ ์์คํ ์ด๋ค.
๋น๋ ์ฑ๊ณต!
๐ค ์๋ฌธ์ :
์์!
728x90