Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
H
helm3
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
go
helm3
Commits
1a8e728e
Commit
1a8e728e
authored
Mar 29, 2017
by
Justin Scott
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update docs with details about exports
parent
7ea4d8c7
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
53 additions
and
43 deletions
+53
-43
charts.md
docs/charts.md
+53
-43
No files found.
docs/charts.md
View file @
1a8e728e
...
...
@@ -304,13 +304,58 @@ helm install --set tags.front-end=true --set subchart2.enabled=false
#### Importing Child Values via requirements.yaml
In some cases it is desirable to allow a child chart's values to propagate to the parent chart and be shared
as common defaults. The values to be imported can be specified in the parent chart's requirements.yaml
using a YAML list format that contains the source of the values to be imported (child) and the
destination path in the parent chart's values (parent).
In some cases it is desirable to allow a child chart's values to propagate to the parent chart and be
shared as common defaults. An additional benefit of using the `
exports
` format is that it will enable future
tooling to introspect user settable values.
The optional `
import-values
` in the example below instructs Helm to take any values found at `
child:
`
path and copy them to the path at `
parent:
`
The keys containing the values to be imported can be specified in the parent chart's requirements.yaml using
a YAML list. Each item in the list is a key which is imported from the child chart's `
exports
` field.
To import values not contained in the `
exports
` key, use the [child/parent](#using-the-child/parent-format) format.
##### Using the exports format
If a child chart's values.yaml contains an `
exports
` field at the root, it's contents may be imported
directly into the parent's values by specifying the keys to import as in the example below:
````
# parent's requirements.yaml
...
import-values:
- data
````
````
# child's values.yaml
...
exports:
data:
myint: 99
````
Since we are specifying the key `
data
` in our import list, Helm looks in the the `
exports
` field of the child
chart for `
data
` key and imports its contents.
The final parent values would contain our exported field:
````
# parent's values
...
myint: 99
````
Please note the parent key `
data
` is not contained in the parent's final values. If you need to specify the
parent key, use the 'child/parent' format.
##### Using the child/parent format
To access values that are not contained in the `
exports
` key of the child chart's values, you will need to
specify the source key of the values to be imported (`
child
`) and the destination path in the parent chart's
values (`
parent
`).
The `
import-values
` in the example below instructs Helm to take any values found at `
child:
` path and copy them
to the parent's values at the path specified in `
parent:
`
````
# parent's requirements.yaml
...
...
@@ -332,7 +377,7 @@ to the `myimports` key in the parent chart's values as detailed below:
myimports:
myint: 0
mybool: false
mystring: "helm rocks"
mystring: "helm rocks
!
"
````
...
...
@@ -353,47 +398,12 @@ The parent chart's resulting values would be:
myimports:
myint: 999
mybool: true
mystring: "helm rocks"
mystring: "helm rocks
!
"
````
The parent's final values now contains the `
myint
` and `
mybool
` fields imported from subchart1.
##### Using the exports convention
If a values.yaml contains an `
exports
` field at the root, it's contents may be imported
directly into the parent's values by using a simple string format as in the example below:
````
# parent's requirements.yaml
...
import-values:
- data
````
````
# child values
...
exports:
data:
myint:99
````
Since we are using the simple string `
data
` in our import list, Helm looks in the the `
exports
`
field of the child chart for `
data
` key and imports its contents.
The final parent values would contain our exported field.
````
# parent's values
...
myint: 99
````
Please note the parent key `
data
` is not contained in the parent's final values. If
you need to specify the parent key, use the 'child/parent' format.
## Templates and Values
Helm Chart templates are written in the
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment