mirror of
https://github.com/helmfile/helmfile.git
synced 2026-10-08 00:51:39 +02:00
@@ -175,8 +175,6 @@ releases:
|
||||
error: ``,
|
||||
selectors: []string{"app=test"},
|
||||
diffed: []exectest.Release{
|
||||
// TODO: Turned out we can't differentiate needs vs transitive needs in this case :thinking:
|
||||
{Name: "logging", Flags: []string{"--kube-context", "default", "--namespace", "kube-system", "--reset-values"}},
|
||||
{Name: "kubernetes-external-secrets", Flags: []string{"--kube-context", "default", "--namespace", "kube-system", "--reset-values"}},
|
||||
{Name: "external-secrets", Flags: []string{"--kube-context", "default", "--namespace", "default", "--reset-values"}},
|
||||
{Name: "my-release", Flags: []string{"--kube-context", "default", "--namespace", "default", "--reset-values"}},
|
||||
|
||||
@@ -199,8 +199,6 @@ releases:
|
||||
error: ``,
|
||||
selectors: []string{"app=test"},
|
||||
linted: []exectest.Release{
|
||||
// TODO: Turned out we can't differentiate needs vs transitive needs in this case :thinking:
|
||||
{Name: "logging", Flags: []string{"--namespace", "kube-system"}},
|
||||
{Name: "kubernetes-external-secrets", Flags: []string{"--namespace", "kube-system"}},
|
||||
{Name: "external-secrets", Flags: []string{"--namespace", "default"}},
|
||||
{Name: "my-release", Flags: []string{"--namespace", "default"}},
|
||||
@@ -217,6 +215,8 @@ releases:
|
||||
error: ``,
|
||||
selectors: []string{"app=test"},
|
||||
linted: []exectest.Release{
|
||||
// logging is a transitive dependency of kubernetes-external-secrets
|
||||
// kubernetes-external-secrets -> external-secrets -> my-release
|
||||
{Name: "logging", Flags: []string{"--namespace", "kube-system"}},
|
||||
{Name: "kubernetes-external-secrets", Flags: []string{"--namespace", "kube-system"}},
|
||||
{Name: "external-secrets", Flags: []string{"--namespace", "default"}},
|
||||
|
||||
@@ -231,7 +231,6 @@ releases:
|
||||
},
|
||||
selectors: []string{"app=test"},
|
||||
unittested: []exectest.Release{
|
||||
{Name: "logging", Flags: []string{"--namespace", "kube-system", "--file", "tests/logging/*_test.yaml"}},
|
||||
{Name: "kubernetes-external-secrets", Flags: []string{"--namespace", "kube-system", "--file", "tests/secrets/*_test.yaml"}},
|
||||
{Name: "external-secrets", Flags: []string{"--namespace", "default", "--file", "tests/external/*_test.yaml"}},
|
||||
{Name: "my-release", Flags: []string{"--namespace", "default", "--file", "tests/myrelease/*_test.yaml"}},
|
||||
|
||||
+7
-9
@@ -2,14 +2,12 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
2 release(s) matching app=test found in helmfile.yaml
|
||||
|
||||
processing 4 groups of releases in this order:
|
||||
processing 3 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/logging
|
||||
2 default/kube-system/kubernetes-external-secrets
|
||||
3 default/default/external-secrets
|
||||
4 default/default/my-release
|
||||
1 default/kube-system/kubernetes-external-secrets
|
||||
2 default/default/external-secrets
|
||||
3 default/default/my-release
|
||||
|
||||
processing releases in group 1/4: default/kube-system/logging
|
||||
processing releases in group 2/4: default/kube-system/kubernetes-external-secrets
|
||||
processing releases in group 3/4: default/default/external-secrets
|
||||
processing releases in group 4/4: default/default/my-release
|
||||
processing releases in group 1/3: default/kube-system/kubernetes-external-secrets
|
||||
processing releases in group 2/3: default/default/external-secrets
|
||||
processing releases in group 3/3: default/default/my-release
|
||||
|
||||
+5
-10
@@ -2,16 +2,11 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
1 release(s) matching name=test3 found in helmfile.yaml
|
||||
|
||||
processing 3 groups of releases in this order:
|
||||
processing 2 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/disabled
|
||||
2 default//test2
|
||||
3 default//test3
|
||||
1 default//test2
|
||||
2 default//test3
|
||||
|
||||
processing releases in group 1/3: default/kube-system/disabled
|
||||
processing releases in group 2/3: default//test2
|
||||
processing releases in group 3/3: default//test3
|
||||
processing releases in group 1/2: default//test2
|
||||
processing releases in group 2/2: default//test3
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
Affected releases are:
|
||||
disabled (incubator/raw) DELETED
|
||||
|
||||
|
||||
+5
-10
@@ -2,16 +2,11 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
1 release(s) matching name=test3 found in helmfile.yaml
|
||||
|
||||
processing 3 groups of releases in this order:
|
||||
processing 2 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/disabled
|
||||
2 default//test2
|
||||
3 default//test3
|
||||
1 default//test2
|
||||
2 default//test3
|
||||
|
||||
processing releases in group 1/3: default/kube-system/disabled
|
||||
processing releases in group 2/3: default//test2
|
||||
processing releases in group 3/3: default//test3
|
||||
processing releases in group 1/2: default//test2
|
||||
processing releases in group 2/2: default//test3
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
Affected releases are:
|
||||
disabled (incubator/raw) DELETED
|
||||
|
||||
|
||||
Vendored
+5
-10
@@ -2,16 +2,11 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
1 release(s) matching name=test3 found in helmfile.yaml
|
||||
|
||||
processing 3 groups of releases in this order:
|
||||
processing 2 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/disabled
|
||||
2 default//test2
|
||||
3 default//test3
|
||||
1 default//test2
|
||||
2 default//test3
|
||||
|
||||
processing releases in group 1/3: default/kube-system/disabled
|
||||
processing releases in group 2/3: default//test2
|
||||
processing releases in group 3/3: default//test3
|
||||
processing releases in group 1/2: default//test2
|
||||
processing releases in group 2/2: default//test3
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
Affected releases are:
|
||||
disabled (incubator/raw) DELETED
|
||||
|
||||
|
||||
+9
-9
@@ -2,14 +2,14 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
2 release(s) matching app=test found in helmfile.yaml
|
||||
|
||||
processing 4 groups of releases in this order:
|
||||
processing 3 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/logging
|
||||
2 default/kube-system/kubernetes-external-secrets
|
||||
3 default/default/external-secrets
|
||||
4 default/default/my-release
|
||||
1 default/kube-system/kubernetes-external-secrets
|
||||
2 default/default/external-secrets
|
||||
3 default/default/my-release
|
||||
|
||||
processing releases in group 1/3: default/kube-system/kubernetes-external-secrets
|
||||
processing releases in group 2/3: default/default/external-secrets
|
||||
processing releases in group 3/3: default/default/my-release
|
||||
|
||||
|
||||
processing releases in group 1/4: default/kube-system/logging
|
||||
processing releases in group 2/4: default/kube-system/kubernetes-external-secrets
|
||||
processing releases in group 3/4: default/default/external-secrets
|
||||
processing releases in group 4/4: default/default/my-release
|
||||
|
||||
+5
-7
@@ -2,12 +2,10 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
1 release(s) matching name=test3 found in helmfile.yaml
|
||||
|
||||
processing 3 groups of releases in this order:
|
||||
processing 2 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/disabled
|
||||
2 default//test2
|
||||
3 default//test3
|
||||
1 default//test2
|
||||
2 default//test3
|
||||
|
||||
processing releases in group 1/3: default/kube-system/disabled
|
||||
processing releases in group 2/3: default//test2
|
||||
processing releases in group 3/3: default//test3
|
||||
processing releases in group 1/2: default//test2
|
||||
processing releases in group 2/2: default//test3
|
||||
|
||||
+5
-7
@@ -2,12 +2,10 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
1 release(s) matching name=test3 found in helmfile.yaml
|
||||
|
||||
processing 3 groups of releases in this order:
|
||||
processing 2 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/disabled
|
||||
2 default//test2
|
||||
3 default//test3
|
||||
1 default//test2
|
||||
2 default//test3
|
||||
|
||||
processing releases in group 1/3: default/kube-system/disabled
|
||||
processing releases in group 2/3: default//test2
|
||||
processing releases in group 3/3: default//test3
|
||||
processing releases in group 1/2: default//test2
|
||||
processing releases in group 2/2: default//test3
|
||||
|
||||
Vendored
+5
-7
@@ -2,12 +2,10 @@ merged environment: &{default map[] map[] map[]}
|
||||
WARNING: release test2 needs disabled, but disabled is not installed due to installed: false. Either mark disabled as installed or remove disabled from test2's needs
|
||||
1 release(s) matching name=test3 found in helmfile.yaml
|
||||
|
||||
processing 3 groups of releases in this order:
|
||||
processing 2 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/disabled
|
||||
2 default//test2
|
||||
3 default//test3
|
||||
1 default//test2
|
||||
2 default//test3
|
||||
|
||||
processing releases in group 1/3: default/kube-system/disabled
|
||||
processing releases in group 2/3: default//test2
|
||||
processing releases in group 3/3: default//test3
|
||||
processing releases in group 1/2: default//test2
|
||||
processing releases in group 2/2: default//test3
|
||||
|
||||
+7
-9
@@ -1,14 +1,12 @@
|
||||
merged environment: &{default map[] map[] map[]}
|
||||
2 release(s) matching app=test found in helmfile.yaml
|
||||
|
||||
processing 4 groups of releases in this order:
|
||||
processing 3 groups of releases in this order:
|
||||
GROUP RELEASES
|
||||
1 default/kube-system/logging
|
||||
2 default/kube-system/kubernetes-external-secrets
|
||||
3 default/default/external-secrets
|
||||
4 default/default/my-release
|
||||
1 default/kube-system/kubernetes-external-secrets
|
||||
2 default/default/external-secrets
|
||||
3 default/default/my-release
|
||||
|
||||
processing releases in group 1/4: default/kube-system/logging
|
||||
processing releases in group 2/4: default/kube-system/kubernetes-external-secrets
|
||||
processing releases in group 3/4: default/default/external-secrets
|
||||
processing releases in group 4/4: default/default/my-release
|
||||
processing releases in group 1/3: default/kube-system/kubernetes-external-secrets
|
||||
processing releases in group 2/3: default/default/external-secrets
|
||||
processing releases in group 3/3: default/default/my-release
|
||||
|
||||
+2
-6
@@ -3108,12 +3108,8 @@ func collectNeedsWithTransitives(release ReleaseSpec, allReleases []ReleaseSpec,
|
||||
}
|
||||
}
|
||||
needsWithTranstives[id] = struct{}{}
|
||||
releaseParts := strings.Split(id, "/")
|
||||
releaseName := releaseParts[len(releaseParts)-1]
|
||||
for _, r := range allReleases {
|
||||
if r.Name == releaseName {
|
||||
collectNeedsWithTransitives(r, allReleases, needsWithTranstives)
|
||||
}
|
||||
if needRelease, exists := allReleasesMap[id]; exists {
|
||||
collectNeedsWithTransitives(*needRelease, allReleases, needsWithTranstives)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -160,7 +160,11 @@ func GroupReleasesByDependency(releases []Release, opts PlanOptions) ([][]Releas
|
||||
var needs []string
|
||||
for i := 0; i < len(r.Needs); i++ {
|
||||
n := r.Needs[i]
|
||||
if _, exists := unfilteredIDs[n]; exists {
|
||||
if opts.IncludeNeeds || opts.IncludeTransitiveNeeds {
|
||||
if _, exists := unfilteredIDs[n]; exists {
|
||||
needs = append(needs, n)
|
||||
}
|
||||
} else {
|
||||
needs = append(needs, n)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user