
배포 관리자 템플릿/스키마가 있고 호출하는 template.yaml에 따라 cloud-init에 대한 다양한 시작 스크립트 옵션을 동적으로 포함하고 싶습니다. 내 template.jinja에는 다음이 있습니다.
metadata:
items:
- key: startup-script
value: |
{{ imports['startup-script-pre']|indent(14, true) }}
{{ imports['startup-script-custom']|indent(14, true) }}
{{ imports['startup-script-post']|indent(14, true) }}
모든 가져오기는 최종 출력에 포함되지만 그 안에 있는 jinja2는 처리되지 않으며 cloud-init가 실패할 수 있도록 {{ env["name"] }} 같은 항목이 남아 있습니다. GCP 콘솔 내에서 확장 구성은 다음과 같습니다.
systemctl daemon-reload
systemctl enable {{ env["name"] }}
systemctl start {{ env["name"] }}
분명히 cloud-init는 처리 방법을 모릅니다.
원시를 삽입하는 대신 해당 가져오기를 강제로 처리하도록 하는 방법이 있나요?
답변1
샘플에는 다음 예가 있습니다.
- 이 진자 파일:
- VM 메타데이터 키로 렌더링됩니다.