๐ ์ฌ์ฉ ๊ณ๊ธฐ
๊นํ์ ์ฌ๋ฆฌ์ง ๋ชปํ๋ ๊ณ์ ์ ๋ณด๊ฐ ๋ด๊ธด properties ๋ฅผ ์๋ ๋ฐฐํฌํ ๋ ์ด๋ป๊ฒ ์ ์ฉํ ์ ์๋์ง ์ค์ต
๐ ๋์ ์ํฉ
๊ธฐ๋ณธ application.properties๋ ๋๊ณ ๋ณ๋์ application-secret.properties๋ฅผ ๋์ด ๊ณต๊ฐ๋์ง ๋ง์์ผํ๋ ์ ๋ณด๋ฅผ ๋ฃ์ด ์ฌ์ฉํ๊ณ ์๋ค. ๊ทธ๋ฆฌ๊ณ application.properties์ ์๋์ฒ๋ผ ๋ฃ์ด์ application-secret.properties๋ฅผ ๋์ด์ค๋ ๋ฐฉ์.
(์๋์ฒ๋ผ ์ธ์ํด์ ๊ฐ์ ธ์ค๊ธฐ ๋๋ฌธ์ ๋์ด์ค๋ ํ์ผ ๋ช ์ application-[์ํ๋์ด๋ฆ].properties ๋ก)
spring.profiles.include=secret
์ด ํ์์ ๊ทธ๋๋ก ์ฌ์ฉํ๊ธฐ ์ํด์ ๊ธฐ๋ณธ application.properties๋ ๊นํ์ ์ฌ๋ผ๊ฐ๊ฒ ๋๊ณ , application-secret.properties๋ .gitignore์ ์ถ๊ฐํด ๊นํ์ ์ฌ๋ผ๊ฐ์ง ์๊ฒ ์ค์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ github์ secrets์๋ application-secret์ ๋ด์ฉ์ ๋ฃ์ ์์
๐ ์ค์ต
๐Github Secrets ์ค์
Github > Settings > Secrets and variables > Actions > New repository secret ํด๋ฆญ
๐gradle.yml ์์ (๋ฉ์ธ์ด๋๋ yml ํ์ผ)
yml ํ์ผ์์ jobs > steps ๋ถ๋ถ์์ ์๋ ์ฝ๋๋ฅผ ์ถ๊ฐํด์ผํ๋ ๋ฐ ๋ฐ๋์ build๊ณผ์ ์ ์! ์ด ์ฝ๋๊ฐ ์์ด์ผํ๋ค.
๊นํ ํ๋ก์ ํธ ๋ฐฐํฌ ๊ณผ์ ์์ application-secret.properties๋ฅผ ํฌํจ์์ผ์ค ๋ค ๋น๋๋ฅผ ํ๊ณ ๊ทธ jar๋ฅผ ๋ณต์ฌํด EC2์์ ์คํํด์ผ ํ๊ธฐ ๋๋ฌธ. ๋น๋ ๋ค์ ๋ค์ด๊ฐ๋ฒ๋ฆฌ๋ฉด jarํ์ผ์์ ๋น ์ ธ๋ฒ๋ ค ์ ์ ์๋ํ์ง ์๋๋ค.
# ์ค์ ํค ์ ๋ณด ์๋ properties ๋ฐ๋ก ๊ด๋ฆฌ
- name: make application-secret.properties
run: |
cd ./src/main/resources
touch ./application-secret.properties
echo "${{ secrets.PROPERTIES_SECRET }}" > ./application-secret.properties
shell: bash
1) name : ์์ ์ ์ด๋ฆ
2) run : ์คํํ ๋ช ๋ น์ด ๋์ด
cd ๊ฒฝ๋ก : ๊ฒฝ๋ก๋ก ์ด๋ |
touch ๊ฒฝ๋ก์ ํ์ผ๋ช : ํด๋น ๊ฒฝ๋ก์ ํ์ผ๋ช ์ผ๋ก ํ์ผ ์์ฑ |
echo "${{ secrets.PROPERTIES_SECRET }}" > ./application-secret.properties |
๋ณ์๋ช
์ ํด๋นํ๋ ๊ฐ์ ์ถ๋ ฅํด ํ์ฌ์์น ํด๋์ ์๋ application-secret.properties์ ์ด๋ค - echo : ์ถ๋ ฅ - ${{ secrets.PROPERTIES_SECRET }} : ์๋จ๊ณ์์ ์ฐ๋ฆฌ๊ฐ ๊นํ settings์ ์ ์ฅํ ๋ณ์๋ช ์ ์ด๋ฐ ํํ๋ก ์ ์ด์ฃผ๋ฉด ๊ทธ ๋ณ์ ๊ฐ์ ๊ฐ์ ธ์จ๋ค - > : ์ผ์ชฝ ๋ด์ฉ์ ์ค๋ฅธ์ชฝ์ ์ (> : write and overwrite , >> : append) |
3) shell : ์ฌ์ฉํ ์
์ด๋ฌ๋ฉด ์ง์ผ์ผํ๋ ์ ๋ณด๋ฅผ ์ผ๋ฐ์ ๊ธด ๊นํํ์ผ๋ก ์ฌ๋ฆฌ์ง ์๊ณ ๋ค๋ฅธ ๋ฃจํธ๋ก ์๋๋ฐฐํฌ์ ํฌํจ์ํฌ์ ์๊ฒ ๋๋ค. ๊ฐ๋จ!
์ค์ตํ ๋ ํฌ์งํ ๋ฆฌ
'DevOps > CI & CD' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
CI/CD] ์๋ ๋ฐฐํฌ ๊ด๋ จ ๋ค์ํ ์ํ ํ์ธ ๋ฐฉ๋ฒ (0) | 2023.01.26 |
---|---|
CI/CD] CodeDeploy - ์ ์ฉ ๊ณผ์ (1) | 2023.01.24 |
CI/CD] CodeDeploy - AWS ํ๊ฒฝ ์ค์ (2) | 2023.01.20 |
CI/CD] Github Actions CI (0) | 2023.01.20 |