mirror of
https://github.com/helm/helm.git
synced 2026-05-28 04:35:48 -04:00
Merge pull request #1025 from technosophos/fix/1024-missing-values
fix(helm): fix inspect command to not panic
This commit is contained in:
commit
cc2c1d9393
5 changed files with 62 additions and 5 deletions
|
|
@ -130,11 +130,10 @@ func (i *inspectCmd) run() error {
|
|||
fmt.Fprintln(i.out, string(cf))
|
||||
}
|
||||
|
||||
if i.output == both {
|
||||
fmt.Fprintln(i.out, "---")
|
||||
}
|
||||
|
||||
if i.output == valuesOnly || i.output == both {
|
||||
if (i.output == valuesOnly || i.output == both) && chrt.Values != nil {
|
||||
if i.output == both {
|
||||
fmt.Fprintln(i.out, "---")
|
||||
}
|
||||
fmt.Fprintln(i.out, chrt.Values.Raw)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -61,4 +61,17 @@ func TestInspect(t *testing.T) {
|
|||
t.Errorf("Expected\n%q\nGot\n%q\n", expect[i], got)
|
||||
}
|
||||
}
|
||||
|
||||
// Regression tests for missing values. See issue #1024.
|
||||
b.Reset()
|
||||
insp = &inspectCmd{
|
||||
chartpath: "testdata/testcharts/novals",
|
||||
output: "values",
|
||||
out: b,
|
||||
}
|
||||
insp.run()
|
||||
if b.Len() != 0 {
|
||||
t.Errorf("expected empty values buffer, got %q", b.String())
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
6
cmd/helm/testdata/testcharts/novals/Chart.yaml
vendored
Normal file
6
cmd/helm/testdata/testcharts/novals/Chart.yaml
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
description: Deploy a basic Alpine Linux pod
|
||||
home: https://k8s.io/helm
|
||||
name: novals
|
||||
sources:
|
||||
- https://github.com/kubernetes/helm
|
||||
version: 0.2.0
|
||||
13
cmd/helm/testdata/testcharts/novals/README.md
vendored
Normal file
13
cmd/helm/testdata/testcharts/novals/README.md
vendored
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
#Alpine: A simple Helm chart
|
||||
|
||||
Run a single pod of Alpine Linux.
|
||||
|
||||
This example was generated using the command `helm create alpine`.
|
||||
|
||||
The `templates/` directory contains a very simple pod resource with a
|
||||
couple of parameters.
|
||||
|
||||
The `values.yaml` file contains the default values for the
|
||||
`alpine-pod.yaml` template.
|
||||
|
||||
You can install this example using `helm install docs/examples/alpine`.
|
||||
26
cmd/helm/testdata/testcharts/novals/templates/alpine-pod.yaml
vendored
Normal file
26
cmd/helm/testdata/testcharts/novals/templates/alpine-pod.yaml
vendored
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: "{{.Release.Name}}-{{.Values.Name}}"
|
||||
labels:
|
||||
# The "heritage" label is used to track which tool deployed a given chart.
|
||||
# It is useful for admins who want to see what releases a particular tool
|
||||
# is responsible for.
|
||||
heritage: {{.Release.Service | quote }}
|
||||
# The "release" convention makes it easy to tie a release to all of the
|
||||
# Kubernetes resources that were created as part of that release.
|
||||
release: {{.Release.Name | quote }}
|
||||
# This makes it easy to audit chart usage.
|
||||
chart: "{{.Chart.Name}}-{{.Chart.Version}}"
|
||||
annotations:
|
||||
"helm.sh/created": {{.Release.Time.Seconds | quote }}
|
||||
spec:
|
||||
# This shows how to use a simple value. This will look for a passed-in value
|
||||
# called restartPolicy. If it is not found, it will use the default value.
|
||||
# {{default "Never" .restartPolicy}} is a slightly optimized version of the
|
||||
# more conventional syntax: {{.restartPolicy | default "Never"}}
|
||||
restartPolicy: {{default "Never" .Values.restartPolicy}}
|
||||
containers:
|
||||
- name: waiter
|
||||
image: "alpine:3.3"
|
||||
command: ["/bin/sleep","9000"]
|
||||
Loading…
Reference in a new issue