diff --git a/cmd/config/README.md b/cmd/config/README.md index 2dac84ef1..440eca8fd 100644 --- a/cmd/config/README.md +++ b/cmd/config/README.md @@ -3,8 +3,12 @@ This package exists to expose config filters directly as cli commands for the purposes of development of the kyaml package and as a reference implementation for using the libraries. -## Docs: +## Docs +All documentation is also built directly into the `config` command group using +`kustomize help config`. + +- [tutorials](docs/tutorials) - [commands](docs/commands) - [api-conventions](docs/api-conventions) diff --git a/cmd/config/cmd/util.go b/cmd/config/cmd/util.go index f561f415d..2889bb081 100644 --- a/cmd/config/cmd/util.go +++ b/cmd/config/cmd/util.go @@ -63,7 +63,7 @@ var ExitOnError bool // StackOnError if true, will print a stack trace on failure. var StackOnError bool -const cmdName = "kyaml" +const cmdName = "kustomize config" // FixDocs replaces instances of old with new in the docs for c func fixDocs(new string, c *cobra.Command) { diff --git a/cmd/config/cmddocs/api/docs.go b/cmd/config/cmddocs/api/docs.go index cf73eb8dd..fe8044ee9 100644 --- a/cmd/config/cmddocs/api/docs.go +++ b/cmd/config/cmddocs/api/docs.go @@ -59,7 +59,7 @@ var ConfigFnLong = `# Configuration Functions API Semantics generated Resources -- e.g. 1. the function generates a Deployment, but doesn't specify ` + "`" + `cpu` + "`" + `, 2. the user sets the ` + "`" + `cpu` + "`" + ` on the generated Resource, 3. the function should keep the ` + "`" + `cpu` + "`" + ` when regenerating the Resource a second time. - - Functions **SHOULD** be usable outside ` + "`" + `kyaml run-fns` + "`" + ` -- e.g. though pipeline + - Functions **SHOULD** be usable outside ` + "`" + `kustomize config run-fns` + "`" + ` -- e.g. though pipeline mechanisms such as Tekton. #### Input Format @@ -126,7 +126,8 @@ var ConfigFnLong = `# Configuration Functions API Semantics #### Container Environment - When run by ` + "`" + `kyaml run-fns` + "`" + `, functions are run in containers with the following environment: + When run by ` + "`" + `kustomize config run-fns` + "`" + `, functions are run in containers with the + following environment: - Network: ` + "`" + `none` + "`" + ` - User: ` + "`" + `nobody` + "`" + ` @@ -152,8 +153,8 @@ var ConfigFnLong = `# Configuration Functions API Semantics 4. Format the output #!/bin/bash - # script must run wrapped by kyaml for parsing input - # the functionConfig into env vars + # script must run wrapped by ` + "`" + `kustomize config run-fns wrap` + "`" + ` + # for parsing input the functionConfig into env vars if [ -z ${WRAPPED} ]; then export WRAPPED=true config run-fns wrap -- $0 @@ -205,7 +206,7 @@ var ConfigFnLong = `# Configuration Functions API Semantics #### ` + "`" + `Dockerfile` + "`" + ` - ` + "`" + `Dockerfile` + "`" + ` installs ` + "`" + `kyaml` + "`" + ` and copies the script into the container image. + ` + "`" + `Dockerfile` + "`" + ` installs ` + "`" + `kustomize config` + "`" + ` and copies the script into the container image. FROM golang:1.13-stretch RUN go get sigs.k8s.io/kustomize/cmd/config @@ -215,7 +216,7 @@ var ConfigFnLong = `# Configuration Functions API Semantics ### Example Function Usage -Following is an example of running the ` + "`" + `kyaml run-fns` + "`" + ` using the preceding API. +Following is an example of running the ` + "`" + `kustomize config run-fns` + "`" + ` using the preceding API. #### ` + "`" + `nginx.yaml` + "`" + ` (Input) @@ -238,7 +239,7 @@ Following is an example of running the ` + "`" + `kyaml run-fns` + "`" + ` using - ` + "`" + `annotations[config.kubernetes.io/local-config]` + "`" + `: mark this as not a Resource that should be applied -#### ` + "`" + `kyaml run-fns dir/` + "`" + ` (Output) +#### ` + "`" + `kustomize config run-fns dir/` + "`" + ` (Output) ` + "`" + `dir/my-instance_deployment.yaml` + "`" + ` contains the Deployment: diff --git a/cmd/config/cmddocs/commands/docs.go b/cmd/config/cmddocs/commands/docs.go index a7e9bcec5..67b59d5ba 100644 --- a/cmd/config/cmddocs/commands/docs.go +++ b/cmd/config/cmddocs/commands/docs.go @@ -13,13 +13,13 @@ var CatLong = ` ` var CatExamples = ` # print Resource config from a directory - kyaml cat my-dir/ + kustomize config cat my-dir/ # wrap Resource config from a directory in an ResourceList - kyaml cat my-dir/ --wrap-kind ResourceList --wrap-version config.kubernetes.io/v1alpha1 --function-config fn.yaml + kustomize config cat my-dir/ --wrap-kind ResourceList --wrap-version config.kubernetes.io/v1alpha1 --function-config fn.yaml # unwrap Resource config from a directory in an ResourceList - ... | kyaml cat` + ... | kustomize config cat` var CountShort = `[Alpha] Count Resources Config from a local directory.` var CountLong = ` @@ -30,7 +30,7 @@ var CountLong = ` ` var CountExamples = ` # print Resource counts from a directory - kyaml count my-dir/` + kustomize config count my-dir/` var FmtShort = `[Alpha] Format yaml configuration files.` var FmtLong = ` @@ -61,16 +61,16 @@ field paths. ` var FmtExamples = ` # format file1.yaml and file2.yml - kyaml fmt file1.yaml file2.yml + kustomize config fmt file1.yaml file2.yml # format all *.yaml and *.yml recursively traversing directories - kyaml fmt my-dir/ + kustomize config fmt my-dir/ # format kubectl output - kubectl get -o yaml deployments | kyaml fmt + kubectl get -o yaml deployments | kustomize config fmt # format kustomize output - kustomize build | kyaml fmt` + kustomize build | kustomize config fmt` var GrepShort = `[Alpha] Search for matching Resources in a directory or from stdin` var GrepLong = ` @@ -88,16 +88,16 @@ var GrepLong = ` ` var GrepExamples = ` # find Deployment Resources - kyaml grep "kind=Deployment" my-dir/ + kustomize config grep "kind=Deployment" my-dir/ # find Resources named nginx - kyaml grep "metadata.name=nginx" my-dir/ + kustomize config grep "metadata.name=nginx" my-dir/ # use tree to display matching Resources - kyaml grep "metadata.name=nginx" my-dir/ | kyaml tree + kustomize config grep "metadata.name=nginx" my-dir/ | kustomize config tree # look for Resources matching a specific container image - kyaml grep "spec.template.spec.containers[name=nginx].image=nginx:1\.7\.9" my-dir/ | kyaml tree` + kustomize config grep "spec.template.spec.containers[name=nginx].image=nginx:1\.7\.9" my-dir/ | kustomize config tree` var MergeShort = `[Alpha] Merge Resource configuration files` var MergeLong = ` @@ -114,10 +114,10 @@ earlier are lower-precedence (the destination). For information on merge rules, run: - kyaml docs merge + kustomize config docs merge ` var MergeExamples = ` - cat resources_and_patches.yaml | kyaml merge > merged_resources.yaml` + cat resources_and_patches.yaml | kustomize config merge > merged_resources.yaml` var RunFnsShort = `[Alpha] Reoncile config functions to Resources.` var RunFnsLong = ` @@ -157,22 +157,22 @@ order they appear in the file). spec: configField: configValue - In the preceding example, 'kyaml run-fns example/' would identify the function by + In the preceding example, 'kustomize config run-fns example/' would identify the function by the metadata.configFn field. It would then write all Resources in the directory to a container stdin (running the gcr.io/example/examplefunction:v1.0.1 image). It would then writer the container stdout back to example/, replacing the directory file contents. - See ` + "`" + `kyaml help docs-fn` + "`" + ` for more details on writing functions. + See ` + "`" + `kustomize config help docs-fn` + "`" + ` for more details on writing functions. ` var RunFnsExamples = ` -kyaml run-fns example/` +kustomize config run-fns example/` var TreeShort = `[Alpha] Display Resource structure from a directory or stdin.` var TreeLong = ` [Alpha] Display Resource structure from a directory or stdin. -kyaml tree may be used to print Resources in a directory or cluster, preserving structure +kustomize config tree may be used to print Resources in a directory or cluster, preserving structure Args: @@ -181,37 +181,37 @@ Args: Resource fields may be printed as part of the Resources by specifying the fields as flags. -kyaml tree has build-in support for printing common fields, such as replicas, container images, +kustomize config tree has build-in support for printing common fields, such as replicas, container images, container names, etc. -kyaml tree supports printing arbitrary fields using the '--field' flag. +kustomize config tree supports printing arbitrary fields using the '--field' flag. -By default, kyaml tree uses the directory structure for the tree structure, however when printing +By default, kustomize config tree uses the directory structure for the tree structure, however when printing from the cluster, the Resource graph structure may be used instead. ` var TreeExamples = ` # print Resources using directory structure - kyaml tree my-dir/ + kustomize config tree my-dir/ # print replicas, container name, and container image and fields for Resources - kyaml tree my-dir --replicas --image --name + kustomize config tree my-dir --replicas --image --name # print all common Resource fields - kyaml tree my-dir/ --all + kustomize config tree my-dir/ --all # print the "foo"" annotation - kyaml tree my-dir/ --field "metadata.annotations.foo" + kustomize config tree my-dir/ --field "metadata.annotations.foo" # print the "foo"" annotation - kubectl get all -o yaml | kyaml tree my-dir/ --structure=graph \ + kubectl get all -o yaml | kustomize config tree my-dir/ --structure=graph \ --field="status.conditions[type=Completed].status" # print live Resources from a cluster using graph for structure - kubectl get all -o yaml | kyaml tree --replicas --name --image --structure=graph + kubectl get all -o yaml | kustomize config tree --replicas --name --image --structure=graph # print live Resources using graph for structure - kubectl get all,applications,releasetracks -o yaml | kyaml tree --structure=graph \ + kubectl get all,applications,releasetracks -o yaml | kustomize config tree --structure=graph \ --name --image --replicas \ --field="status.conditions[type=Completed].status" \ --field="status.conditions[type=Complete].status" \ diff --git a/cmd/config/docs/api-conventions/config-fn.md b/cmd/config/docs/api-conventions/config-fn.md index c29de3fd2..e1f44d39b 100644 --- a/cmd/config/docs/api-conventions/config-fn.md +++ b/cmd/config/docs/api-conventions/config-fn.md @@ -53,7 +53,7 @@ generated Resources -- e.g. 1. the function generates a Deployment, but doesn't specify `cpu`, 2. the user sets the `cpu` on the generated Resource, 3. the function should keep the `cpu` when regenerating the Resource a second time. - - Functions **SHOULD** be usable outside `kyaml run-fns` -- e.g. though pipeline + - Functions **SHOULD** be usable outside `kustomize config run-fns` -- e.g. though pipeline mechanisms such as Tekton. #### Input Format @@ -120,7 +120,8 @@ #### Container Environment - When run by `kyaml run-fns`, functions are run in containers with the following environment: + When run by `kustomize config run-fns`, functions are run in containers with the + following environment: - Network: `none` - User: `nobody` @@ -146,8 +147,8 @@ 4. Format the output #!/bin/bash - # script must run wrapped by kyaml for parsing input - # the functionConfig into env vars + # script must run wrapped by `kustomize config run-fns wrap` + # for parsing input the functionConfig into env vars if [ -z ${WRAPPED} ]; then export WRAPPED=true config run-fns wrap -- $0 @@ -199,7 +200,7 @@ #### `Dockerfile` - `Dockerfile` installs `kyaml` and copies the script into the container image. + `Dockerfile` installs `kustomize config` and copies the script into the container image. FROM golang:1.13-stretch RUN go get sigs.k8s.io/kustomize/cmd/config @@ -209,7 +210,7 @@ ### Example Function Usage -Following is an example of running the `kyaml run-fns` using the preceding API. +Following is an example of running the `kustomize config run-fns` using the preceding API. #### `nginx.yaml` (Input) @@ -232,7 +233,7 @@ Following is an example of running the `kyaml run-fns` using the preceding API. - `annotations[config.kubernetes.io/local-config]`: mark this as not a Resource that should be applied -#### `kyaml run-fns dir/` (Output) +#### `kustomize config run-fns dir/` (Output) `dir/my-instance_deployment.yaml` contains the Deployment: diff --git a/cmd/config/docs/commands/cat.md b/cmd/config/docs/commands/cat.md index 08e7b8c2d..0d91bcf95 100644 --- a/cmd/config/docs/commands/cat.md +++ b/cmd/config/docs/commands/cat.md @@ -12,10 +12,10 @@ ### Examples # print Resource config from a directory - kyaml cat my-dir/ + kustomize config cat my-dir/ # wrap Resource config from a directory in an ResourceList - kyaml cat my-dir/ --wrap-kind ResourceList --wrap-version config.kubernetes.io/v1alpha1 --function-config fn.yaml + kustomize config cat my-dir/ --wrap-kind ResourceList --wrap-version config.kubernetes.io/v1alpha1 --function-config fn.yaml # unwrap Resource config from a directory in an ResourceList - ... | kyaml cat + ... | kustomize config cat diff --git a/cmd/config/docs/commands/count.md b/cmd/config/docs/commands/count.md index 70be322bc..aa06bb7dd 100644 --- a/cmd/config/docs/commands/count.md +++ b/cmd/config/docs/commands/count.md @@ -12,4 +12,4 @@ ### Examples # print Resource counts from a directory - kyaml count my-dir/ \ No newline at end of file + kustomize config count my-dir/ \ No newline at end of file diff --git a/cmd/config/docs/commands/fmt.md b/cmd/config/docs/commands/fmt.md index 5c7509e66..d898112cd 100644 --- a/cmd/config/docs/commands/fmt.md +++ b/cmd/config/docs/commands/fmt.md @@ -32,13 +32,13 @@ field paths. ### Examples # format file1.yaml and file2.yml - kyaml fmt file1.yaml file2.yml + kustomize config fmt file1.yaml file2.yml # format all *.yaml and *.yml recursively traversing directories - kyaml fmt my-dir/ + kustomize config fmt my-dir/ # format kubectl output - kubectl get -o yaml deployments | kyaml fmt + kubectl get -o yaml deployments | kustomize config fmt # format kustomize output - kustomize build | kyaml fmt \ No newline at end of file + kustomize build | kustomize config fmt \ No newline at end of file diff --git a/cmd/config/docs/commands/grep.md b/cmd/config/docs/commands/grep.md index 8b4a8c17a..755432c7a 100644 --- a/cmd/config/docs/commands/grep.md +++ b/cmd/config/docs/commands/grep.md @@ -19,13 +19,13 @@ ### Examples # find Deployment Resources - kyaml grep "kind=Deployment" my-dir/ + kustomize config grep "kind=Deployment" my-dir/ # find Resources named nginx - kyaml grep "metadata.name=nginx" my-dir/ + kustomize config grep "metadata.name=nginx" my-dir/ # use tree to display matching Resources - kyaml grep "metadata.name=nginx" my-dir/ | kyaml tree + kustomize config grep "metadata.name=nginx" my-dir/ | kustomize config tree # look for Resources matching a specific container image - kyaml grep "spec.template.spec.containers[name=nginx].image=nginx:1\.7\.9" my-dir/ | kyaml tree \ No newline at end of file + kustomize config grep "spec.template.spec.containers[name=nginx].image=nginx:1\.7\.9" my-dir/ | kustomize config tree \ No newline at end of file diff --git a/cmd/config/docs/commands/merge.md b/cmd/config/docs/commands/merge.md index eae88650c..2677c1f4c 100644 --- a/cmd/config/docs/commands/merge.md +++ b/cmd/config/docs/commands/merge.md @@ -17,8 +17,8 @@ earlier are lower-precedence (the destination). For information on merge rules, run: - kyaml docs merge + kustomize config docs merge ### Examples - cat resources_and_patches.yaml | kyaml merge > merged_resources.yaml \ No newline at end of file + cat resources_and_patches.yaml | kustomize config merge > merged_resources.yaml \ No newline at end of file diff --git a/cmd/config/docs/commands/run-fns.md b/cmd/config/docs/commands/run-fns.md index d4b66ec28..28c46c558 100644 --- a/cmd/config/docs/commands/run-fns.md +++ b/cmd/config/docs/commands/run-fns.md @@ -40,14 +40,14 @@ order they appear in the file). spec: configField: configValue - In the preceding example, 'kyaml run-fns example/' would identify the function by + In the preceding example, 'kustomize config run-fns example/' would identify the function by the metadata.configFn field. It would then write all Resources in the directory to a container stdin (running the gcr.io/example/examplefunction:v1.0.1 image). It would then writer the container stdout back to example/, replacing the directory file contents. - See `kyaml help docs-fn` for more details on writing functions. + See `kustomize config help docs-fn` for more details on writing functions. ### Examples -kyaml run-fns example/ +kustomize config run-fns example/ diff --git a/cmd/config/docs/commands/tree.md b/cmd/config/docs/commands/tree.md index adb261166..44c746252 100644 --- a/cmd/config/docs/commands/tree.md +++ b/cmd/config/docs/commands/tree.md @@ -6,7 +6,7 @@ [Alpha] Display Resource structure from a directory or stdin. -kyaml tree may be used to print Resources in a directory or cluster, preserving structure +kustomize config tree may be used to print Resources in a directory or cluster, preserving structure Args: @@ -15,38 +15,38 @@ Args: Resource fields may be printed as part of the Resources by specifying the fields as flags. -kyaml tree has build-in support for printing common fields, such as replicas, container images, +kustomize config tree has build-in support for printing common fields, such as replicas, container images, container names, etc. -kyaml tree supports printing arbitrary fields using the '--field' flag. +kustomize config tree supports printing arbitrary fields using the '--field' flag. -By default, kyaml tree uses the directory structure for the tree structure, however when printing +By default, kustomize config tree uses the directory structure for the tree structure, however when printing from the cluster, the Resource graph structure may be used instead. ### Examples # print Resources using directory structure - kyaml tree my-dir/ + kustomize config tree my-dir/ # print replicas, container name, and container image and fields for Resources - kyaml tree my-dir --replicas --image --name + kustomize config tree my-dir --replicas --image --name # print all common Resource fields - kyaml tree my-dir/ --all + kustomize config tree my-dir/ --all # print the "foo"" annotation - kyaml tree my-dir/ --field "metadata.annotations.foo" + kustomize config tree my-dir/ --field "metadata.annotations.foo" # print the "foo"" annotation - kubectl get all -o yaml | kyaml tree my-dir/ --structure=graph \ + kubectl get all -o yaml | kustomize config tree my-dir/ --structure=graph \ --field="status.conditions[type=Completed].status" # print live Resources from a cluster using graph for structure - kubectl get all -o yaml | kyaml tree --replicas --name --image --structure=graph + kubectl get all -o yaml | kustomize config tree --replicas --name --image --structure=graph # print live Resources using graph for structure - kubectl get all,applications,releasetracks -o yaml | kyaml tree --structure=graph \ + kubectl get all,applications,releasetracks -o yaml | kustomize config tree --structure=graph \ --name --image --replicas \ --field="status.conditions[type=Completed].status" \ --field="status.conditions[type=Complete].status" \