mirror of https://github.com/helm/helm
commit
2b796ddade
@ -0,0 +1,12 @@
|
|||||||
|
To add your organization to this list, simply add your organization's name,
|
||||||
|
optionally with a link. The list is in alphabetical order.
|
||||||
|
|
||||||
|
# Organizations Using Helm
|
||||||
|
|
||||||
|
- [Blood Orange](https://bloodorange.io)
|
||||||
|
- [Microsoft](https://microsoft.com)
|
||||||
|
- [IBM](https://www.ibm.com)
|
||||||
|
- [Qovery](https://www.qovery.com/)
|
||||||
|
- [Samsung SDS](https://www.samsungsds.com/)
|
||||||
|
[Ville de Montreal](https://montreal.ca)
|
||||||
|
_This file is part of the CNCF official documentation for projects._
|
@ -0,0 +1,3 @@
|
|||||||
|
# Helm Security Reporting and Policy
|
||||||
|
|
||||||
|
The Helm project has [a common process and policy that can be found here](https://github.com/helm/community/blob/master/SECURITY.md).
|
@ -0,0 +1,88 @@
|
|||||||
|
/*
|
||||||
|
Copyright The Helm Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"helm.sh/helm/v3/pkg/chart"
|
||||||
|
"helm.sh/helm/v3/pkg/release"
|
||||||
|
helmtime "helm.sh/helm/v3/pkg/time"
|
||||||
|
)
|
||||||
|
|
||||||
|
func outputFlagCompletionTest(t *testing.T, cmdName string) {
|
||||||
|
releasesMockWithStatus := func(info *release.Info, hooks ...*release.Hook) []*release.Release {
|
||||||
|
info.LastDeployed = helmtime.Unix(1452902400, 0).UTC()
|
||||||
|
return []*release.Release{{
|
||||||
|
Name: "athos",
|
||||||
|
Namespace: "default",
|
||||||
|
Info: info,
|
||||||
|
Chart: &chart.Chart{},
|
||||||
|
Hooks: hooks,
|
||||||
|
}, {
|
||||||
|
Name: "porthos",
|
||||||
|
Namespace: "default",
|
||||||
|
Info: info,
|
||||||
|
Chart: &chart.Chart{},
|
||||||
|
Hooks: hooks,
|
||||||
|
}, {
|
||||||
|
Name: "aramis",
|
||||||
|
Namespace: "default",
|
||||||
|
Info: info,
|
||||||
|
Chart: &chart.Chart{},
|
||||||
|
Hooks: hooks,
|
||||||
|
}, {
|
||||||
|
Name: "dartagnan",
|
||||||
|
Namespace: "gascony",
|
||||||
|
Info: info,
|
||||||
|
Chart: &chart.Chart{},
|
||||||
|
Hooks: hooks,
|
||||||
|
}}
|
||||||
|
}
|
||||||
|
|
||||||
|
tests := []cmdTestCase{{
|
||||||
|
name: "completion for output flag long and before arg",
|
||||||
|
cmd: fmt.Sprintf("__complete %s --output ''", cmdName),
|
||||||
|
golden: "output/output-comp.txt",
|
||||||
|
rels: releasesMockWithStatus(&release.Info{
|
||||||
|
Status: release.StatusDeployed,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
name: "completion for output flag long and after arg",
|
||||||
|
cmd: fmt.Sprintf("__complete %s aramis --output ''", cmdName),
|
||||||
|
golden: "output/output-comp.txt",
|
||||||
|
rels: releasesMockWithStatus(&release.Info{
|
||||||
|
Status: release.StatusDeployed,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
name: "completion for output flag short and before arg",
|
||||||
|
cmd: fmt.Sprintf("__complete %s -o ''", cmdName),
|
||||||
|
golden: "output/output-comp.txt",
|
||||||
|
rels: releasesMockWithStatus(&release.Info{
|
||||||
|
Status: release.StatusDeployed,
|
||||||
|
}),
|
||||||
|
}, {
|
||||||
|
name: "completion for output flag short and after arg",
|
||||||
|
cmd: fmt.Sprintf("__complete %s aramis -o ''", cmdName),
|
||||||
|
golden: "output/output-comp.txt",
|
||||||
|
rels: releasesMockWithStatus(&release.Info{
|
||||||
|
Status: release.StatusDeployed,
|
||||||
|
}),
|
||||||
|
}}
|
||||||
|
runTestCmd(t, tests)
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
Copyright The Helm Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestLintCmdWithSubchartsFlag(t *testing.T) {
|
||||||
|
testChart := "testdata/testcharts/chart-with-bad-subcharts"
|
||||||
|
tests := []cmdTestCase{{
|
||||||
|
name: "lint good chart with bad subcharts",
|
||||||
|
cmd: fmt.Sprintf("lint %s", testChart),
|
||||||
|
golden: "output/lint-chart-with-bad-subcharts.txt",
|
||||||
|
wantError: false,
|
||||||
|
}, {
|
||||||
|
name: "lint good chart with bad subcharts using --with-subcharts flag",
|
||||||
|
cmd: fmt.Sprintf("lint --with-subcharts %s", testChart),
|
||||||
|
golden: "output/lint-chart-with-bad-subcharts-with-subcharts.txt",
|
||||||
|
wantError: true,
|
||||||
|
}}
|
||||||
|
runTestCmd(t, tests)
|
||||||
|
}
|
@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
Copyright The Helm Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestRepoListOutputCompletion(t *testing.T) {
|
||||||
|
outputFlagCompletionTest(t, "repo list")
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
WARNING: This chart is deprecated
|
||||||
|
NAME: aeneas
|
||||||
|
LAST DEPLOYED: Fri Sep 2 22:04:05 1977
|
||||||
|
NAMESPACE: default
|
||||||
|
STATUS: deployed
|
||||||
|
REVISION: 1
|
||||||
|
TEST SUITE: None
|
@ -0,0 +1,16 @@
|
|||||||
|
==> Linting testdata/testcharts/chart-with-bad-subcharts
|
||||||
|
[INFO] Chart.yaml: icon is recommended
|
||||||
|
[WARNING] templates/: directory not found
|
||||||
|
|
||||||
|
==> Linting testdata/testcharts/chart-with-bad-subcharts/charts/bad-subchart
|
||||||
|
[ERROR] Chart.yaml: name is required
|
||||||
|
[ERROR] Chart.yaml: apiVersion is required. The value must be either "v1" or "v2"
|
||||||
|
[ERROR] Chart.yaml: version is required
|
||||||
|
[INFO] Chart.yaml: icon is recommended
|
||||||
|
[WARNING] templates/: directory not found
|
||||||
|
|
||||||
|
==> Linting testdata/testcharts/chart-with-bad-subcharts/charts/good-subchart
|
||||||
|
[INFO] Chart.yaml: icon is recommended
|
||||||
|
[WARNING] templates/: directory not found
|
||||||
|
|
||||||
|
Error: 3 chart(s) linted, 1 chart(s) failed
|
@ -0,0 +1,5 @@
|
|||||||
|
==> Linting testdata/testcharts/chart-with-bad-subcharts
|
||||||
|
[INFO] Chart.yaml: icon is recommended
|
||||||
|
[WARNING] templates/: directory not found
|
||||||
|
|
||||||
|
1 chart(s) linted, 0 chart(s) failed
|
@ -0,0 +1,2 @@
|
|||||||
|
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
|
||||||
|
starlord milano 2 2016-01-16 00:00:01 +0000 UTC deployed chickadee-1.0.0 0.0.1
|
@ -0,0 +1,191 @@
|
|||||||
|
---
|
||||||
|
# Source: object-order/templates/01-a.yml
|
||||||
|
# 1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
metadata:
|
||||||
|
name: first
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/01-a.yml
|
||||||
|
# 2
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: second
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/01-a.yml
|
||||||
|
# 3
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: third
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 5
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: fifth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 7
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: seventh
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 8
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: eighth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 9
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: ninth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 10
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: tenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 11
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: eleventh
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 12
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: twelfth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 13
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: thirteenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 14
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: fourteenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 15 (11th object within 02-b.yml, in order to test `SplitManifests` which assigns `manifest-10`
|
||||||
|
# to this object which should then come *after* `manifest-9`)
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: fifteenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/01-a.yml
|
||||||
|
# 4 (Deployment should come after all NetworkPolicy manifests, since 'helm template' outputs in install order)
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: fourth
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
pod: fourth
|
||||||
|
replicas: 1
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
pod: fourth
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: hello-world
|
||||||
|
image: gcr.io/google-samples/node-hello:1.0
|
||||||
|
---
|
||||||
|
# Source: object-order/templates/02-b.yml
|
||||||
|
# 6 (implementation detail: currently, 'helm template' outputs hook manifests last; and yes, NetworkPolicy won't make a reasonable hook, this is just a dummy unit test manifest)
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
"helm.sh/hook": pre-install
|
||||||
|
name: sixth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
@ -0,0 +1,4 @@
|
|||||||
|
table
|
||||||
|
json
|
||||||
|
yaml
|
||||||
|
:0
|
@ -0,0 +1,5 @@
|
|||||||
|
8
|
||||||
|
9
|
||||||
|
10
|
||||||
|
11
|
||||||
|
:0
|
@ -0,0 +1 @@
|
|||||||
|
:4
|
@ -1,2 +0,0 @@
|
|||||||
NAME CHART VERSION APP VERSION DESCRIPTION
|
|
||||||
testing/mariadb 0.3.0 Chart for MariaDB
|
|
@ -0,0 +1,3 @@
|
|||||||
|
aramis
|
||||||
|
athos
|
||||||
|
:4
|
@ -1,9 +0,0 @@
|
|||||||
NAME: flummoxed-chickadee
|
|
||||||
LAST DEPLOYED: 2016-01-16 00:00:00 +0000 UTC
|
|
||||||
NAMESPACE: default
|
|
||||||
STATUS: deployed
|
|
||||||
|
|
||||||
RESOURCES:
|
|
||||||
resource A
|
|
||||||
resource B
|
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
:4
|
@ -1,10 +0,0 @@
|
|||||||
info:
|
|
||||||
deleted: "0001-01-01T00:00:00Z"
|
|
||||||
first_deployed: "0001-01-01T00:00:00Z"
|
|
||||||
last_deployed: "2016-01-16T00:00:00Z"
|
|
||||||
resources: |
|
|
||||||
resource A
|
|
||||||
resource B
|
|
||||||
status: deployed
|
|
||||||
name: flummoxed-chickadee
|
|
||||||
namespace: default
|
|
@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
# Source: subchart1/templates/service.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: subchart1
|
||||||
|
labels:
|
||||||
|
helm.sh/chart: "subchart1-0.1.0"
|
||||||
|
app.kubernetes.io/instance: "RELEASE-NAME"
|
||||||
|
kube-version/major: "1"
|
||||||
|
kube-version/minor: "16"
|
||||||
|
kube-version/version: "v1.16.0"
|
||||||
|
kube-api-version/test: v1
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
name: nginx
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: subchart1
|
||||||
|
---
|
||||||
|
# Source: subchart1/charts/subcharta/templates/service.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: subcharta
|
||||||
|
labels:
|
||||||
|
helm.sh/chart: "subcharta-0.1.0"
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
name: apache
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: subcharta
|
@ -0,0 +1,22 @@
|
|||||||
|
---
|
||||||
|
# Source: subchart1/templates/service.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: subchart1
|
||||||
|
labels:
|
||||||
|
helm.sh/chart: "subchart1-0.1.0"
|
||||||
|
app.kubernetes.io/instance: "RELEASE-NAME"
|
||||||
|
kube-version/major: "1"
|
||||||
|
kube-version/minor: "16"
|
||||||
|
kube-version/version: "v1.16.0"
|
||||||
|
kube-api-version/test: v1
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
name: nginx
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: subchart1
|
@ -0,0 +1,72 @@
|
|||||||
|
---
|
||||||
|
# Source: crds/crdA.yaml
|
||||||
|
apiVersion: apiextensions.k8s.io/v1beta1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: testCRDs
|
||||||
|
spec:
|
||||||
|
group: testCRDGroups
|
||||||
|
names:
|
||||||
|
kind: TestCRD
|
||||||
|
listKind: TestCRDList
|
||||||
|
plural: TestCRDs
|
||||||
|
shortNames:
|
||||||
|
- tc
|
||||||
|
singular: authconfig
|
||||||
|
|
||||||
|
---
|
||||||
|
# Source: subchart1/charts/subcharta/templates/service.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: subcharta
|
||||||
|
labels:
|
||||||
|
helm.sh/chart: "subcharta-0.1.0"
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
name: apache
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: subcharta
|
||||||
|
---
|
||||||
|
# Source: subchart1/charts/subchartb/templates/service.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: subchartb
|
||||||
|
labels:
|
||||||
|
helm.sh/chart: "subchartb-0.1.0"
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
name: nginx
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: subchartb
|
||||||
|
---
|
||||||
|
# Source: subchart1/templates/service.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: subchart1
|
||||||
|
labels:
|
||||||
|
helm.sh/chart: "subchart1-0.1.0"
|
||||||
|
app.kubernetes.io/instance: "RELEASE-NAME"
|
||||||
|
kube-version/major: "1"
|
||||||
|
kube-version/minor: "16"
|
||||||
|
kube-version/version: "v1.16.0"
|
||||||
|
kube-api-version/test: v1
|
||||||
|
spec:
|
||||||
|
type: ClusterIP
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
protocol: TCP
|
||||||
|
name: nginx
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: subchart1
|
@ -1 +1 @@
|
|||||||
version.BuildInfo{Version:"v3.0+unreleased", GitCommit:"", GitTreeState:"", GoVersion:""}
|
version.BuildInfo{Version:"v3.1", GitCommit:"", GitTreeState:"", GoVersion:""}
|
||||||
|
@ -1 +1 @@
|
|||||||
version.BuildInfo{Version:"v3.0+unreleased", GitCommit:"", GitTreeState:"", GoVersion:""}
|
version.BuildInfo{Version:"v3.1", GitCommit:"", GitTreeState:"", GoVersion:""}
|
||||||
|
@ -1 +1 @@
|
|||||||
v3.0+unreleased
|
v3.1
|
||||||
|
@ -1 +1 @@
|
|||||||
Version: v3.0+unreleased
|
Version: v3.1
|
@ -1 +1 @@
|
|||||||
version.BuildInfo{Version:"v3.0+unreleased", GitCommit:"", GitTreeState:"", GoVersion:""}
|
version.BuildInfo{Version:"v3.1", GitCommit:"", GitTreeState:"", GoVersion:""}
|
||||||
|
@ -0,0 +1,4 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
description: Chart with bad subcharts
|
||||||
|
name: chart-with-bad-subcharts
|
||||||
|
version: 0.0.1
|
@ -0,0 +1 @@
|
|||||||
|
description: Bad subchart
|
@ -0,0 +1,4 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
description: Good subchart
|
||||||
|
name: good-subchart
|
||||||
|
version: 0.0.1
|
@ -0,0 +1,5 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: good-subchart
|
||||||
|
version: 0.0.1
|
||||||
|
- name: bad-subchart
|
||||||
|
version: 0.0.1
|
@ -0,0 +1,8 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
description: Deprecated testing chart
|
||||||
|
home: https://helm.sh/helm
|
||||||
|
name: deprecated
|
||||||
|
sources:
|
||||||
|
- https://github.com/helm/helm
|
||||||
|
version: 0.1.0
|
||||||
|
deprecated: true
|
@ -0,0 +1,3 @@
|
|||||||
|
#Deprecated
|
||||||
|
|
||||||
|
This space intentionally left blank.
|
@ -0,0 +1,22 @@
|
|||||||
|
# Patterns to ignore when building packages.
|
||||||
|
# This supports shell glob matching, relative path matching, and
|
||||||
|
# negation (prefixed with !). Only one pattern per line.
|
||||||
|
.DS_Store
|
||||||
|
# Common VCS dirs
|
||||||
|
.git/
|
||||||
|
.gitignore
|
||||||
|
.bzr/
|
||||||
|
.bzrignore
|
||||||
|
.hg/
|
||||||
|
.hgignore
|
||||||
|
.svn/
|
||||||
|
# Common backup files
|
||||||
|
*.swp
|
||||||
|
*.bak
|
||||||
|
*.tmp
|
||||||
|
*~
|
||||||
|
# Various IDEs
|
||||||
|
.project
|
||||||
|
.idea/
|
||||||
|
*.tmproj
|
||||||
|
.vscode/
|
@ -0,0 +1,5 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
appVersion: "1.0"
|
||||||
|
description: A Helm chart for Kubernetes
|
||||||
|
name: issue-7233
|
||||||
|
version: 0.1.0
|
@ -0,0 +1,6 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: alpine
|
||||||
|
repository: file://../alpine
|
||||||
|
version: 0.1.0
|
||||||
|
digest: sha256:7b380b1a826e7be1eecb089f66209d6d3df54be4bf879d4a8e6f8a9e871710e5
|
||||||
|
generated: "2020-01-31T11:30:21.911547651Z"
|
@ -0,0 +1,4 @@
|
|||||||
|
dependencies:
|
||||||
|
- name: alpine
|
||||||
|
version: 0.1.0
|
||||||
|
repository: file://../alpine
|
@ -0,0 +1,7 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: {{ .Release.Name }}-configmap
|
||||||
|
data:
|
||||||
|
myvalue: "Hello World"
|
||||||
|
drink: {{ .Values.favoriteDrink }}
|
@ -0,0 +1 @@
|
|||||||
|
favoriteDrink: coffee
|
@ -0,0 +1,5 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: object-order
|
||||||
|
description: Test ordering of manifests in output
|
||||||
|
type: application
|
||||||
|
version: 0.1.0
|
@ -0,0 +1,57 @@
|
|||||||
|
# 1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
metadata:
|
||||||
|
name: first
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 2
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: second
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 3
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: third
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 4 (Deployment should come after all NetworkPolicy manifests, since 'helm template' outputs in install order)
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: fourth
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
pod: fourth
|
||||||
|
replicas: 1
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
pod: fourth
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: hello-world
|
||||||
|
image: gcr.io/google-samples/node-hello:1.0
|
@ -0,0 +1,143 @@
|
|||||||
|
# 5
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: fifth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 6 (implementation detail: currently, 'helm template' outputs hook manifests last; and yes, NetworkPolicy won't make a reasonable hook, this is just a dummy unit test manifest)
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
"helm.sh/hook": pre-install
|
||||||
|
name: sixth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 7
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: seventh
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 8
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: eighth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 9
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: ninth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 10
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: tenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 11
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: eleventh
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 12
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: twelfth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 13
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: thirteenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 14
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: fourteenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 15 (11th object within 02-b.yml, in order to test `SplitManifests` which assigns `manifest-10`
|
||||||
|
# to this object which should then come *after* `manifest-9`)
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: NetworkPolicy
|
||||||
|
metadata:
|
||||||
|
name: fifteenth
|
||||||
|
spec:
|
||||||
|
podSelector: {}
|
||||||
|
policyTypes:
|
||||||
|
- Egress
|
||||||
|
- Ingress
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue