mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-05-17 18:25:26 +00:00
rename run-fns to run
This commit is contained in:
@@ -41,7 +41,7 @@ items:
|
||||
- 1
|
||||
|
||||
# this command:
|
||||
$ kyaml cat pkg/ --function-config config.yaml --wrap-kind ResourceList | kyaml run-fns xargs -- app
|
||||
$ kyaml cat pkg/ --function-config config.yaml --wrap-kind ResourceList | kyaml run xargs -- app
|
||||
|
||||
# is equivalent to this command:
|
||||
$ kyaml cat pkg/ --function-config config.yaml --wrap-kind ResourceList | app --flag1=value1 --flag2=value2 2 1
|
||||
|
||||
@@ -13,8 +13,8 @@ import (
|
||||
func GetRunFnRunner(name string) *RunFnRunner {
|
||||
r := &RunFnRunner{}
|
||||
c := &cobra.Command{
|
||||
Use: "run-fns DIR",
|
||||
Aliases: []string{"run"},
|
||||
Use: "run DIR",
|
||||
Aliases: []string{"run-fns"},
|
||||
Short: commands.RunFnsShort,
|
||||
Long: commands.RunFnsLong,
|
||||
Example: commands.RunFnsExamples,
|
||||
|
||||
@@ -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 ` + "`" + `kustomize config run-fns` + "`" + ` -- e.g. though pipeline
|
||||
- Functions **SHOULD** be usable outside ` + "`" + `kustomize config run` + "`" + ` -- e.g. though pipeline
|
||||
mechanisms such as Tekton.
|
||||
|
||||
#### Input Format
|
||||
@@ -126,7 +126,7 @@ var ConfigFnLong = `# Configuration Functions API Semantics
|
||||
|
||||
#### Container Environment
|
||||
|
||||
When run by ` + "`" + `kustomize config run-fns` + "`" + `, functions are run in containers with the
|
||||
When run by ` + "`" + `kustomize config run` + "`" + `, functions are run in containers with the
|
||||
following environment:
|
||||
|
||||
- Network: ` + "`" + `none` + "`" + `
|
||||
@@ -144,7 +144,7 @@ var ConfigFnLong = `# Configuration Functions API Semantics
|
||||
` + "`" + `nginx-template.sh` + "`" + ` is a simple bash script which uses a *heredoc* as a templating solution
|
||||
for generating Resources from the functionConfig input fields.
|
||||
|
||||
The script wraps itself using ` + "`" + `config run-fns wrap -- $0` + "`" + ` which will:
|
||||
The script wraps itself using ` + "`" + `config run wrap -- $0` + "`" + ` which will:
|
||||
|
||||
1. Parse the ` + "`" + `ResourceList.functionConfig` + "`" + ` (provided to the container stdin) into env vars
|
||||
2. Merge the stdout into the original list of Resources
|
||||
@@ -153,11 +153,11 @@ var ConfigFnLong = `# Configuration Functions API Semantics
|
||||
4. Format the output
|
||||
|
||||
#!/bin/bash
|
||||
# script must run wrapped by ` + "`" + `kustomize config run-fns wrap` + "`" + `
|
||||
# script must run wrapped by ` + "`" + `kustomize config run wrap` + "`" + `
|
||||
# for parsing input the functionConfig into env vars
|
||||
if [ -z ${WRAPPED} ]; then
|
||||
export WRAPPED=true
|
||||
config run-fns wrap -- $0
|
||||
config run wrap -- $0
|
||||
exit $?
|
||||
fi
|
||||
|
||||
@@ -216,7 +216,7 @@ var ConfigFnLong = `# Configuration Functions API Semantics
|
||||
|
||||
### Example Function Usage
|
||||
|
||||
Following is an example of running the ` + "`" + `kustomize config run-fns` + "`" + ` using the preceding API.
|
||||
Following is an example of running the ` + "`" + `kustomize config run` + "`" + ` using the preceding API.
|
||||
|
||||
#### ` + "`" + `nginx.yaml` + "`" + ` (Input)
|
||||
|
||||
@@ -239,7 +239,7 @@ Following is an example of running the ` + "`" + `kustomize config run-fns` + "`
|
||||
- ` + "`" + `annotations[config.kubernetes.io/local-config]` + "`" + `: mark this as not a Resource that should
|
||||
be applied
|
||||
|
||||
#### ` + "`" + `kustomize config run-fns dir/` + "`" + ` (Output)
|
||||
#### ` + "`" + `kustomize config run dir/` + "`" + ` (Output)
|
||||
|
||||
` + "`" + `dir/my-instance_deployment.yaml` + "`" + ` contains the Deployment:
|
||||
|
||||
|
||||
@@ -123,7 +123,7 @@ var RunFnsShort = `[Alpha] Reoncile config functions to Resources.`
|
||||
var RunFnsLong = `
|
||||
[Alpha] Reconcile config functions to Resources.
|
||||
|
||||
run-fns sequentially invokes all config functions in the directly, providing Resources
|
||||
run sequentially invokes all config functions in the directly, providing Resources
|
||||
in the directory as input to the first function, and writing the output of the last
|
||||
function back to the directory.
|
||||
|
||||
@@ -140,7 +140,7 @@ order they appear in the file).
|
||||
#### Config Functions:
|
||||
|
||||
Config functions are specified as Kubernetes types containing a metadata.configFn.container.image
|
||||
field. This fields tells run-fns how to invoke the container.
|
||||
field. This fields tells run how to invoke the container.
|
||||
|
||||
Example config function:
|
||||
|
||||
@@ -157,7 +157,7 @@ order they appear in the file).
|
||||
spec:
|
||||
configField: configValue
|
||||
|
||||
In the preceding example, 'kustomize config run-fns example/' would identify the function by
|
||||
In the preceding example, 'kustomize config run 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
|
||||
@@ -166,7 +166,7 @@ order they appear in the file).
|
||||
See ` + "`" + `kustomize config help docs-fn` + "`" + ` for more details on writing functions.
|
||||
`
|
||||
var RunFnsExamples = `
|
||||
kustomize config run-fns example/`
|
||||
kustomize config run example/`
|
||||
|
||||
var TreeShort = `[Alpha] Display Resource structure from a directory or stdin.`
|
||||
var TreeLong = `
|
||||
|
||||
@@ -282,7 +282,7 @@ var ConfigurationBasicsLong = `
|
||||
var FunctionBasicsShort = `### Synopsis`
|
||||
var FunctionBasicsLong = `
|
||||
` + "`" + `kustomize config` + "`" + ` enables encapsulating function for manipulating Resource
|
||||
configuration inside containers, which are run using ` + "`" + `run-fns` + "`" + `.
|
||||
configuration inside containers, which are run using ` + "`" + `run` + "`" + `.
|
||||
|
||||
First fetch the kustomize repository, which contains a collection of example
|
||||
functions
|
||||
@@ -299,7 +299,7 @@ var FunctionBasicsLong = `
|
||||
#### 1: Generate the Resources
|
||||
|
||||
` + "`" + `cd` + "`" + ` into the ` + "`" + `kustomize/functions/examples/template-heredoc-cockroachdb/` + "`" + `
|
||||
directory, and invoke ` + "`" + `run-fns` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
directory, and invoke ` + "`" + `run` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
|
||||
cd template-heredoc-cockroachdb/
|
||||
|
||||
@@ -307,12 +307,12 @@ var FunctionBasicsLong = `
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
# view the generated Resources
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
` + "`" + `run-fns` + "`" + ` generated the directory ` + "`" + ` local-resource/config` + "`" + ` containing the generated
|
||||
` + "`" + `run` + "`" + ` generated the directory ` + "`" + ` local-resource/config` + "`" + ` containing the generated
|
||||
Resources.
|
||||
|
||||
#### 2. Modify the Generated Resources
|
||||
@@ -320,14 +320,14 @@ var FunctionBasicsLong = `
|
||||
- modify the generated Resources by adding an annotation, sidecar container, etc.
|
||||
- modify the ` + "`" + `local-resources/example-use.yaml` + "`" + ` by changing the replicas
|
||||
|
||||
re-run ` + "`" + `run-fns` + "`" + `. this will apply the updated replicas to the generated Resources,
|
||||
re-run ` + "`" + `run` + "`" + `. this will apply the updated replicas to the generated Resources,
|
||||
but keep the fields that you manually added to the generated Resource configuration.
|
||||
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
` + "`" + `run-fns` + "`" + ` facilitates a non-destructive *smart templating* approach that allows templating
|
||||
` + "`" + `run` + "`" + ` facilitates a non-destructive *smart templating* approach that allows templating
|
||||
to be composed with manual modifications directly to the template output, as well as
|
||||
composition with other functions which may appy validation or injection of values.
|
||||
|
||||
@@ -345,7 +345,7 @@ var FunctionBasicsLong = `
|
||||
#### 1: Generate the Resources
|
||||
|
||||
` + "`" + `cd` + "`" + ` into the ` + "`" + `kustomize/functions/examples/template-go-nginx/` + "`" + `
|
||||
directory, and invoke ` + "`" + `run-fns` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
directory, and invoke ` + "`" + `run` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
|
||||
cd template-go-nginx/
|
||||
|
||||
@@ -353,12 +353,12 @@ var FunctionBasicsLong = `
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
# view the generated Resources
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
` + "`" + `run-fns` + "`" + ` generated the directory ` + "`" + ` local-resource/config` + "`" + ` containing the generated
|
||||
` + "`" + `run` + "`" + ` generated the directory ` + "`" + ` local-resource/config` + "`" + ` containing the generated
|
||||
Resources. this time it put the configuration in a single file rather than multiple
|
||||
files. The mapping of Resources to files is controlled by the function itself through
|
||||
annotations on the generated Resources.
|
||||
@@ -368,11 +368,11 @@ var FunctionBasicsLong = `
|
||||
- modify the generated Resources by adding an annotation, sidecar container, etc.
|
||||
- modify the ` + "`" + `local-resources/example-use.yaml` + "`" + ` by changing the replicas
|
||||
|
||||
re-run ` + "`" + `run-fns` + "`" + `. this will apply the updated replicas to the generated Resources,
|
||||
re-run ` + "`" + `run` + "`" + `. this will apply the updated replicas to the generated Resources,
|
||||
but keep the fields that you manually added to the generated Resource configuration.
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
Just like in the preceding section, the function is implemented using a non-destructive
|
||||
approach which merges the generated Resources into previously generated instances.
|
||||
@@ -384,15 +384,15 @@ var FunctionBasicsLong = `
|
||||
|
||||
### Validation -- resource reservations
|
||||
|
||||
This section uses ` + "`" + `run-fns` + "`" + ` to perform validation rather than generate Resources.
|
||||
This section uses ` + "`" + `run` + "`" + ` to perform validation rather than generate Resources.
|
||||
|
||||
#### 1: Run the Validator
|
||||
|
||||
` + "`" + `cd` + "`" + ` into the ` + "`" + `kustomize/functions/examples/validator-resource-requests` + "`" + `
|
||||
directory, and invoke ` + "`" + `run-fns` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
directory, and invoke ` + "`" + `run` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
cpu-requests missing for a container in Deployment nginx (example-use.yaml [1])
|
||||
Error: exit status 1
|
||||
Usage:
|
||||
@@ -404,19 +404,19 @@ var FunctionBasicsLong = `
|
||||
and print the name of the file + Resource index. Edit the file and uncomment the resources,
|
||||
then re-run the functions.
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
The validation now passes.
|
||||
|
||||
### Injection -- resource reservations
|
||||
|
||||
This section uses ` + "`" + `run-fns` + "`" + ` to perform injection of field values based off annotations
|
||||
This section uses ` + "`" + `run` + "`" + ` to perform injection of field values based off annotations
|
||||
on the Resource.
|
||||
|
||||
#### 1: Run the Injector
|
||||
|
||||
` + "`" + `cd` + "`" + ` into the ` + "`" + `kustomize/functions/examples/inject-tshirt-sizes` + "`" + `
|
||||
directory, and invoke ` + "`" + `run-fns` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
directory, and invoke ` + "`" + `run` + "`" + ` on the ` + "`" + `local-resource/` + "`" + ` directory.
|
||||
|
||||
# print the resources
|
||||
kustomize config tree local-resource --resources --name
|
||||
@@ -428,7 +428,7 @@ var FunctionBasicsLong = `
|
||||
└── name: nginx
|
||||
|
||||
# run the functions
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
# print the new resources
|
||||
kustomize config tree local-resource --resources --name
|
||||
@@ -443,7 +443,7 @@ var FunctionBasicsLong = `
|
||||
|
||||
Change the ` + "`" + `tshirt-size` + "`" + ` annotation from ` + "`" + `medium` + "`" + ` to ` + "`" + `small` + "`" + ` and re-run the functions.
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
kustomize config tree local-resource/
|
||||
local-resource
|
||||
├── [example-use.yaml] Validator
|
||||
@@ -459,5 +459,5 @@ var FunctionBasicsLong = `
|
||||
|
||||
Functions may be composed together. Try putting the Injection (tshirt-size) and
|
||||
Validation functions together in the same .yaml file (separated by ` + "`" + `---` + "`" + `). Run
|
||||
` + "`" + `run-fns` + "`" + ` and observe that the first function in the file is applied to the Resources,
|
||||
` + "`" + `run` + "`" + ` and observe that the first function in the file is applied to the Resources,
|
||||
and then the second function in the file is applied.`
|
||||
|
||||
@@ -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 `kustomize config run-fns` -- e.g. though pipeline
|
||||
- Functions **SHOULD** be usable outside `kustomize config run` -- e.g. though pipeline
|
||||
mechanisms such as Tekton.
|
||||
|
||||
#### Input Format
|
||||
@@ -120,7 +120,7 @@
|
||||
|
||||
#### Container Environment
|
||||
|
||||
When run by `kustomize config run-fns`, functions are run in containers with the
|
||||
When run by `kustomize config run`, functions are run in containers with the
|
||||
following environment:
|
||||
|
||||
- Network: `none`
|
||||
@@ -138,7 +138,7 @@
|
||||
`nginx-template.sh` is a simple bash script which uses a *heredoc* as a templating solution
|
||||
for generating Resources from the functionConfig input fields.
|
||||
|
||||
The script wraps itself using `config run-fns wrap -- $0` which will:
|
||||
The script wraps itself using `config run wrap -- $0` which will:
|
||||
|
||||
1. Parse the `ResourceList.functionConfig` (provided to the container stdin) into env vars
|
||||
2. Merge the stdout into the original list of Resources
|
||||
@@ -147,11 +147,11 @@
|
||||
4. Format the output
|
||||
|
||||
#!/bin/bash
|
||||
# script must run wrapped by `kustomize config run-fns wrap`
|
||||
# script must run wrapped by `kustomize config run wrap`
|
||||
# for parsing input the functionConfig into env vars
|
||||
if [ -z ${WRAPPED} ]; then
|
||||
export WRAPPED=true
|
||||
config run-fns wrap -- $0
|
||||
config run wrap -- $0
|
||||
exit $?
|
||||
fi
|
||||
|
||||
@@ -210,7 +210,7 @@
|
||||
|
||||
### Example Function Usage
|
||||
|
||||
Following is an example of running the `kustomize config run-fns` using the preceding API.
|
||||
Following is an example of running the `kustomize config run` using the preceding API.
|
||||
|
||||
#### `nginx.yaml` (Input)
|
||||
|
||||
@@ -233,7 +233,7 @@ Following is an example of running the `kustomize config run-fns` using the prec
|
||||
- `annotations[config.kubernetes.io/local-config]`: mark this as not a Resource that should
|
||||
be applied
|
||||
|
||||
#### `kustomize config run-fns dir/` (Output)
|
||||
#### `kustomize config run dir/` (Output)
|
||||
|
||||
`dir/my-instance_deployment.yaml` contains the Deployment:
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
## run-fns
|
||||
## run
|
||||
|
||||
[Alpha] Reoncile config functions to Resources.
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
[Alpha] Reconcile config functions to Resources.
|
||||
|
||||
run-fns sequentially invokes all config functions in the directly, providing Resources
|
||||
run sequentially invokes all config functions in the directly, providing Resources
|
||||
in the directory as input to the first function, and writing the output of the last
|
||||
function back to the directory.
|
||||
|
||||
@@ -23,7 +23,7 @@ order they appear in the file).
|
||||
#### Config Functions:
|
||||
|
||||
Config functions are specified as Kubernetes types containing a metadata.configFn.container.image
|
||||
field. This fields tells run-fns how to invoke the container.
|
||||
field. This fields tells run how to invoke the container.
|
||||
|
||||
Example config function:
|
||||
|
||||
@@ -40,7 +40,7 @@ order they appear in the file).
|
||||
spec:
|
||||
configField: configValue
|
||||
|
||||
In the preceding example, 'kustomize config run-fns example/' would identify the function by
|
||||
In the preceding example, 'kustomize config run 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
|
||||
@@ -50,4 +50,4 @@ order they appear in the file).
|
||||
|
||||
### Examples
|
||||
|
||||
kustomize config run-fns example/
|
||||
kustomize config run example/
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
### Synopsis
|
||||
|
||||
`kustomize config` enables encapsulating function for manipulating Resource
|
||||
configuration inside containers, which are run using `run-fns`.
|
||||
configuration inside containers, which are run using `run`.
|
||||
|
||||
First fetch the kustomize repository, which contains a collection of example
|
||||
functions
|
||||
@@ -20,7 +20,7 @@
|
||||
#### 1: Generate the Resources
|
||||
|
||||
`cd` into the `kustomize/functions/examples/template-heredoc-cockroachdb/`
|
||||
directory, and invoke `run-fns` on the `local-resource/` directory.
|
||||
directory, and invoke `run` on the `local-resource/` directory.
|
||||
|
||||
cd template-heredoc-cockroachdb/
|
||||
|
||||
@@ -28,12 +28,12 @@
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
# view the generated Resources
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
`run-fns` generated the directory ` local-resource/config` containing the generated
|
||||
`run` generated the directory ` local-resource/config` containing the generated
|
||||
Resources.
|
||||
|
||||
#### 2. Modify the Generated Resources
|
||||
@@ -41,14 +41,14 @@
|
||||
- modify the generated Resources by adding an annotation, sidecar container, etc.
|
||||
- modify the `local-resources/example-use.yaml` by changing the replicas
|
||||
|
||||
re-run `run-fns`. this will apply the updated replicas to the generated Resources,
|
||||
re-run `run`. this will apply the updated replicas to the generated Resources,
|
||||
but keep the fields that you manually added to the generated Resource configuration.
|
||||
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
`run-fns` facilitates a non-destructive *smart templating* approach that allows templating
|
||||
`run` facilitates a non-destructive *smart templating* approach that allows templating
|
||||
to be composed with manual modifications directly to the template output, as well as
|
||||
composition with other functions which may appy validation or injection of values.
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
#### 1: Generate the Resources
|
||||
|
||||
`cd` into the `kustomize/functions/examples/template-go-nginx/`
|
||||
directory, and invoke `run-fns` on the `local-resource/` directory.
|
||||
directory, and invoke `run` on the `local-resource/` directory.
|
||||
|
||||
cd template-go-nginx/
|
||||
|
||||
@@ -74,12 +74,12 @@
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
# view the generated Resources
|
||||
kustomize config tree local-resource/ --name --image --replicas
|
||||
|
||||
`run-fns` generated the directory ` local-resource/config` containing the generated
|
||||
`run` generated the directory ` local-resource/config` containing the generated
|
||||
Resources. this time it put the configuration in a single file rather than multiple
|
||||
files. The mapping of Resources to files is controlled by the function itself through
|
||||
annotations on the generated Resources.
|
||||
@@ -89,11 +89,11 @@
|
||||
- modify the generated Resources by adding an annotation, sidecar container, etc.
|
||||
- modify the `local-resources/example-use.yaml` by changing the replicas
|
||||
|
||||
re-run `run-fns`. this will apply the updated replicas to the generated Resources,
|
||||
re-run `run`. this will apply the updated replicas to the generated Resources,
|
||||
but keep the fields that you manually added to the generated Resource configuration.
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
Just like in the preceding section, the function is implemented using a non-destructive
|
||||
approach which merges the generated Resources into previously generated instances.
|
||||
@@ -105,15 +105,15 @@
|
||||
|
||||
### Validation -- resource reservations
|
||||
|
||||
This section uses `run-fns` to perform validation rather than generate Resources.
|
||||
This section uses `run` to perform validation rather than generate Resources.
|
||||
|
||||
#### 1: Run the Validator
|
||||
|
||||
`cd` into the `kustomize/functions/examples/validator-resource-requests`
|
||||
directory, and invoke `run-fns` on the `local-resource/` directory.
|
||||
directory, and invoke `run` on the `local-resource/` directory.
|
||||
|
||||
# run the function
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
cpu-requests missing for a container in Deployment nginx (example-use.yaml [1])
|
||||
Error: exit status 1
|
||||
Usage:
|
||||
@@ -125,19 +125,19 @@
|
||||
and print the name of the file + Resource index. Edit the file and uncomment the resources,
|
||||
then re-run the functions.
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
The validation now passes.
|
||||
|
||||
### Injection -- resource reservations
|
||||
|
||||
This section uses `run-fns` to perform injection of field values based off annotations
|
||||
This section uses `run` to perform injection of field values based off annotations
|
||||
on the Resource.
|
||||
|
||||
#### 1: Run the Injector
|
||||
|
||||
`cd` into the `kustomize/functions/examples/inject-tshirt-sizes`
|
||||
directory, and invoke `run-fns` on the `local-resource/` directory.
|
||||
directory, and invoke `run` on the `local-resource/` directory.
|
||||
|
||||
# print the resources
|
||||
kustomize config tree local-resource --resources --name
|
||||
@@ -149,7 +149,7 @@
|
||||
└── name: nginx
|
||||
|
||||
# run the functions
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
# print the new resources
|
||||
kustomize config tree local-resource --resources --name
|
||||
@@ -164,7 +164,7 @@
|
||||
|
||||
Change the `tshirt-size` annotation from `medium` to `small` and re-run the functions.
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
kustomize config tree local-resource/
|
||||
local-resource
|
||||
├── [example-use.yaml] Validator
|
||||
@@ -180,5 +180,5 @@
|
||||
|
||||
Functions may be composed together. Try putting the Injection (tshirt-size) and
|
||||
Validation functions together in the same .yaml file (separated by `---`). Run
|
||||
`run-fns` and observe that the first function in the file is applied to the Resources,
|
||||
`run` and observe that the first function in the file is applied to the Resources,
|
||||
and then the second function in the file is applied.
|
||||
@@ -17,7 +17,7 @@ Resource configuration, and looks for invalid configuration.
|
||||
The function is invoked by authoring a [local Resource](local-resource)
|
||||
with `metadata.configFn` and running:
|
||||
|
||||
kustomize config run-fns local-resources/
|
||||
kustomize config run local-resources/
|
||||
|
||||
This exists non-zero if there is an error.
|
||||
|
||||
@@ -25,11 +25,11 @@ This exists non-zero if there is an error.
|
||||
|
||||
Run the validator with:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
This will add resource reservations to the Deployment. Change the `tshirt-size`
|
||||
annotation from `medium` to `small` and rerun:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
Observe that the reservations have changed.
|
||||
@@ -2,7 +2,7 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// Package main implements an injection function for resource reservations and
|
||||
// is run with `kustomize config run-fns -- DIR/`.
|
||||
// is run with `kustomize config run -- DIR/`.
|
||||
package main
|
||||
|
||||
import (
|
||||
|
||||
@@ -27,21 +27,21 @@ function input, and writing the function output.
|
||||
The function is invoked by authoring a [local Resource](local-resource)
|
||||
with `metadata.configFn` and running:
|
||||
|
||||
kustomize config run-fns local-resources/
|
||||
kustomize config run local-resources/
|
||||
|
||||
This generates the `local-resources/config` directory containing the template output.
|
||||
|
||||
- the template output may be modified by adding fields -- such as initContainers,
|
||||
sidecarConatiners, cpu resource limits, etc -- and these fields will be retained
|
||||
when re-running `run-fns`
|
||||
- the function input `example-use.yaml` may be changed and rerunning `run-fns` will update
|
||||
when re-running `run`
|
||||
- the function input `example-use.yaml` may be changed and rerunning `run` will update
|
||||
only the parts changed in the template output.
|
||||
|
||||
## Running the Example
|
||||
|
||||
Run the config with:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
This will create the directory
|
||||
|
||||
@@ -50,6 +50,6 @@ This will create the directory
|
||||
Add an annotation to the StatefulSet Resource and change the replica count of the
|
||||
`kind: Nginx` Resource in `example-use.yaml`. Rerun the template:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
The replica count should be updated, but your annotation should remain.
|
||||
@@ -1,7 +1,7 @@
|
||||
# Copyright 2019 The Kubernetes Authors.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
apiVersion: examples.config.kubernetes.io/v1beta1 # call `kustomize config run-fns` on a directory containing this file
|
||||
apiVersion: examples.config.kubernetes.io/v1beta1 # call `kustomize config run` on a directory containing this file
|
||||
kind: Nginx
|
||||
metadata:
|
||||
name: demo
|
||||
|
||||
@@ -11,7 +11,7 @@ The function is implemented as an [image](image), and built using `make image`.
|
||||
The template is implemented as a heredoc, which substitutes environment variables
|
||||
into a static string.
|
||||
|
||||
This simple implementation uses `kustomize config run-fns wrap --` to perform the
|
||||
This simple implementation uses `kustomize config run wrap --` to perform the
|
||||
heavy lifting of implementing the function interface.
|
||||
|
||||
- parse functionConfig from stdin into environment variables
|
||||
@@ -22,21 +22,21 @@ heavy lifting of implementing the function interface.
|
||||
The function is invoked by authoring a [local Resource](local-resource)
|
||||
with `metadata.configFn` and running:
|
||||
|
||||
kustomize config run-fns local-resources/
|
||||
kustomize config run local-resources/
|
||||
|
||||
This generates the `local-resources/config` directory containing the template output.
|
||||
|
||||
- the template output may be modified by adding fields -- such as initContainers,
|
||||
sidecarConatiners, cpu resource limits, etc -- and these fields will be retained
|
||||
when re-running `run-fns`
|
||||
- the function input `example-use.yaml` may be changed and rerunning `run-fns` will update
|
||||
when re-running `run`
|
||||
- the function input `example-use.yaml` may be changed and rerunning `run` will update
|
||||
only the parts changed in the template output.
|
||||
|
||||
## Running the Example
|
||||
|
||||
Run the config with:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
This will create the directory
|
||||
|
||||
@@ -45,6 +45,6 @@ This will create the directory
|
||||
Add an annotation to the StatefulSet Resource and change the replica count of the
|
||||
`kind: CockroachDB` Resource in `example-use.yaml`. Rerun the template:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
The replica count should be updated, but your annotation should remain.
|
||||
@@ -3,18 +3,18 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
|
||||
# use `kustomize config run-fns wrap` to parse the container stdin into
|
||||
# use `kustomize config run wrap` to parse the container stdin into
|
||||
# environment variables, and to merge the template output into the
|
||||
# input Resources.
|
||||
if [ -z ${WRAPPED} ]; then
|
||||
export WRAPPED=true
|
||||
kustomize config run-fns wrap -- $0
|
||||
kustomize config run wrap -- $0
|
||||
exit $?
|
||||
fi
|
||||
|
||||
# this is the template for a cockroachdb instance
|
||||
# environment variables are parsed from the input functionConfig by
|
||||
# `kustomize config run-fns wrap`
|
||||
# `kustomize config run wrap`
|
||||
cat <<End-of-message
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Copyright 2019 The Kubernetes Authors.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
# call `kustomize config run-fns` on a directory containing this file
|
||||
# call `kustomize config run` on a directory containing this file
|
||||
apiVersion: examples.config.kubernetes.io/v1beta1
|
||||
kind: CockroachDB
|
||||
metadata:
|
||||
|
||||
@@ -17,7 +17,7 @@ Resource configuration, and looks for invalid configuration.
|
||||
The function is invoked by authoring a [local Resource](local-resource)
|
||||
with `metadata.configFn` and running:
|
||||
|
||||
kustomize config run-fns local-resources/
|
||||
kustomize config run local-resources/
|
||||
|
||||
This exists non-zero if there is an error.
|
||||
|
||||
@@ -25,7 +25,7 @@ This exists non-zero if there is an error.
|
||||
|
||||
Run the validator with:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
This will return an error:
|
||||
|
||||
@@ -33,6 +33,6 @@ This will return an error:
|
||||
|
||||
Now uncomment the resource reservations and run again:
|
||||
|
||||
kustomize config run-fns local-resource/
|
||||
kustomize config run local-resource/
|
||||
|
||||
This will return success
|
||||
@@ -1,7 +1,7 @@
|
||||
// Copyright 2019 The Kubernetes Authors.
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
// Package main implements a validator function run by `kustomize config run-fns`
|
||||
// Package main implements a validator function run by `kustomize config run`
|
||||
package main
|
||||
|
||||
import (
|
||||
|
||||
Reference in New Issue
Block a user