[Backend] yaml ํ์ผ ์์ฑ๋ฒ
๐ฎ๐จ
์๋ก CI๊ฐ ํ์ํ ํ๋ก์ ํธ๊ฐ ์์ด์ Cloud Build๋ฅผ ๊ตฌ์ถํ๋ ๋์ถฉ ๊ณ์ ์๋์ ๊ฐ์ ์๋ฌ๊ฐ ๋ด๋ค.
"failed unmarshalling build config cloudbuild.yaml: yaml: line 3: did not find expected key"
yaml ํ์ผ ๋ฌธ๋ฒ ์๋ฌ๊ฐ ๋ฐ์ํ ๊ฒ
yaml์ ํ์ด์ฌ์์ tab์ผ๋ก ๊ตฌ๋ถํ๋ฏ์ด ๋์ด์ฐ๊ธฐ๊ฐ ์ค์ํ๋ค.
๊ทธ๋ฐ๋ฐ ์ด๋ฌํ ๋์ด์ฐ๊ธฐ ์ ์ฉ์ด ํด๋ง๋ค ๋ฌ๋ผ์,,,,
์๋ ๋ถ๋ช intelliJ๋ก ๋น๋ํ ๋ ๋๋๋ฐ
์ธ์๋์ง?๋ง ์ธ์น๊ณ ์๋ค๊ฐ
๊ตฌ๊ธ๋ง์ ํตํด ๊ฟ์ ๋ณด ์ฐพ์
๊ฟ์ ๋ณด๋ ์๋ ์ฌ์ดํธ์ธ๋ฐ,
yaml -> json ๋ณํ ์ฌ์ดํธ๋ก yaml ๋ฌธ๋ฒ์ด ์๋ชป๋๋ฉด ์ก์์ค๋ค.
https://www.json2yaml.com/convert-yaml-to-json
yaml์ ์ธ ๋ ์ฃผ์ํ ์ ์ tab์ ์ฌ์ฉํ๋ฉด ์๋๊ณ ๋์ด์ฐ๊ธฐ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค๋ ๊ฒ์ด๋ค.
Cloud Build์ yaml
cloud build ์ค์ ์ ์ํด yaml์ ์ธ ๋ 'gcr.io/cloud-builder/...' ์ด๋ฐ์์ผ๋ก ์์ฑํ๊ฒ ๋๋ค.
*๊ณต์์ ์ผ๋ก ์๋ ค์ง ๋น๋ ์ด๋ฏธ์ง๋ ์ฌ๊ธฐ์ ํ์ธ ๊ฐ๋ฅํ๋ค.
์ฌ๊ธฐ์ ์ฃผ์ํ ์
๋ ธ๋ ํ๋ก์ ํธ๊ฐ์ ๊ฒฝ์ฐ๋
(1)
- name: 'gcr.io/cloud-builders/npm'
+ name: 'node'
+ entrypoint: 'npm'
(2)
steps:
- name: 'node'
entrypoint: 'npm'
args: ['install']
2๋ฒ ๋ฐฉ์์ผ๋ก ์์ฑํด์ผํ๋ค. npm์ ์ต์ ๊ธฐ๋ฅ/๋ฒ์ ์ ์ง์ํ์ง ์๊ธฐ ๋๋ฌธ.
์ฌ๊ธฐ ๊ฐ๋ฉด ์์ธํ ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ค.
GCP๋ ์ฌ๋งํ๋ฉด ๊ณต์๋ฌธ์๊ฐ ์ ๋ผ์๊ธดํ๋ฐ ๋๋ฌด ์ค๋๋ ๋ฌธ์๋ ๋ง๊ณ
์ ์ด์ ์ธํ ์์ฒด๊ฐ ๋ณต์ก + ๋ ํผ๋ฐ์ค๊ฐ ๋น๊ต์ ์ ์..
ใ ใ ์ฐ๊ณ ๋ณด๋๊น ๋ญ ๋๊ตฌํ๋ง์ ์๋๊ฒ ๋ค๋ ์๊ฐ๋ ๋ ๋ค.
์ํผ yaml ๋์ด์ฐ๊ธฐ์ ํ๋ฒ ๋นํ์ผ๋ ์์ผ๋ก๋ ์ค์ํ์ง ๋ง์