Ansible์ ์ฌ์ฉํ๋ฉด์ ์ค๋ฐ๊ฟ์ ์ฒ๋ฆฌ ๋ฐฉ์์์ ๊ฐ์๊ธฐ ์ค๋ฅ๊ฐ ๋ ์ด๋ฅผ ํด๊ฒฐํ๋ฉฐ ์๊ฒ๋ ๊ฒ๋ค์ ์ ๋ฆฌํ๋ค.
์๋ฌ & ์์ธ
์ ๋์ํ๋ Ansible ์ฝ๋์ ๊ฐ์๊ธฐ ์ด๋ฐ ์ค๋ฅ๊ฐ ๋ด๋ค.
์ฝ๋๊ฐ ๋ณ๊ฒฝ๋ ๊ฒ์ ์๊ณ VSC ๋ด์์ YAML Extension์ ์ค์นํ ๊ฒ ์ ๋ถ์๋๋ฐ ..
setting.json์์ YAML Extension๊ณผ ๊ด๋ จ๋ ์ค์ ์ ํ์ธํ๋๋ฐ ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ true๋ก ๋์ด์์๋ค.
ํด๋น ์ค์ ์ true๋ก ํด๋์ผ๋ฉด YAML ํ์ผ์ ๊ตฌ์กฐ์ ๊ตฌ๋ฌธ์ ๊ฒ์ฌํ์ฌ ์ค๋ฅ๋ฅผ ์ฐพ์์ค๋ค. ๋์ ๊ฒฝ์ฐ์ฒ๋ผ Jinja2 ํ
ํ๋ฆฟ์ด ํฌํจ๋ YAML ํ์ผ์์, ์ด๋ฅผ ํ์ค ๊ตฌ๋ฌธ์ผ๋ก ์ธ์ํ์ง ๋ชปํ๊ณ ์ค๋ฅ๋ฅผ ํ์ํ ์ ์๋ค.
๊ฐ์ธ์ ์ผ๋ก ์ด๋ ๊ฒ ๊ท์น์ด ๋นก๋นกํ๊ฑธ ์ ํธํ๊ธฐ ๋๋ฌธ์ true๋ก ์ค์ ํด๋๊ณ ๊ฐ๋ฐํ๊ธฐ๋ก ๊ฒฐ์ ..
>- ์ \ ์ฐจ์ด
YAML์์ >- ๋ ์ค๋ฐ๊ฟ์ ์์ ๊ณ ํ
์คํธ๋ฅผ ๋
ผ๋ฆฌ์ ์ผ๋ก ํ ์ค๋ก ์ด์ด์ฃผ๋ ์ญํ ์ ํ๋ค. (|-๋ ๋ง์ฐฌ๊ฐ์ง)
์ค๋ฐ๊ฟ์ ์ ๊ฑฐ๋์ง๋ง ๊ฐ ์ค ์ฌ์ด์ ๊ณต๋ฐฑ์ด ์ถ๊ฐ๋๋ค๋ ํน์ง์ด ์๋ค.
example: >-
This is line 1
This is line 2
This is line 3
์์ ๊ฐ์ ์ฝ๋๋ฅผ ์ถ๋ ฅํด๋ณธ๋ค๋ฉด ๊ฐ ์ค ์ฌ์ด์ ์๋์ ๊ฐ์ด ๊ณต๋ฐฑ์ด ๋ค์ด๊ฐ๋ค.
This is line 1 This is line 2 This is line 3
๋ฐฑ์ฌ๋์(\)๋ YAML ๋ฌธ๋ฒ์์ ์ค๋ฐ๊ฟ์ ์ํด ์ฌ์ฉ๋์ง ์๋๋ค. ๊ทธ๋ฌ๋ Ansible๊ณผ Jinja2๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ \๋ Jinja2 ํํ์ ๋ด๋ถ์์๋ง ์ฌ์ฉ๋๋ค. Jinja2์์ ๋ฐฑ์ฌ๋์๋ ์ค๋ฐ๊ฟ ์ฐ์ ๊ธฐํธ๋ก ํด์๋๊ธฐ ๋๋ฌธ์ด๋ค.
host_info: "{{ host_info | default({}) | combine({ \
'id': item.id, \
'name': item.name \
}) }}"
YAML Extension์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ YAML ํ์๋ ์ด๋ฅผ ์ธ์งํ์ง ๋ชปํ๊ณ ์ค๋ฅ๋ฅผ ๋ฑ์ด๋ด๊ธฐ ๋๋ฌธ์, >- ๋ฅผ ํ์ฉํ๋ ๊ฒ์ผ๋ก ์ฝ๋๋ฅผ ๋ณ๊ฒฝํ๋ค.