Docs: Auto-fix markdownlint issues

This commit is contained in:
Prachi Pendse
2020-07-16 12:57:18 -07:00
parent 0b359d0ef0
commit f9ee578aed
76 changed files with 308 additions and 304 deletions

View File

@@ -16,8 +16,8 @@ Kustomize 提供一个插件框架,允许用户开发自己的 _生成器_ 和
[12-factor]: https://12factor.net
* _generator_ 插件生成 k8s 资源,比如 [helm chart inflator] 是一个 generator 插件,基于少量自由变量生成一个 [12-factor] 应用所包含的全部组件 deploymentservicescaleringress 等)也是一个 generator 插件。
* _transformer_ 插件转化修改k8s 资源,比如可能会执行对特殊容器命令行的编辑,或为其他内置转换器(`namePrefix``commonLabels` 等)无法转换的内容提供转换。
* _generator_ 插件生成 k8s 资源,比如 [helm chart inflator] 是一个 generator 插件,基于少量自由变量生成一个 [12-factor] 应用所包含的全部组件 deploymentservicescaleringress 等)也是一个 generator 插件。
* _transformer_ 插件转化修改k8s 资源,比如可能会执行对特殊容器命令行的编辑,或为其他内置转换器(`namePrefix``commonLabels` 等)无法转换的内容提供转换。
## `kustomization.yaml` 的格式
@@ -42,7 +42,6 @@ Kustomize 提供一个插件框架,允许用户开发自己的 _生成器_ 和
从磁盘上读取 YAML 文件kustomization 的路径或 URL 会触发 kustomization 的运行。由此产生的每个的对象都会被 kustomize 进一步解析为 _plugin configuration_ 对象。
## 配置
kustomization 文件可以包含如下内容:
@@ -149,10 +148,10 @@ _exec 插件_ 是一个可以在命令行中接收参数可执行文件,该参
#### 示例
* [helm chart inflator] - helm chart inflates 生成器。
* [bashed config map] - 使用 bash 生成十分简单的 configMap。
* [sed transformer] - 使用插件来定义非结构化的编辑。
* [hashicorp go-getter] - 下载 kustomize layes 并通过构建它来生成资源。
* [helm chart inflator] - helm chart inflates 生成器。
* [bashed config map] - 使用 bash 生成十分简单的 configMap。
* [sed transformer] - 使用插件来定义非结构化的编辑。
* [hashicorp go-getter] - 下载 kustomize layes 并通过构建它来生成资源。
生成器插件无需在 `stdin` 上输入任何东西,就会将生成的资源输出到 `stdout`
@@ -173,6 +172,7 @@ kustomize 会使用 exec 插件适配器,为 `stdin` 提供的资源,并获
如果此注释被设置在不受哈希转换器支持的资源上,将导致构建将失败。
示例:
```yaml
apiVersion: v1
kind: ConfigMap
@@ -181,7 +181,7 @@ metadata:
annotations:
kustomize.config.k8s.io/needs-hash: "true"
data:
foo: bar
foo: bar
```
**`kustomize.config.k8s.io/behavior`**
@@ -189,6 +189,7 @@ data:
`behavior` 注释为当资源发生冲突时插件的处理方式,有效值包括:"create"、"merge "和 "replace",默认为 "create"。
示例:
```yaml
apiVersion: v1
kind: ConfigMap
@@ -197,7 +198,7 @@ metadata:
annotations:
kustomize.config.k8s.io/behavior: "merge"
data:
foo: bar
foo: bar
```
### Go 插件
@@ -216,8 +217,8 @@ kustomize 的一个 Go 插件看起来是这样的:
> package main
>
> import (
> "sigs.k8s.io/kustomize/api/ifc"
> "sigs.k8s.io/kustomize/api/resmap"
> "sigs.k8s.io/kustomize/api/ifc"
> "sigs.k8s.io/kustomize/api/resmap"
> ...
> )
>
@@ -247,12 +248,12 @@ kustomize 的一个 Go 插件看起来是这样的:
#### 示例
* [service generator] - 使用 name 和 port 参数生成一个 service。
* [string prefixer] - 使用 `metadata/name` 值作为前缀。这个特殊的示例是为了展示插件的转化行为。详见 `target` 包中的 `TestTransformedTransformers` 测试。
* [date prefixer] - 将当前日期作为前缀添加到资源名称上,这是一个用于修改刚才提到的字符串前缀插件的简单示例。
* [secret generator] - 从 toy 数据库生成 secret。
* [sops encoded secrets] - 一个更复杂的 secret 生成器。
* [All the builtin plugins](https://github.com/kubernetes-sigs/kustomize/tree/master/plugin/builtin).
* [service generator] - 使用 name 和 port 参数生成一个 service。
* [string prefixer] - 使用 `metadata/name` 值作为前缀。这个特殊的示例是为了展示插件的转化行为。详见 `target` 包中的 `TestTransformedTransformers` 测试。
* [date prefixer] - 将当前日期作为前缀添加到资源名称上,这是一个用于修改刚才提到的字符串前缀插件的简单示例。
* [secret generator] - 从 toy 数据库生成 secret。
* [sops encoded secrets] - 一个更复杂的 secret 生成器。
* [All the builtin plugins](https://github.com/kubernetes-sigs/kustomize/tree/master/plugin/builtin).
用户自制的插件与内置插件是一样的。
Go 插件既可以是生成器,也可以是转化器。`Generate` 方法将在 `Transform` 方法运行之前与所有其他生成器一起运行。

View File

@@ -50,6 +50,7 @@ commonAnnotations:
> FieldSpecs \[\][config.FieldSpec]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: AnnotationsTransformer
@@ -63,8 +64,6 @@ commonAnnotations:
> create: true
> ```
## _ConfigMapGenerator_
### 使用 `kustomization.yaml`
@@ -94,7 +93,7 @@ configMapGenerator:
- application.properties
- more.properties
- name: my-java-server-env-vars
literals:
literals:
- JAVA_HOME=/opt/java/jdk
- JAVA_TOOL_OPTIONS=-agentlib:hprof
options:
@@ -129,6 +128,7 @@ configMapGenerator:
> [types.ConfigMapArgs]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: ConfigMapGenerator
@@ -142,7 +142,6 @@ configMapGenerator:
> - VEGETABLE=carrot
> ```
## _ImageTagTransformer_
### 使用 `kustomization.yaml`
@@ -164,11 +163,11 @@ containers:
```
想要将 `image` 做如下更改:
-`postgres:8` 改为 `my-registry/my-postgres:v1`
- 将 nginx tag 从 `1.7.9` 改为 `1.8.0`
- 将镜像名称 `my-demo-app` 改为 `my-app`
- 将 alpine 的 tag `3.7` 改为 digest 值
-`postgres:8` 改为 `my-registry/my-postgres:v1`
- 将 nginx tag 从 `1.7.9` 改为 `1.8.0`
- 将镜像名称 `my-demo-app` 改为 `my-app`
- 将 alpine 的 tag `3.7` 改为 digest 值
只需在 *kustomization* 中添加以下内容:
@@ -194,6 +193,7 @@ images:
> FieldSpecs \[\][config.FieldSpec]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: ImageTagTransformer
@@ -204,8 +204,6 @@ images:
> newTag: v2
> ```
## _LabelTransformer_
### 使用 `kustomization.yaml`
@@ -230,6 +228,7 @@ commonLabels:
> FieldSpecs \[\][config.FieldSpec]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: LabelTransformer
@@ -264,6 +263,7 @@ namespace: my-namespace
> FieldSpecs \[\][config.FieldSpec]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: NamespaceTransformer
@@ -345,6 +345,7 @@ patchesJson6902:
### 使用插件
#### Arguments
> Target [types.PatchTarget]
>
> Path string
@@ -352,6 +353,7 @@ patchesJson6902:
> JsonOp string
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: PatchJson6902Transformer
@@ -385,6 +387,7 @@ patchesStrategicMerge:
```
patch 内容也可以是一个inline string
```yaml
patchesStrategicMerge:
- |-
@@ -411,6 +414,7 @@ patchesStrategicMerge:
> Patches string
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: PatchStrategicMergeTransformer
@@ -420,7 +424,6 @@ patchesStrategicMerge:
> - patch.yaml
> ```
## _PatchTransformer_
### 使用 `kustomization.yaml`
@@ -460,9 +463,10 @@ is equivalent to `^myapp$`。
>
> Patch string
>
> Target \*[types.Selector]
> Target \*[types.Selector]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: PatchTransformer
@@ -502,6 +506,7 @@ nameSuffix: -v2
> FieldSpecs \[\][config.FieldSpec]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: PrefixSuffixTransformer
@@ -542,6 +547,7 @@ replicas:
该字段内容为列表,所以可以同时修改许多资源。
由于这个声明无法设置 `kind:``group:`,所以他只能匹配如下资源中的一种:
- `Deployment`
- `ReplicationController`
- `ReplicaSet`
@@ -558,6 +564,7 @@ replicas:
> FieldSpecs \[\][config.FieldSpec]
#### Example
>
> ```yaml
> apiVersion: builtin
> kind: ReplicaCountTransformer

View File

@@ -15,10 +15,10 @@ description: >
#### 环境要求
* `linux`
* `git`
* `curl`
* `Go 1.13`
* `linux`
* `git`
* `curl`
* `Go 1.13`
## 创建一个工作空间/目录
@@ -203,7 +203,7 @@ mv kustomize $DEMO/bin
tree $DEMO
```
## 使用插件构建 APP:
## 使用插件构建 APP
```bash
XDG_CONFIG_HOME=$DEMO $DEMO/bin/kustomize build --enable_alpha_plugins $MYAPP

View File

@@ -50,7 +50,7 @@ go build -buildmode plugin \
为了进行比较,可以参考编写 [tensorflow plugin] 必须做的事情。
## 为什么支持 Go 插件
## 为什么支持 Go 插件
### 安全

View File

@@ -75,7 +75,7 @@ PLUGIN_ROOT=$DEMO/kustomize/plugin
并在下面的命令行中临时设置 `XDG_CONFIG_HOME`
### 使用什么 apiVersion 和 kind
### 使用什么 apiVersion 和 kind
在 kustomize 插件的开发时,插件代码不关心也不知道配置文件中的 `apiVersion``kind`
@@ -136,9 +136,9 @@ GOPATH=$tmpGoPath go build -buildmode plugin -o ${kind}.so ${kind}.go
在加载失败时
* 确保使用相同版本的Go (_go1.13_),在相同的 `$GOOS`(_linux_)和 `$GOARCH`(_amd64_) 上构建插件,用于构建本演示中使用的 [kustomize](#安装-kustomize)。
* 确保使用相同版本的Go (_go1.13_),在相同的 `$GOOS`(_linux_)和 `$GOARCH`(_amd64_) 上构建插件,用于构建本演示中使用的 [kustomize](#安装-kustomize)。
* 修改插件中的依赖文件 `go.mod` 以匹配 kustomize 使用的版本。
* 修改插件中的依赖文件 `go.mod` 以匹配 kustomize 使用的版本。
缺乏工具和元数据来实现自动化,就不会有一个完整的 Go 插件生态。
@@ -296,7 +296,7 @@ tree $DEMO
> └── secGenerator.yaml
> ```
## 使用插件构建您的应用
## 使用插件构建您的应用
```shell
XDG_CONFIG_HOME=$DEMO $tmpGoPath/bin/kustomize build --enable_alpha_plugins $MYAPP