본문 바로가기
SMALL

전체 글52

Helm - Developing Templates - Flow Control Flow Control 다음의 control structures를 제공 if / else : 조건부 blocks 생성 with : scope 정의 range : for each 스타일의 loop 그리고 named template를 선언하거나 사용할 때 사용하는 몇가지 actions가 있음 define : 새로운 named template 선언 template : named template 가져오기 block : ? IF/ELSE 일반적인 if else 문법의 그것. 단, 조건부가 false가 되는 조건이 조금 특별하다. a boolean false a numeric zero an empty string a nil (empty or null) an empty collection 한마디로 0을 포함해 emp.. 2021. 2. 17.
Helm - Developing Templates https://v2.helm.sh/docs/chart_template_guide/#the-chart-template-developer-s-guide v2 기준 Getting Started A FIRST TEMPLATE ConfigMap을 생성하는 것을 example로 하여 설명. 아래 명령어로 기본 chart 생성 후 $ helm create mychart deployment.yaml이 아닌 configmap.yaml를 생성하여 진행. yaml 파일 네이밍은 모두 소문자로 하는게 룰인 듯. apiVersion: v1 kind: ConfigMap metadata: name: mychart-configmap data: myvalue: "Hello World" Template의 네이밍은 엄격한 룰은 없지만 y.. 2021. 2. 17.
Helm - Developing Templates - Template Functions and Pipelines https://v2.helm.sh/docs/chart_template_guide/#template-functions-and-pipelines v2 기준 Go template language 의 문법에 기초한 Template. 아래와 같이 quote function을 사용 가능. apiVersion: v1 kind: ConfigMap metadata: name: {{ .Release.Name }}-configmap data: myvalue: "Hello World" drink: {{ quote .Values.favorite.drink }} food: {{ quote .Values.favorite.food }} Go의 functions 외에도 Sprig template library의 대부분의 functio.. 2021. 2. 17.
Deployments - Writing a Deployment Spec Writing a Deployment Spec Pod Template .spec.template와 .spec.selector로 배포할 Pod을 선택한다. .spec.template는 Pod의 schema와 apiVersion, kind 필드가 없다는 것 외에 동일. 당연히 labels는 다른 controllers와 겹치지 않게 해야 한다. ? 겹치면 어떻게 되지? 예측 불가능한 동작을 할 수 있다고 했었던 듯. Replicas 기본값 1 Selector .spec.selector는 .spec.template.metadata.labes랑 반드시 매치가 되어야 하고 비워둘 경우 자동으로 매치해주지 않으므로 반드시 명시적으로 선언해야 한다. 그리고 .spec.selector는 immutable하여 생성 이후에.. 2021. 2. 16.