kustomize (四) generatorOptions详解

简介: kustomize (四) generatorOptions详解

文章目录

1. generatorOptions功能

Kustomize 提供了修改 ConfigMapGenerator 和 SecretGenerator 行为的选项,这些选项包括:

  • 不再将基于内容生成的哈希后缀添加到资源名称后
  • 为生成的资源添加 labels
  • 为生成的资源添加 annotations

2. generatorOptions实例

这个示例将展示如何运用这些选项,首先创建一个工作空间:

DEMO_HOME=$(mktemp -d)

创建 kustomization 并且为其添加一个 ConfigMapGenerator

cat > $DEMO_HOME/kustomization.yaml << EOF
configMapGenerator:
- name: my-configmap
  literals: 
  - foo=bar
  - baz=qux
EOF

添加如下 generatorOptions

cat >> $DEMO_HOME/kustomization.yaml << EOF
generatorOptions:
 disableNameSuffixHash: true  #关闭哈希后缀
 labels:
   kustomize.generated.resource: somevalue
 annotations:
   annotations.only.for.generated: othervalue
EOF

运行 kustomize build 并且确定生成的 ConfigMap

确定没有名称后缀

$ kustomize build $DEMO_HOME
apiVersion: v1
data:
  baz: qux
  foo: bar
kind: ConfigMap
metadata:
  annotations:
    annotations.only.for.generated: othervalue
  labels:
    kustomize.generated.resource: somevalue
  name: my-configmap  #没有哈希后缀

或者执行

$ test 1 == $(kustomize build $DEMO_HOME | grep "name: my-configmap$" | wc -l);echo $?
0

确定 label kustomize.generated.resource: somevalue

$ test 1 == $(kustomize build $DEMO_HOME | grep -A 1 "labels" | grep "kustomize.generated.resource" | wc -l); echo $?
0

确定 annotation annotations.only.for.generated: othervalue

$ test 1 == $(kustomize build $DEMO_HOME | grep -A 1 "annotations" | grep "annotations.only.for.generated" | wc -l); echo $?
0

扩展阅读:


kustomize (一) 管理yaml部署入门hello world

kustomize (二) ConfigMap的生成和滚动更新

kustomize (三) devops和开发配合管理配置数据behavior: merge、namePrefix、nameSuffix

kustomize (四) generatorOptions详解

kustomize (五) 使用vars将 k8s runtime数据注入容器

kustomize(六)命令行常用编排

kustomize (七)patches、patchesJson6902、patchesStrategicMerge详解

kustomize (八)生成secret

kustomize(九)使用终章



相关文章
|
4月前
|
Kubernetes 容器
Kubernetes(K8S) helm chart
Kubernetes(K8S) helm chart
38 1
|
域名解析 Kubernetes Cloud Native
kaniko & kubernetes 构建镜像(2)
kaniko & kubernetes 构建镜像(2)
kaniko & kubernetes 构建镜像(2)
|
存储 Kubernetes 前端开发
openshift gitops 实践
openshift gitops 实践
openshift gitops 实践
|
Kubernetes API 数据安全/隐私保护
|
存储 Kubernetes Ubuntu
kaniko & kubernetes 构建镜像(1)
kaniko & kubernetes 构建镜像(1)
kaniko & kubernetes 构建镜像(1)
|
运维 Kubernetes 安全
GitOps 指南
GitOps 指南
755 0
GitOps 指南
|
存储 运维 Kubernetes
GitOps 自问自答
GitOps 自问自答
111 0
GitOps 自问自答
|
运维 Kubernetes Go
2.4. [kustz] kustomize 流水线
2.4. [kustz] kustomize 流水线 > 大家好, 我是老麦, 一个运维小学生。 今天我们使用 kustomize 把所有资源整合起来
159 0
2.4. [kustz] kustomize 流水线
|
Docker Perl 容器
|
Kubernetes jenkins 持续交付
Tekton系列之安装篇【一】
Tekton系列之安装篇【一】
Tekton系列之安装篇【一】
下一篇
DataWorks