Revert "cleanup: remove all about v0.x" (#1918)
Revert "cleanup: remove all about v0.x (#1903)"
This reverts commit d7bcd5e998.
Signed-off-by: yxxhero <aiopsclub@163.com>
			
			
This commit is contained in:
		
							parent
							
								
									6cb42d1416
								
							
						
					
					
						commit
						63e2684ade
					
				|  | @ -59,6 +59,7 @@ jobs: | ||||||
|             plugin-secrets-version: 3.15.0 |             plugin-secrets-version: 3.15.0 | ||||||
|             plugin-diff-version: 3.8.1 |             plugin-diff-version: 3.8.1 | ||||||
|             extra-helmfile-flags: '' |             extra-helmfile-flags: '' | ||||||
|  |             v1mode: '' | ||||||
|           - helm-version: v3.16.4 |           - helm-version: v3.16.4 | ||||||
|             kustomize-version: v5.4.3 |             kustomize-version: v5.4.3 | ||||||
|             # We assume that the helm-secrets plugin is supposed to |             # We assume that the helm-secrets plugin is supposed to | ||||||
|  | @ -69,16 +70,26 @@ jobs: | ||||||
|             plugin-secrets-version: 4.6.0 |             plugin-secrets-version: 4.6.0 | ||||||
|             plugin-diff-version: 3.9.14 |             plugin-diff-version: 3.9.14 | ||||||
|             extra-helmfile-flags: '' |             extra-helmfile-flags: '' | ||||||
|  |             v1mode: '' | ||||||
|           - helm-version: v3.17.0 |           - helm-version: v3.17.0 | ||||||
|             kustomize-version: v5.2.1 |             kustomize-version: v5.2.1 | ||||||
|             plugin-secrets-version: 3.15.0 |             plugin-secrets-version: 3.15.0 | ||||||
|             plugin-diff-version: 3.8.1 |             plugin-diff-version: 3.8.1 | ||||||
|             extra-helmfile-flags: '' |             extra-helmfile-flags: '' | ||||||
|  |             v1mode: '' | ||||||
|           - helm-version: v3.17.0 |           - helm-version: v3.17.0 | ||||||
|             kustomize-version: v5.4.3 |             kustomize-version: v5.4.3 | ||||||
|             plugin-secrets-version: 4.6.0 |             plugin-secrets-version: 4.6.0 | ||||||
|             plugin-diff-version: 3.9.14 |             plugin-diff-version: 3.9.14 | ||||||
|             extra-helmfile-flags: '' |             extra-helmfile-flags: '' | ||||||
|  |             v1mode: '' | ||||||
|  |           # Helmfile v1 | ||||||
|  |           - helm-version: v3.17.0 | ||||||
|  |             kustomize-version: v5.4.3 | ||||||
|  |             plugin-secrets-version: 4.6.0 | ||||||
|  |             plugin-diff-version: 3.9.14 | ||||||
|  |             extra-helmfile-flags: '' | ||||||
|  |             v1mode: 'true' | ||||||
|           # In case you need to test some optional helmfile features, |           # In case you need to test some optional helmfile features, | ||||||
|           # enable it via extra-helmfile-flags below. |           # enable it via extra-helmfile-flags below. | ||||||
|           - helm-version: v3.17.0 |           - helm-version: v3.17.0 | ||||||
|  | @ -86,6 +97,7 @@ jobs: | ||||||
|             plugin-secrets-version: 4.6.0 |             plugin-secrets-version: 4.6.0 | ||||||
|             plugin-diff-version: 3.9.14 |             plugin-diff-version: 3.9.14 | ||||||
|             extra-helmfile-flags: '--enable-live-output' |             extra-helmfile-flags: '--enable-live-output' | ||||||
|  |             v1mode: '' | ||||||
|     steps: |     steps: | ||||||
|       - uses: actions/checkout@v4 |       - uses: actions/checkout@v4 | ||||||
|       - uses: actions/setup-go@v5 |       - uses: actions/setup-go@v5 | ||||||
|  | @ -115,6 +127,7 @@ jobs: | ||||||
|           HELMFILE_HELM3: 1 |           HELMFILE_HELM3: 1 | ||||||
|           TERM: xterm |           TERM: xterm | ||||||
|           EXTRA_HELMFILE_FLAGS: ${{ matrix.extra-helmfile-flags }} |           EXTRA_HELMFILE_FLAGS: ${{ matrix.extra-helmfile-flags }} | ||||||
|  |           HELMFILE_V1MODE: ${{ matrix.v1mode }} | ||||||
| 
 | 
 | ||||||
|   e2e_tests: |   e2e_tests: | ||||||
|     needs: tests |     needs: tests | ||||||
|  |  | ||||||
|  | @ -16,6 +16,7 @@ permissions: | ||||||
| 
 | 
 | ||||||
| env: | env: | ||||||
|   GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |   GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||||||
|  |   HELMFILE_V1MODE: ${{ startsWith(github.ref, 'refs/tags/v1') }} | ||||||
|   SNAPSHOT: ${{ !startsWith(github.ref, 'refs/tags/v') && '--snapshot' || '' }} |   SNAPSHOT: ${{ !startsWith(github.ref, 'refs/tags/v') && '--snapshot' || '' }} | ||||||
| 
 | 
 | ||||||
| jobs: | jobs: | ||||||
|  |  | ||||||
|  | @ -1,5 +1,8 @@ | ||||||
| version: 2 | version: 2 | ||||||
| project_name: helmfile | project_name: helmfile | ||||||
|  | env: | ||||||
|  |   # We default to non-v1 mode (=helmfile v0.x behavior) when HELMFILE_V1MODE is not set | ||||||
|  |   - HELMFILE_V1MODE={{ if index .Env "HELMFILE_V1MODE"  }}{{ .Env.HELMFILE_V1MODE }}{{ else }}false{{ end }} | ||||||
| builds: | builds: | ||||||
|   - id: helmfile |   - id: helmfile | ||||||
|     main: . |     main: . | ||||||
|  | @ -12,6 +15,7 @@ builds: | ||||||
|       - -X go.szostok.io/version.commit={{.FullCommit}} |       - -X go.szostok.io/version.commit={{.FullCommit}} | ||||||
|       - -X go.szostok.io/version.commitDate={{.CommitDate}} |       - -X go.szostok.io/version.commitDate={{.CommitDate}} | ||||||
|       - -X go.szostok.io/version.dirtyBuild=false |       - -X go.szostok.io/version.dirtyBuild=false | ||||||
|  |       - -X github.com/helmfile/helmfile/pkg/runtime.v1Mode={{.Env.HELMFILE_V1MODE}} | ||||||
|     goos: |     goos: | ||||||
|       - darwin |       - darwin | ||||||
|       - linux |       - linux | ||||||
|  |  | ||||||
							
								
								
									
										4
									
								
								Makefile
								
								
								
								
							
							
						
						
									
										4
									
								
								Makefile
								
								
								
								
							|  | @ -25,6 +25,10 @@ build: | ||||||
| 	go build -ldflags="$(GO_BUILD_VERSION_LDFLAGS)" ${TARGETS} | 	go build -ldflags="$(GO_BUILD_VERSION_LDFLAGS)" ${TARGETS} | ||||||
| .PHONY: build | .PHONY: build | ||||||
| 
 | 
 | ||||||
|  | build-v1: | ||||||
|  | 	go build -ldflags="$(GO_BUILD_VERSION_LDFLAGS) -X github.com/helmfile/helmfile/pkg/runtime.v1Mode=true" ${TARGETS} | ||||||
|  | .PHONY: build-v1 | ||||||
|  | 
 | ||||||
| generate: | generate: | ||||||
| 	go generate ${PKGS} | 	go generate ${PKGS} | ||||||
| .PHONY: generate | .PHONY: generate | ||||||
|  |  | ||||||
|  | @ -5,6 +5,7 @@ import ( | ||||||
| 
 | 
 | ||||||
| 	"github.com/helmfile/helmfile/pkg/app" | 	"github.com/helmfile/helmfile/pkg/app" | ||||||
| 	"github.com/helmfile/helmfile/pkg/config" | 	"github.com/helmfile/helmfile/pkg/config" | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/runtime" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| // NewApplyCmd returns apply subcmd
 | // NewApplyCmd returns apply subcmd
 | ||||||
|  | @ -43,6 +44,12 @@ func NewApplyCmd(globalCfg *config.GlobalImpl) *cobra.Command { | ||||||
| 	f.StringVar(&applyOptions.DiffArgs, "diff-args", "", `pass args to helm helm-diff`) | 	f.StringVar(&applyOptions.DiffArgs, "diff-args", "", `pass args to helm helm-diff`) | ||||||
| 	f.StringVar(&applyOptions.SyncArgs, "sync-args", "", `pass args to helm upgrade`) | 	f.StringVar(&applyOptions.SyncArgs, "sync-args", "", `pass args to helm upgrade`) | ||||||
| 	f.StringVar(&globalCfg.GlobalOptions.Args, "args", "", "pass args to helm exec") | 	f.StringVar(&globalCfg.GlobalOptions.Args, "args", "", "pass args to helm exec") | ||||||
|  | 	if !runtime.V1Mode { | ||||||
|  | 		// TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | 		f.BoolVar(&applyOptions.RetainValuesFiles, "retain-values-files", false, "DEPRECATED: Use skip-cleanup instead") | ||||||
|  | 		_ = f.MarkDeprecated("retain-values-files", "Use skip-cleanup instead") | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	f.BoolVar(&applyOptions.SkipCleanup, "skip-cleanup", false, "Stop cleaning up temporary values generated by helmfile and helm-secrets. Useful for debugging. Don't use in production for security") | 	f.BoolVar(&applyOptions.SkipCleanup, "skip-cleanup", false, "Stop cleaning up temporary values generated by helmfile and helm-secrets. Useful for debugging. Don't use in production for security") | ||||||
| 	f.BoolVar(&applyOptions.SkipCRDs, "skip-crds", false, "if set, no CRDs will be installed on sync. By default, CRDs are installed if not already present") | 	f.BoolVar(&applyOptions.SkipCRDs, "skip-crds", false, "if set, no CRDs will be installed on sync. By default, CRDs are installed if not already present") | ||||||
| 	f.BoolVar(&applyOptions.SkipNeeds, "skip-needs", true, `do not automatically include releases from the target release's "needs" when --selector/-l flag is provided. Does nothing when --selector/-l flag is not provided. Defaults to true when --include-needs or --include-transitive-needs is not provided`) | 	f.BoolVar(&applyOptions.SkipNeeds, "skip-needs", true, `do not automatically include releases from the target release's "needs" when --selector/-l flag is provided. Does nothing when --selector/-l flag is not provided. Defaults to true when --include-needs or --include-transitive-needs is not provided`) | ||||||
|  |  | ||||||
|  | @ -0,0 +1,41 @@ | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | package cmd | ||||||
|  | 
 | ||||||
|  | import ( | ||||||
|  | 	"github.com/spf13/cobra" | ||||||
|  | 
 | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/app" | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/config" | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | // NewChartsCmd returns charts subcmd
 | ||||||
|  | func NewChartsCmd(globalCfg *config.GlobalImpl) *cobra.Command { | ||||||
|  | 	chartsOptions := config.NewChartsOptions() | ||||||
|  | 
 | ||||||
|  | 	cmd := &cobra.Command{ | ||||||
|  | 		Use:   "charts", | ||||||
|  | 		Short: "DEPRECATED: sync releases from state file (helm upgrade --install)", | ||||||
|  | 		RunE: func(cmd *cobra.Command, args []string) error { | ||||||
|  | 			chartsImpl := config.NewChartsImpl(globalCfg, chartsOptions) | ||||||
|  | 			err := config.NewCLIConfigImpl(chartsImpl.GlobalImpl) | ||||||
|  | 			if err != nil { | ||||||
|  | 				return err | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			if err := chartsImpl.ValidateConfig(); err != nil { | ||||||
|  | 				return err | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			a := app.New(chartsImpl) | ||||||
|  | 			return toCLIError(chartsImpl.GlobalImpl, a.DeprecatedSyncCharts(chartsImpl)) | ||||||
|  | 		}, | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	f := cmd.Flags() | ||||||
|  | 	f.StringVar(&globalCfg.GlobalOptions.Args, "args", "", "pass args to helm exec") | ||||||
|  | 	f.StringArrayVar(&chartsOptions.Set, "set", nil, "additional values to be merged into the helm command --set flag") | ||||||
|  | 	f.StringArrayVar(&chartsOptions.Values, "values", nil, "additional value files to be merged into the helm command --values flag") | ||||||
|  | 	f.IntVar(&chartsOptions.Concurrency, "concurrency", 0, "maximum number of concurrent helm processes to run, 0 is unlimited") | ||||||
|  | 
 | ||||||
|  | 	return cmd | ||||||
|  | } | ||||||
|  | @ -0,0 +1,44 @@ | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | package cmd | ||||||
|  | 
 | ||||||
|  | import ( | ||||||
|  | 	"github.com/spf13/cobra" | ||||||
|  | 
 | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/app" | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/config" | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | // NewDeleteCmd returns delete subcmd
 | ||||||
|  | func NewDeleteCmd(globalCfg *config.GlobalImpl) *cobra.Command { | ||||||
|  | 	deleteOptions := config.NewDeleteOptions() | ||||||
|  | 
 | ||||||
|  | 	cmd := &cobra.Command{ | ||||||
|  | 		Use:   "delete", | ||||||
|  | 		Short: "DEPRECATED: delete releases from state file (helm delete)", | ||||||
|  | 		RunE: func(cmd *cobra.Command, args []string) error { | ||||||
|  | 			deleteImpl := config.NewDeleteImpl(globalCfg, deleteOptions) | ||||||
|  | 			err := config.NewCLIConfigImpl(deleteImpl.GlobalImpl) | ||||||
|  | 			if err != nil { | ||||||
|  | 				return err | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			if err := deleteImpl.ValidateConfig(); err != nil { | ||||||
|  | 				return err | ||||||
|  | 			} | ||||||
|  | 
 | ||||||
|  | 			a := app.New(deleteImpl) | ||||||
|  | 			return toCLIError(deleteImpl.GlobalImpl, a.Delete(deleteImpl)) | ||||||
|  | 		}, | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	f := cmd.Flags() | ||||||
|  | 	f.StringVar(&globalCfg.GlobalOptions.Args, "args", "", "pass args to helm exec") | ||||||
|  | 	f.StringVar(&deleteOptions.Cascade, "cascade", "", "pass cascade to helm exec, default: background") | ||||||
|  | 	f.IntVar(&deleteOptions.Concurrency, "concurrency", 0, "maximum number of concurrent helm processes to run, 0 is unlimited") | ||||||
|  | 	f.BoolVar(&deleteOptions.Purge, "purge", false, "purge releases i.e. free release names and histories") | ||||||
|  | 	f.BoolVar(&deleteOptions.SkipCharts, "skip-charts", false, "don't prepare charts when deleting releases") | ||||||
|  | 	f.BoolVar(&deleteOptions.DeleteWait, "deleteWait", false, `override helmDefaults.wait setting "helm uninstall --wait"`) | ||||||
|  | 	f.IntVar(&deleteOptions.DeleteTimeout, "deleteTimeout", 300, `time in seconds to wait for helm uninstall, default: 300`) | ||||||
|  | 
 | ||||||
|  | 	return cmd | ||||||
|  | } | ||||||
|  | @ -109,6 +109,14 @@ func NewRootCmd(globalConfig *config.GlobalOptions) (*cobra.Command, error) { | ||||||
| 		), | 		), | ||||||
| 	) | 	) | ||||||
| 
 | 
 | ||||||
|  | 	// TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | 	if !runtime.V1Mode { | ||||||
|  | 		cmd.AddCommand( | ||||||
|  | 			NewChartsCmd(globalImpl), | ||||||
|  | 			NewDeleteCmd(globalImpl), | ||||||
|  | 		) | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	return cmd, nil | 	return cmd, nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -557,6 +557,7 @@ Helmfile uses some OS environment variables to override default behaviour: | ||||||
| * `HELMFILE_ENVIRONMENT` - specify [Helmfile environment](https://helmfile.readthedocs.io/en/latest/#environment), it has lower priority than CLI argument `--environment` | * `HELMFILE_ENVIRONMENT` - specify [Helmfile environment](https://helmfile.readthedocs.io/en/latest/#environment), it has lower priority than CLI argument `--environment` | ||||||
| * `HELMFILE_TEMPDIR` - specify directory to store temporary files | * `HELMFILE_TEMPDIR` - specify directory to store temporary files | ||||||
| * `HELMFILE_UPGRADE_NOTICE_DISABLED` - expecting any non-empty value to skip the check for the latest version of Helmfile in [helmfile version](https://helmfile.readthedocs.io/en/latest/#version) | * `HELMFILE_UPGRADE_NOTICE_DISABLED` - expecting any non-empty value to skip the check for the latest version of Helmfile in [helmfile version](https://helmfile.readthedocs.io/en/latest/#version) | ||||||
|  | * `HELMFILE_V1MODE` - Helmfile v0.x behaves like v1.x with `true`, Helmfile v1.x behaves like v0.x with `false` as value | ||||||
| * `HELMFILE_GOCCY_GOYAML` - use *goccy/go-yaml* instead of *gopkg.in/yaml.v2*.  It's `false` by default in Helmfile v0.x and `true` by default for Helmfile v1.x. | * `HELMFILE_GOCCY_GOYAML` - use *goccy/go-yaml* instead of *gopkg.in/yaml.v2*.  It's `false` by default in Helmfile v0.x and `true` by default for Helmfile v1.x. | ||||||
| * `HELMFILE_CACHE_HOME` - specify directory to store cached files for remote operations | * `HELMFILE_CACHE_HOME` - specify directory to store cached files for remote operations | ||||||
| * `HELMFILE_FILE_PATH` - specify the path to the helmfile.yaml file | * `HELMFILE_FILE_PATH` - specify the path to the helmfile.yaml file | ||||||
|  |  | ||||||
|  | @ -20,6 +20,7 @@ import ( | ||||||
| 	"github.com/helmfile/helmfile/pkg/helmexec" | 	"github.com/helmfile/helmfile/pkg/helmexec" | ||||||
| 	"github.com/helmfile/helmfile/pkg/plugins" | 	"github.com/helmfile/helmfile/pkg/plugins" | ||||||
| 	"github.com/helmfile/helmfile/pkg/remote" | 	"github.com/helmfile/helmfile/pkg/remote" | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/runtime" | ||||||
| 	"github.com/helmfile/helmfile/pkg/state" | 	"github.com/helmfile/helmfile/pkg/state" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
|  | @ -138,6 +139,25 @@ func (a *App) Repos(c ReposConfigProvider) error { | ||||||
| 	}, c.IncludeTransitiveNeeds(), SetFilter(true)) | 	}, c.IncludeTransitiveNeeds(), SetFilter(true)) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | func (a *App) DeprecatedSyncCharts(c DeprecatedChartsConfigProvider) error { | ||||||
|  | 	return a.ForEachState(func(run *Run) (_ bool, errs []error) { | ||||||
|  | 		err := run.withPreparedCharts("charts", state.ChartPrepareOptions{ | ||||||
|  | 			SkipRepos:   true, | ||||||
|  | 			SkipDeps:    true, | ||||||
|  | 			Concurrency: 2, | ||||||
|  | 		}, func() { | ||||||
|  | 			errs = run.DeprecatedSyncCharts(c) | ||||||
|  | 		}) | ||||||
|  | 
 | ||||||
|  | 		if err != nil { | ||||||
|  | 			errs = append(errs, err) | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		return | ||||||
|  | 	}, c.IncludeTransitiveNeeds(), SetFilter(true)) | ||||||
|  | } | ||||||
|  | 
 | ||||||
| func (a *App) Diff(c DiffConfigProvider) error { | func (a *App) Diff(c DiffConfigProvider) error { | ||||||
| 	var allDiffDetectedErrs []error | 	var allDiffDetectedErrs []error | ||||||
| 
 | 
 | ||||||
|  | @ -389,7 +409,7 @@ func (a *App) Apply(c ApplyConfigProvider) error { | ||||||
| 
 | 
 | ||||||
| 	var opts []LoadOption | 	var opts []LoadOption | ||||||
| 
 | 
 | ||||||
| 	opts = append(opts, SetRetainValuesFiles(c.SkipCleanup())) | 	opts = append(opts, SetRetainValuesFiles(c.RetainValuesFiles() || c.SkipCleanup())) | ||||||
| 
 | 
 | ||||||
| 	err := a.ForEachState(func(run *Run) (ok bool, errs []error) { | 	err := a.ForEachState(func(run *Run) (ok bool, errs []error) { | ||||||
| 		includeCRDs := !c.SkipCRDs() | 		includeCRDs := !c.SkipCRDs() | ||||||
|  | @ -401,7 +421,7 @@ func (a *App) Apply(c ApplyConfigProvider) error { | ||||||
| 			Wait:                   c.Wait(), | 			Wait:                   c.Wait(), | ||||||
| 			WaitForJobs:            c.WaitForJobs(), | 			WaitForJobs:            c.WaitForJobs(), | ||||||
| 			IncludeCRDs:            &includeCRDs, | 			IncludeCRDs:            &includeCRDs, | ||||||
| 			SkipCleanup:            c.SkipCleanup(), | 			SkipCleanup:            c.RetainValuesFiles() || c.SkipCleanup(), | ||||||
| 			Validate:               c.Validate(), | 			Validate:               c.Validate(), | ||||||
| 			Concurrency:            c.Concurrency(), | 			Concurrency:            c.Concurrency(), | ||||||
| 			IncludeTransitiveNeeds: c.IncludeNeeds(), | 			IncludeTransitiveNeeds: c.IncludeNeeds(), | ||||||
|  | @ -453,6 +473,31 @@ func (a *App) Status(c StatusesConfigProvider) error { | ||||||
| 	}, false, SetFilter(true)) | 	}, false, SetFilter(true)) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | func (a *App) Delete(c DeleteConfigProvider) error { | ||||||
|  | 	return a.ForEachState(func(run *Run) (ok bool, errs []error) { | ||||||
|  | 		if !c.SkipCharts() { | ||||||
|  | 			err := run.withPreparedCharts("delete", state.ChartPrepareOptions{ | ||||||
|  | 				SkipRepos:     c.SkipRefresh() || c.SkipDeps(), | ||||||
|  | 				SkipRefresh:   c.SkipRefresh(), | ||||||
|  | 				SkipDeps:      c.SkipDeps(), | ||||||
|  | 				Concurrency:   c.Concurrency(), | ||||||
|  | 				DeleteWait:    c.DeleteWait(), | ||||||
|  | 				DeleteTimeout: c.DeleteTimeout(), | ||||||
|  | 			}, func() { | ||||||
|  | 				ok, errs = a.delete(run, c.Purge(), c) | ||||||
|  | 			}) | ||||||
|  | 
 | ||||||
|  | 			if err != nil { | ||||||
|  | 				errs = append(errs, err) | ||||||
|  | 			} | ||||||
|  | 		} else { | ||||||
|  | 			ok, errs = a.delete(run, c.Purge(), c) | ||||||
|  | 		} | ||||||
|  | 		return | ||||||
|  | 	}, false, SetReverse(true)) | ||||||
|  | } | ||||||
|  | 
 | ||||||
| func (a *App) Destroy(c DestroyConfigProvider) error { | func (a *App) Destroy(c DestroyConfigProvider) error { | ||||||
| 	return a.ForEachState(func(run *Run) (ok bool, errs []error) { | 	return a.ForEachState(func(run *Run) (ok bool, errs []error) { | ||||||
| 		if !c.SkipCharts() { | 		if !c.SkipCharts() { | ||||||
|  | @ -1213,6 +1258,16 @@ func (a *App) findDesiredStateFiles(specifiedPath string, opts LoadOpts) ([]stri | ||||||
| 
 | 
 | ||||||
| 		case a.fs.FileExistsAt(DefaultGotmplHelmfile): | 		case a.fs.FileExistsAt(DefaultGotmplHelmfile): | ||||||
| 			defaultFile = DefaultGotmplHelmfile | 			defaultFile = DefaultGotmplHelmfile | ||||||
|  | 
 | ||||||
|  | 		// TODO: Remove this block when we remove v0 code
 | ||||||
|  | 		case !runtime.V1Mode && a.fs.FileExistsAt(DeprecatedHelmfile): | ||||||
|  | 			a.Logger.Warnf( | ||||||
|  | 				"warn: %s is being loaded: %s is deprecated in favor of %s. See https://github.com/roboll/helmfile/issues/25 for more information", | ||||||
|  | 				DeprecatedHelmfile, | ||||||
|  | 				DeprecatedHelmfile, | ||||||
|  | 				DefaultHelmfile, | ||||||
|  | 			) | ||||||
|  | 			defaultFile = DeprecatedHelmfile | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		switch { | 		switch { | ||||||
|  | @ -1377,7 +1432,7 @@ func (a *App) apply(r *Run, c ApplyConfigProvider) (bool, bool, []error) { | ||||||
| 		Context:                 c.Context(), | 		Context:                 c.Context(), | ||||||
| 		Output:                  c.DiffOutput(), | 		Output:                  c.DiffOutput(), | ||||||
| 		Set:                     c.Set(), | 		Set:                     c.Set(), | ||||||
| 		SkipCleanup:             c.SkipCleanup(), | 		SkipCleanup:             c.RetainValuesFiles() || c.SkipCleanup(), | ||||||
| 		SkipDiffOnInstall:       c.SkipDiffOnInstall(), | 		SkipDiffOnInstall:       c.SkipDiffOnInstall(), | ||||||
| 		ReuseValues:             c.ReuseValues(), | 		ReuseValues:             c.ReuseValues(), | ||||||
| 		ResetValues:             c.ResetValues(), | 		ResetValues:             c.ResetValues(), | ||||||
|  | @ -1488,7 +1543,7 @@ Do you really want to apply? | ||||||
| 
 | 
 | ||||||
| 				syncOpts := &state.SyncOpts{ | 				syncOpts := &state.SyncOpts{ | ||||||
| 					Set:                  c.Set(), | 					Set:                  c.Set(), | ||||||
| 					SkipCleanup:          c.SkipCleanup(), | 					SkipCleanup:          c.RetainValuesFiles() || c.SkipCleanup(), | ||||||
| 					SkipCRDs:             c.SkipCRDs(), | 					SkipCRDs:             c.SkipCRDs(), | ||||||
| 					Wait:                 c.Wait(), | 					Wait:                 c.Wait(), | ||||||
| 					WaitForJobs:          c.WaitForJobs(), | 					WaitForJobs:          c.WaitForJobs(), | ||||||
|  |  | ||||||
|  | @ -146,7 +146,7 @@ func TestApply_3(t *testing.T) { | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -199,7 +199,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -250,7 +250,7 @@ releases: | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -306,7 +306,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -359,7 +359,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -415,7 +415,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -464,7 +464,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 	t.Run("bad --selector", func(t *testing.T) { | 	t.Run("bad --selector", func(t *testing.T) { | ||||||
| 		check(t, testcase{ | 		check(t, testcase{ | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -494,6 +494,72 @@ releases: | ||||||
| 			error:     "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | 			error:     "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | ||||||
| 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}) | 		}) | ||||||
| 	}) | 	}) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -146,7 +146,7 @@ func TestApply_2(t *testing.T) { | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -199,7 +199,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -250,7 +250,7 @@ releases: | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -306,7 +306,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -359,7 +359,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -415,7 +415,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -470,7 +470,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -517,7 +517,7 @@ serviceC 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	chart-3.1.0	3.1.0      	def | ||||||
| 	t.Run("bad --selector", func(t *testing.T) { | 	t.Run("bad --selector", func(t *testing.T) { | ||||||
| 		check(t, testcase{ | 		check(t, testcase{ | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -547,6 +547,72 @@ releases: | ||||||
| 			error:     "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | 			error:     "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | ||||||
| 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}) | 		}) | ||||||
| 	}) | 	}) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -240,7 +240,6 @@ environments: | ||||||
|     values: |     values: | ||||||
|      - myrelease2: |      - myrelease2: | ||||||
|          enabled: false |          enabled: false | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: myrelease1 | - name: myrelease1 | ||||||
|   chart: mychart1 |   chart: mychart1 | ||||||
|  |  | ||||||
|  | @ -142,7 +142,7 @@ func TestSync(t *testing.T) { | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -191,7 +191,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -249,7 +249,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -300,7 +300,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -348,7 +348,7 @@ serviceA 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	chart-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -401,7 +401,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 			}, | 			}, | ||||||
| 			error: ``, | 			error: ``, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -447,7 +447,7 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 	t.Run("bad --selector", func(t *testing.T) { | 	t.Run("bad --selector", func(t *testing.T) { | ||||||
| 		check(t, testcase{ | 		check(t, testcase{ | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  |  | ||||||
|  | @ -135,7 +135,6 @@ environments: | ||||||
|   default: |   default: | ||||||
|     values: |     values: | ||||||
|     - env.*.yaml |     - env.*.yaml | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -171,7 +170,7 @@ BAZ: 4 | ||||||
| 		t.Errorf("unexpected error: %v", err) | 		t.Errorf("unexpected error: %v", err) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	expectedOrder := []string{"helmfile.yaml", "/path/to/env.1.yaml", "/path/to/env.2.yaml"} | 	expectedOrder := []string{"helmfile.yaml", "/path/to/env.1.yaml", "/path/to/env.2.yaml", "/path/to/env.1.yaml", "/path/to/env.2.yaml"} | ||||||
| 	actualOrder := fs.SuccessfulReads() | 	actualOrder := fs.SuccessfulReads() | ||||||
| 	if !reflect.DeepEqual(actualOrder, expectedOrder) { | 	if !reflect.DeepEqual(actualOrder, expectedOrder) { | ||||||
| 		t.Errorf("unexpected order of processed state files: expected=%v, actual=%v", expectedOrder, actualOrder) | 		t.Errorf("unexpected order of processed state files: expected=%v, actual=%v", expectedOrder, actualOrder) | ||||||
|  | @ -185,7 +184,6 @@ environments: | ||||||
|   default: |   default: | ||||||
|     values: |     values: | ||||||
|     - env.*.yaml |     - env.*.yaml | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -232,7 +230,6 @@ bases: | ||||||
| - base.yaml | - base.yaml | ||||||
| environments: | environments: | ||||||
|   test: |   test: | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -284,7 +281,6 @@ environments: | ||||||
|     missingFileHandler: %s |     missingFileHandler: %s | ||||||
|     values: |     values: | ||||||
|     - %s |     - %s | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -397,7 +393,7 @@ helmfiles: | ||||||
| 		"/path/to/helmfile.d/a1.yaml": ` | 		"/path/to/helmfile.d/a1.yaml": ` | ||||||
| environments: | environments: | ||||||
|   prod: |   prod: | ||||||
| --- | 
 | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -803,44 +799,41 @@ func runFilterSubHelmFilesTests(testcases []struct { | ||||||
| 
 | 
 | ||||||
| func TestVisitDesiredStatesWithReleasesFiltered_EmbeddedNestedStateAdditionalEnvValues(t *testing.T) { | func TestVisitDesiredStatesWithReleasesFiltered_EmbeddedNestedStateAdditionalEnvValues(t *testing.T) { | ||||||
| 	files := map[string]string{ | 	files := map[string]string{ | ||||||
| 		"/path/to/helmfile.yaml.gotmpl": ` | 		"/path/to/helmfile.yaml": ` | ||||||
| helmfiles: | helmfiles: | ||||||
| - path: helmfile.d/a*.yaml.gotmpl | - path: helmfile.d/a*.yaml | ||||||
|   values: |   values: | ||||||
|   - env.values.yaml |   - env.values.yaml | ||||||
| - helmfile.d/b*.yaml.gotmpl | - helmfile.d/b*.yaml | ||||||
| - path: helmfile.d/c*.yaml.gotmpl | - path: helmfile.d/c*.yaml | ||||||
|   values: |   values: | ||||||
|   - env.values.yaml |   - env.values.yaml | ||||||
| `, | `, | ||||||
| 		"/path/to/helmfile.d/a1.yaml.gotmpl": ` | 		"/path/to/helmfile.d/a1.yaml": ` | ||||||
| environments: | environments: | ||||||
|   default: |   default: | ||||||
|     values: |     values: | ||||||
|     - ns: INLINE_NS |     - ns: INLINE_NS | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: foo | - name: foo | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|   namespace: {{ .Environment.Values.ns }} |   namespace: {{ .Environment.Values.ns }} | ||||||
| `, | `, | ||||||
| 		"/path/to/helmfile.d/b.yaml.gotmpl": ` | 		"/path/to/helmfile.d/b.yaml": ` | ||||||
| environments: | environments: | ||||||
|   default: |   default: | ||||||
|     values: |     values: | ||||||
|     - ns: INLINE_NS |     - ns: INLINE_NS | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: bar | - name: bar | ||||||
|   chart: stable/grafana |   chart: stable/grafana | ||||||
|   namespace: {{ .Environment.Values.ns }} |   namespace: {{ .Environment.Values.ns }} | ||||||
| `, | `, | ||||||
| 		"/path/to/helmfile.d/c.yaml.gotmpl": ` | 		"/path/to/helmfile.d/c.yaml": ` | ||||||
| environments: | environments: | ||||||
|   default: |   default: | ||||||
|     values: |     values: | ||||||
|     - ns: INLINE_NS |     - ns: INLINE_NS | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: baz | - name: baz | ||||||
|   chart: stable/envoy |   chart: stable/envoy | ||||||
|  | @ -858,7 +851,7 @@ ns: INLINE_NS | ||||||
| 		Namespace:           "", | 		Namespace:           "", | ||||||
| 		Selectors:           []string{}, | 		Selectors:           []string{}, | ||||||
| 		Env:                 "default", | 		Env:                 "default", | ||||||
| 		FileOrDir:           "/path/to/helmfile.yaml.gotmpl", | 		FileOrDir:           "/path/to/helmfile.yaml", | ||||||
| 	}, files) | 	}, files) | ||||||
| 
 | 
 | ||||||
| 	expectNoCallsToHelm(app) | 	expectNoCallsToHelm(app) | ||||||
|  | @ -984,7 +977,7 @@ releases: | ||||||
| 
 | 
 | ||||||
| func TestVisitDesiredStatesWithReleasesFiltered_EnvironmentValueOverrides(t *testing.T) { | func TestVisitDesiredStatesWithReleasesFiltered_EnvironmentValueOverrides(t *testing.T) { | ||||||
| 	files := map[string]string{ | 	files := map[string]string{ | ||||||
| 		"/path/to/helmfile.yaml.gotmpl": ` | 		"/path/to/helmfile.yaml": ` | ||||||
| environments: | environments: | ||||||
|   default: |   default: | ||||||
|     values: |     values: | ||||||
|  | @ -1028,7 +1021,7 @@ bar: "bar1" | ||||||
| 			Env:                 "default", | 			Env:                 "default", | ||||||
| 			ValuesFiles:         []string{"overrides.yaml"}, | 			ValuesFiles:         []string{"overrides.yaml"}, | ||||||
| 			Set:                 map[string]any{"bar": "bar2", "baz": "baz1"}, | 			Set:                 map[string]any{"bar": "bar2", "baz": "baz1"}, | ||||||
| 			FileOrDir:           "helmfile.yaml.gotmpl", | 			FileOrDir:           "helmfile.yaml", | ||||||
| 		}, files) | 		}, files) | ||||||
| 
 | 
 | ||||||
| 		expectNoCallsToHelm(app) | 		expectNoCallsToHelm(app) | ||||||
|  | @ -1082,7 +1075,7 @@ func TestVisitDesiredStatesWithReleasesFiltered_StateValueOverrides(t *testing.T | ||||||
| 		testcase := testcases[i] | 		testcase := testcases[i] | ||||||
| 		t.Run(fmt.Sprintf("case %d", i), func(t *testing.T) { | 		t.Run(fmt.Sprintf("case %d", i), func(t *testing.T) { | ||||||
| 			files := map[string]string{ | 			files := map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": fmt.Sprintf(` | 				"/path/to/helmfile.yaml": fmt.Sprintf(` | ||||||
| # The top-level "values" are "base" values has inherited to state values with the lowest priority. | # The top-level "values" are "base" values has inherited to state values with the lowest priority. | ||||||
| # The lowest priority results in environment-specific values to override values defined in the base. | # The lowest priority results in environment-specific values to override values defined in the base. | ||||||
| values: | values: | ||||||
|  | @ -1149,7 +1142,7 @@ x: | ||||||
| 				Env:                 testcase.env, | 				Env:                 testcase.env, | ||||||
| 				ValuesFiles:         []string{"overrides.yaml"}, | 				ValuesFiles:         []string{"overrides.yaml"}, | ||||||
| 				Set:                 map[string]any{"x": map[string]any{"hoge": "hoge_set", "fuga": "fuga_set"}}, | 				Set:                 map[string]any{"x": map[string]any{"hoge": "hoge_set", "fuga": "fuga_set"}}, | ||||||
| 				FileOrDir:           "helmfile.yaml.gotmpl", | 				FileOrDir:           "helmfile.yaml", | ||||||
| 			}, files) | 			}, files) | ||||||
| 
 | 
 | ||||||
| 			expectNoCallsToHelm(app) | 			expectNoCallsToHelm(app) | ||||||
|  | @ -1449,7 +1442,7 @@ func TestLoadDesiredStateFromYaml_DuplicateReleaseName(t *testing.T) { | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func TestLoadDesiredStateFromYaml_Bases(t *testing.T) { | func TestLoadDesiredStateFromYaml_Bases(t *testing.T) { | ||||||
| 	yamlFile := "/path/to/yaml/file.gotmpl" | 	yamlFile := "/path/to/yaml/file" | ||||||
| 	yamlContent := `bases: | 	yamlContent := `bases: | ||||||
| - ../base.yaml | - ../base.yaml | ||||||
| - ../base.gotmpl | - ../base.gotmpl | ||||||
|  | @ -1520,7 +1513,7 @@ helmDefaults: | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func TestLoadDesiredStateFromYaml_MultiPartTemplate(t *testing.T) { | func TestLoadDesiredStateFromYaml_MultiPartTemplate(t *testing.T) { | ||||||
| 	yamlFile := "/path/to/yaml/file.gotmpl" | 	yamlFile := "/path/to/yaml/file" | ||||||
| 	yamlContent := `bases: | 	yamlContent := `bases: | ||||||
| - ../base.yaml | - ../base.yaml | ||||||
| --- | --- | ||||||
|  | @ -1726,7 +1719,7 @@ foo: FOO | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func TestLoadDesiredStateFromYaml_MultiPartTemplate_WithNonDefaultEnv(t *testing.T) { | func TestLoadDesiredStateFromYaml_MultiPartTemplate_WithNonDefaultEnv(t *testing.T) { | ||||||
| 	yamlFile := "/path/to/yaml/file.gotmpl" | 	yamlFile := "/path/to/yaml/file" | ||||||
| 	yamlContent := `bases: | 	yamlContent := `bases: | ||||||
| - ../base.yaml | - ../base.yaml | ||||||
| --- | --- | ||||||
|  | @ -1817,7 +1810,7 @@ helmDefaults: | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func TestLoadDesiredStateFromYaml_MultiPartTemplate_WithReverse(t *testing.T) { | func TestLoadDesiredStateFromYaml_MultiPartTemplate_WithReverse(t *testing.T) { | ||||||
| 	yamlFile := "/path/to/yaml/file.gotmpl" | 	yamlFile := "/path/to/yaml/file" | ||||||
| 	yamlContent := ` | 	yamlContent := ` | ||||||
| {{ readFile "templates.yaml" }} | {{ readFile "templates.yaml" }} | ||||||
| 
 | 
 | ||||||
|  | @ -1875,7 +1868,7 @@ releases: | ||||||
| 
 | 
 | ||||||
| // See https://github.com/roboll/helmfile/issues/615
 | // See https://github.com/roboll/helmfile/issues/615
 | ||||||
| func TestLoadDesiredStateFromYaml_MultiPartTemplate_NoMergeArrayInEnvVal(t *testing.T) { | func TestLoadDesiredStateFromYaml_MultiPartTemplate_NoMergeArrayInEnvVal(t *testing.T) { | ||||||
| 	statePath := "/path/to/helmfile.yaml.gotmpl" | 	statePath := "/path/to/helmfile.yaml" | ||||||
| 	stateContent := ` | 	stateContent := ` | ||||||
| environments: | environments: | ||||||
|   default: |   default: | ||||||
|  | @ -1940,7 +1933,7 @@ func TestLoadDesiredStateFromYaml_MultiPartTemplate_MergeMapsVariousKeys(t *test | ||||||
| 	} | 	} | ||||||
| 	for i := range testcases { | 	for i := range testcases { | ||||||
| 		tc := testcases[i] | 		tc := testcases[i] | ||||||
| 		statePath := "/path/to/helmfile.yaml.gotmpl" | 		statePath := "/path/to/helmfile.yaml" | ||||||
| 		stateContent := ` | 		stateContent := ` | ||||||
| environments: | environments: | ||||||
|   default: |   default: | ||||||
|  | @ -2057,7 +2050,7 @@ releases: | ||||||
| 	} | 	} | ||||||
| 	for i := range testcases { | 	for i := range testcases { | ||||||
| 		tc := testcases[i] | 		tc := testcases[i] | ||||||
| 		statePath := "/path/to/helmfile.yaml.gotmpl" | 		statePath := "/path/to/helmfile.yaml" | ||||||
| 		stateContent := fmt.Sprintf(tc.state, tc.expr) | 		stateContent := fmt.Sprintf(tc.state, tc.expr) | ||||||
| 		testFs := testhelper.NewTestFs(map[string]string{ | 		testFs := testhelper.NewTestFs(map[string]string{ | ||||||
| 			statePath:         stateContent, | 			statePath:         stateContent, | ||||||
|  | @ -2220,6 +2213,9 @@ type applyConfig struct { | ||||||
| 	cascade string | 	cascade string | ||||||
| 	values  []string | 	values  []string | ||||||
| 
 | 
 | ||||||
|  | 	// TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | 	retainValuesFiles bool | ||||||
|  | 
 | ||||||
| 	set                     []string | 	set                     []string | ||||||
| 	validate                bool | 	validate                bool | ||||||
| 	skipCleanup             bool | 	skipCleanup             bool | ||||||
|  | @ -2380,6 +2376,11 @@ func (a applyConfig) Logger() *zap.SugaredLogger { | ||||||
| 	return a.logger | 	return a.logger | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | func (a applyConfig) RetainValuesFiles() bool { | ||||||
|  | 	return a.retainValuesFiles | ||||||
|  | } | ||||||
|  | 
 | ||||||
| func (a applyConfig) SkipDiffOnInstall() bool { | func (a applyConfig) SkipDiffOnInstall() bool { | ||||||
| 	return a.skipDiffOnInstall | 	return a.skipDiffOnInstall | ||||||
| } | } | ||||||
|  | @ -3428,7 +3429,7 @@ bar 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	mychart2-3.1.0	3.1.0      	defau | ||||||
| 				skipNeeds: true, | 				skipNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -3481,9 +3482,9 @@ my-release 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	raw-3.1.0	3.1.0      	def | ||||||
| 				skipNeeds:    false, | 				skipNeeds:    false, | ||||||
| 				includeNeeds: true, | 				includeNeeds: true, | ||||||
| 			}, | 			}, | ||||||
| 			error: `in ./helmfile.yaml.gotmpl: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | 			error: `in ./helmfile.yaml: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -3522,7 +3523,7 @@ releases: | ||||||
| 			name: "upgrades with bad selector", | 			name: "upgrades with bad selector", | ||||||
| 			loc:  location(), | 			loc:  location(), | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -3773,6 +3774,41 @@ releases: | ||||||
| `, | `, | ||||||
| 				"/path/to/charts/example/Chart.yaml": `foo: FOO`, | 				"/path/to/charts/example/Chart.yaml": `foo: FOO`, | ||||||
| 			}, | 			}, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: repositories: | ||||||
|  |  2: - name: bitnami | ||||||
|  |  3:   url: https://charts.bitnami.com/bitnami/
 | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: example | ||||||
|  |  6:   chart: /path/to/charts/example | ||||||
|  |  7:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: repositories: | ||||||
|  |  2: - name: bitnami | ||||||
|  |  3:   url: https://charts.bitnami.com/bitnami/
 | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: example | ||||||
|  |  6:   chart: /path/to/charts/example | ||||||
|  |  7:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | There are no repositories defined in your helmfile.yaml. | ||||||
|  | This means helmfile cannot update your dependencies or create a lock file. | ||||||
|  | See https://github.com/roboll/helmfile/issues/878 for more information.
 | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 			charts: []string{"/path/to/charts/example"}, | 			charts: []string{"/path/to/charts/example"}, | ||||||
| 		}, | 		}, | ||||||
| 	} | 	} | ||||||
|  | @ -3820,9 +3856,8 @@ releases: | ||||||
| 
 | 
 | ||||||
| 			if tc.log != "" { | 			if tc.log != "" { | ||||||
| 				actual := bs.String() | 				actual := bs.String() | ||||||
|  | 
 | ||||||
| 				assert.Equal(t, tc.log, actual) | 				assert.Equal(t, tc.log, actual) | ||||||
| 			} else { |  | ||||||
| 				assertLogEqualsToSnapshot(t, bs.String()) |  | ||||||
| 			} | 			} | ||||||
| 		}) | 		}) | ||||||
| 	} | 	} | ||||||
|  | @ -3927,7 +3962,6 @@ environments: | ||||||
|     values: |     values: | ||||||
|      - myrelease2: |      - myrelease2: | ||||||
|          enabled: false |          enabled: false | ||||||
| --- |  | ||||||
| releases: | releases: | ||||||
| - name: myrelease1 | - name: myrelease1 | ||||||
|   chart: mychart1 |   chart: mychart1 | ||||||
|  | @ -3991,7 +4025,7 @@ func testSetStringValuesTemplate(t *testing.T, goccyGoYaml bool) { | ||||||
| 	}) | 	}) | ||||||
| 
 | 
 | ||||||
| 	files := map[string]string{ | 	files := map[string]string{ | ||||||
| 		"/path/to/helmfile.yaml.gotmpl": ` | 		"/path/to/helmfile.yaml": ` | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -4015,7 +4049,7 @@ releases: | ||||||
| 		OverrideKubeContext: "default", | 		OverrideKubeContext: "default", | ||||||
| 		Logger:              newAppTestLogger(), | 		Logger:              newAppTestLogger(), | ||||||
| 		Env:                 "default", | 		Env:                 "default", | ||||||
| 		FileOrDir:           "helmfile.yaml.gotmpl", | 		FileOrDir:           "helmfile.yaml", | ||||||
| 	}, files) | 	}, files) | ||||||
| 
 | 
 | ||||||
| 	expectNoCallsToHelm(app) | 	expectNoCallsToHelm(app) | ||||||
|  | @ -4059,7 +4093,7 @@ func testSetValuesTemplate(t *testing.T, goccyGoYaml bool) { | ||||||
| 	}) | 	}) | ||||||
| 
 | 
 | ||||||
| 	files := map[string]string{ | 	files := map[string]string{ | ||||||
| 		"/path/to/helmfile.yaml.gotmpl": ` | 		"/path/to/helmfile.yaml": ` | ||||||
| releases: | releases: | ||||||
| - name: zipkin | - name: zipkin | ||||||
|   chart: stable/zipkin |   chart: stable/zipkin | ||||||
|  | @ -4087,7 +4121,7 @@ releases: | ||||||
| 		OverrideKubeContext: "default", | 		OverrideKubeContext: "default", | ||||||
| 		Logger:              newAppTestLogger(), | 		Logger:              newAppTestLogger(), | ||||||
| 		Env:                 "default", | 		Env:                 "default", | ||||||
| 		FileOrDir:           "helmfile.yaml.gotmpl", | 		FileOrDir:           "helmfile.yaml", | ||||||
| 	}, files) | 	}, files) | ||||||
| 
 | 
 | ||||||
| 	expectNoCallsToHelm(app) | 	expectNoCallsToHelm(app) | ||||||
|  |  | ||||||
|  | @ -25,6 +25,15 @@ type ConfigProvider interface { | ||||||
| 	loggingConfig | 	loggingConfig | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | type DeprecatedChartsConfigProvider interface { | ||||||
|  | 	Values() []string | ||||||
|  | 
 | ||||||
|  | 	concurrencyConfig | ||||||
|  | 	loggingConfig | ||||||
|  | 	IncludeTransitiveNeeds() bool | ||||||
|  | } | ||||||
|  | 
 | ||||||
| type DepsConfigProvider interface { | type DepsConfigProvider interface { | ||||||
| 	Args() string | 	Args() string | ||||||
| 	SkipRepos() bool | 	SkipRepos() bool | ||||||
|  | @ -72,6 +81,9 @@ type ApplyConfigProvider interface { | ||||||
| 	Context() int | 	Context() int | ||||||
| 	DiffOutput() string | 	DiffOutput() string | ||||||
| 
 | 
 | ||||||
|  | 	// TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | 	RetainValuesFiles() bool | ||||||
|  | 
 | ||||||
| 	Validate() bool | 	Validate() bool | ||||||
| 	SkipCleanup() bool | 	SkipCleanup() bool | ||||||
| 	SkipDiffOnInstall() bool | 	SkipDiffOnInstall() bool | ||||||
|  | @ -154,6 +166,23 @@ type DiffConfigProvider interface { | ||||||
| 	valuesControlMode | 	valuesControlMode | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | type DeleteConfigProvider interface { | ||||||
|  | 	Args() string | ||||||
|  | 	Cascade() string | ||||||
|  | 
 | ||||||
|  | 	Purge() bool | ||||||
|  | 	SkipDeps() bool | ||||||
|  | 	SkipRefresh() bool | ||||||
|  | 	SkipCharts() bool | ||||||
|  | 	DeleteWait() bool | ||||||
|  | 	DeleteTimeout() int | ||||||
|  | 
 | ||||||
|  | 	interactive | ||||||
|  | 	loggingConfig | ||||||
|  | 	concurrencyConfig | ||||||
|  | } | ||||||
|  | 
 | ||||||
| type DestroyConfigProvider interface { | type DestroyConfigProvider interface { | ||||||
| 	Args() string | 	Args() string | ||||||
| 	Cascade() string | 	Cascade() string | ||||||
|  |  | ||||||
|  | @ -8,7 +8,10 @@ import ( | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
| 	DefaultHelmfile              = "helmfile.yaml" | 	DefaultHelmfile = "helmfile.yaml" | ||||||
|  | 	// TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | 	DeprecatedHelmfile = "charts.yaml" | ||||||
|  | 
 | ||||||
| 	DefaultHelmfileDirectory     = "helmfile.d" | 	DefaultHelmfileDirectory     = "helmfile.d" | ||||||
| 	ExperimentalSelectorExplicit = "explicit-selector-inheritance" // value to remove default selector inheritance to sub-helmfiles and use the explicit one
 | 	ExperimentalSelectorExplicit = "explicit-selector-inheritance" // value to remove default selector inheritance to sub-helmfiles and use the explicit one
 | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | @ -15,6 +15,7 @@ import ( | ||||||
| 	"github.com/helmfile/helmfile/pkg/helmexec" | 	"github.com/helmfile/helmfile/pkg/helmexec" | ||||||
| 	"github.com/helmfile/helmfile/pkg/policy" | 	"github.com/helmfile/helmfile/pkg/policy" | ||||||
| 	"github.com/helmfile/helmfile/pkg/remote" | 	"github.com/helmfile/helmfile/pkg/remote" | ||||||
|  | 	"github.com/helmfile/helmfile/pkg/runtime" | ||||||
| 	"github.com/helmfile/helmfile/pkg/state" | 	"github.com/helmfile/helmfile/pkg/state" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
|  | @ -161,14 +162,21 @@ func (a *desiredStateLoader) underlying() *state.StateCreator { | ||||||
| func (a *desiredStateLoader) rawLoad(yaml []byte, baseDir, file string, evaluateBases bool, env, overrodeEnv *environment.Environment) (*state.HelmState, error) { | func (a *desiredStateLoader) rawLoad(yaml []byte, baseDir, file string, evaluateBases bool, env, overrodeEnv *environment.Environment) (*state.HelmState, error) { | ||||||
| 	var st *state.HelmState | 	var st *state.HelmState | ||||||
| 	var err error | 	var err error | ||||||
| 	merged, err := env.Merge(overrodeEnv) | 	if runtime.V1Mode { | ||||||
| 	if err != nil { | 		st, err = a.underlying().ParseAndLoad(yaml, baseDir, file, a.env, false, evaluateBases, env, overrodeEnv) | ||||||
| 		return nil, err | 		if err != nil { | ||||||
| 	} | 			return nil, err | ||||||
|  | 		} | ||||||
|  | 	} else { | ||||||
|  | 		merged, err := env.Merge(overrodeEnv) | ||||||
|  | 		if err != nil { | ||||||
|  | 			return nil, err | ||||||
|  | 		} | ||||||
| 
 | 
 | ||||||
| 	st, err = a.underlying().ParseAndLoad(yaml, baseDir, file, a.env, false, evaluateBases, merged, nil) | 		st, err = a.underlying().ParseAndLoad(yaml, baseDir, file, a.env, false, evaluateBases, merged, nil) | ||||||
| 	if err != nil { | 		if err != nil { | ||||||
| 		return nil, err | 			return nil, err | ||||||
|  | 		} | ||||||
| 	} | 	} | ||||||
| 	helmfiles, err := st.ExpandedHelmfiles() | 	helmfiles, err := st.ExpandedHelmfiles() | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
|  | @ -199,7 +207,7 @@ func (ld *desiredStateLoader) load(env, overrodeEnv *environment.Environment, ba | ||||||
| 
 | 
 | ||||||
| 		var rawContent []byte | 		var rawContent []byte | ||||||
| 
 | 
 | ||||||
| 		if filepath.Ext(filename) == ".gotmpl" { | 		if filepath.Ext(filename) == ".gotmpl" || !runtime.V1Mode { | ||||||
| 			var yamlBuf *bytes.Buffer | 			var yamlBuf *bytes.Buffer | ||||||
| 			var err error | 			var err error | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -636,7 +636,7 @@ bar 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	mychart2-3.1.0	3.1.0      	defau | ||||||
| 			loc:   location(), | 			loc:   location(), | ||||||
| 			flags: flags{skipNeeds: true}, | 			flags: flags{skipNeeds: true}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -677,7 +677,7 @@ releases: | ||||||
| 			loc:   location(), | 			loc:   location(), | ||||||
| 			flags: flags{skipNeeds: false}, | 			flags: flags{skipNeeds: false}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -711,14 +711,81 @@ releases: | ||||||
| 			upgraded: []exectest.Release{}, | 			upgraded: []exectest.Release{}, | ||||||
| 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
| 			error:       `in ./helmfile.yaml.gotmpl: release "default/external-secrets" depends on "kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | 			error:       `in ./helmfile.yaml: release "default/external-secrets" depends on "kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | err: release "default/external-secrets" depends on "kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 		{ | 		{ | ||||||
| 			// see https://github.com/roboll/helmfile/issues/919#issuecomment-549831747
 | 			// see https://github.com/roboll/helmfile/issues/919#issuecomment-549831747
 | ||||||
| 			name: "upgrades with bad selector", | 			name: "upgrades with bad selector", | ||||||
| 			loc:  location(), | 			loc:  location(), | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -750,6 +817,72 @@ releases: | ||||||
| 			error:            "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | 			error:            "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | ||||||
| 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 		//
 | 		//
 | ||||||
| 		// error cases
 | 		// error cases
 | ||||||
|  | @ -779,6 +912,46 @@ releases: | ||||||
| 			deleted:     []exectest.Release{}, | 			deleted:     []exectest.Release{}, | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
| 			error:       `in ./helmfile.yaml: release(s) "foo" depend(s) on an undefined release "bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?`, | 			error:       `in ./helmfile.yaml: release(s) "foo" depend(s) on an undefined release "bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?`, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   namespace: ns1 | ||||||
|  |  4:   chart: mychart3 | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   namespace: ns1 | ||||||
|  |  4:   chart: mychart3 | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
|  | 2 release(s) found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | err: release(s) "foo" depend(s) on an undefined release "bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"? | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -931,7 +931,7 @@ bar 	4       	Fri Nov  1 08:40:07 2019	DEPLOYED	mychart2-3.1.0	3.1.0      	defau | ||||||
| 			loc:   location(), | 			loc:   location(), | ||||||
| 			flags: flags{skipNeeds: true}, | 			flags: flags{skipNeeds: true}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -972,7 +972,7 @@ releases: | ||||||
| 			loc:   location(), | 			loc:   location(), | ||||||
| 			flags: flags{skipNeeds: false}, | 			flags: flags{skipNeeds: false}, | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -1006,14 +1006,81 @@ releases: | ||||||
| 			upgraded: []exectest.Release{}, | 			upgraded: []exectest.Release{}, | ||||||
| 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
| 			error:       `in ./helmfile.yaml.gotmpl: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | 			error:       `in ./helmfile.yaml: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | err: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 		{ | 		{ | ||||||
| 			// see https://github.com/roboll/helmfile/issues/919#issuecomment-549831747
 | 			// see https://github.com/roboll/helmfile/issues/919#issuecomment-549831747
 | ||||||
| 			name: "upgrades with bad selector", | 			name: "upgrades with bad selector", | ||||||
| 			loc:  location(), | 			loc:  location(), | ||||||
| 			files: map[string]string{ | 			files: map[string]string{ | ||||||
| 				"/path/to/helmfile.yaml.gotmpl": ` | 				"/path/to/helmfile.yaml": ` | ||||||
| {{ $mark := "a" }} | {{ $mark := "a" }} | ||||||
| 
 | 
 | ||||||
| releases: | releases: | ||||||
|  | @ -1045,6 +1112,72 @@ releases: | ||||||
| 			error:            "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | 			error:            "err: no releases found that matches specified selector(app=test_non_existent) and environment(default), in any helmfile", | ||||||
| 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | 			// as we check for log output, set concurrency to 1 to avoid non-deterministic test result
 | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 		//
 | 		//
 | ||||||
| 		// error cases
 | 		// error cases
 | ||||||
|  | @ -1075,6 +1208,43 @@ releases: | ||||||
| 			deleted:     []exectest.Release{}, | 			deleted:     []exectest.Release{}, | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
| 			error:       `in ./helmfile.yaml: release "default//foo" depends on "default//bar" which does not match the selectors. Please add a selector like "--selector name=bar", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | 			error:       `in ./helmfile.yaml: release "default//foo" depends on "default//bar" which does not match the selectors. Please add a selector like "--selector name=bar", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies`, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart3 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart3 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | 1 release(s) matching name=foo found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | err: release "default//foo" depends on "default//bar" which does not match the selectors. Please add a selector like "--selector name=bar", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 		{ | 		{ | ||||||
| 			name: "non-existent release in needs", | 			name: "non-existent release in needs", | ||||||
|  | @ -1101,6 +1271,46 @@ releases: | ||||||
| 			deleted:     []exectest.Release{}, | 			deleted:     []exectest.Release{}, | ||||||
| 			concurrency: 1, | 			concurrency: 1, | ||||||
| 			error:       `in ./helmfile.yaml: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?`, | 			error:       `in ./helmfile.yaml: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"?`, | ||||||
|  | 			log: `processing file "helmfile.yaml" in directory "." | ||||||
|  | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   namespace: ns1 | ||||||
|  |  4:   chart: mychart3 | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   namespace: ns1 | ||||||
|  |  4:   chart: mychart3 | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | merged environment: &{default  map[] map[]} | ||||||
|  | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
|  | 2 release(s) found in helmfile.yaml | ||||||
|  | 
 | ||||||
|  | err: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"? | ||||||
|  | changing working directory back to "/path/to" | ||||||
|  | `, | ||||||
| 		}, | 		}, | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -135,6 +135,17 @@ func (r *Run) Repos(c ReposConfigProvider) error { | ||||||
| 	return r.ctx.SyncReposOnce(r.state, r.helm) | 	return r.ctx.SyncReposOnce(r.state, r.helm) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | // TODO: Remove this function once Helmfile v0.x
 | ||||||
|  | func (r *Run) DeprecatedSyncCharts(c DeprecatedChartsConfigProvider) []error { | ||||||
|  | 	st := r.state | ||||||
|  | 	helm := r.helm | ||||||
|  | 
 | ||||||
|  | 	affectedReleases := state.AffectedReleases{} | ||||||
|  | 	errs := st.SyncReleases(&affectedReleases, helm, c.Values(), c.Concurrency()) | ||||||
|  | 	affectedReleases.DisplayAffectedReleases(c.Logger()) | ||||||
|  | 	return errs | ||||||
|  | } | ||||||
|  | 
 | ||||||
| func (r *Run) diff(triggerCleanupEvent bool, detailedExitCode bool, c DiffConfigProvider, diffOpts *state.DiffOpts) (*string, map[string]state.ReleaseSpec, map[string]state.ReleaseSpec, []error) { | func (r *Run) diff(triggerCleanupEvent bool, detailedExitCode bool, c DiffConfigProvider, diffOpts *state.DiffOpts) (*string, map[string]state.ReleaseSpec, map[string]state.ReleaseSpec, []error) { | ||||||
| 	st := r.state | 	st := r.state | ||||||
| 	helm := r.helm | 	helm := r.helm | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | ||||||
| 0 release(s) matching app=test_non_existent found in helmfile.yaml | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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=test2 found in helmfile.yaml | 1 release(s) matching name=test2 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 1 release(s) matching name=test3 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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=test2 found in helmfile.yaml | 1 release(s) matching name=test2 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 1 release(s) matching name=test3 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 1 release(s) matching name=test3 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: a | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: default | ||||||
|  |  5: - name: b | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: default | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: a | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: default | ||||||
|  |  5: - name: b | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: default | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 1 release(s) matching name=a found in helmfile.yaml | 1 release(s) matching name=a found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: a | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   installed: false | ||||||
|  |  5:   namespace: default | ||||||
|  |  6: - name: b | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: default | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: a | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   installed: false | ||||||
|  |  5:   namespace: default | ||||||
|  |  6: - name: b | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: default | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 1 release(s) matching name=a found in helmfile.yaml | 1 release(s) matching name=a found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: ns1 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns2/bar | ||||||
|  |  7: - name: bar | ||||||
|  |  8:   chart: mychart2 | ||||||
|  |  9:   namespace: ns2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: ns1 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns2/bar | ||||||
|  |  7: - name: bar | ||||||
|  |  8:   chart: mychart2 | ||||||
|  |  9:   namespace: ns2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   installed: false | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   installed: false | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   installed: false | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - bar | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   installed: false | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - bar | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   namespace: ns2 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns1/foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   namespace: ns1 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   namespace: ns2 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns1/foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   namespace: ns1 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   chart: mychart3 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8: - name: bar | ||||||
|  |  9:   chart: mychart2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   chart: mychart3 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8: - name: bar | ||||||
|  |  9:   chart: mychart2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 3 release(s) found in helmfile.yaml | 3 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,8 +0,0 @@ | ||||||
| processing file "helmfile.yaml" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs |  | ||||||
| 2 release(s) found in helmfile.yaml |  | ||||||
| 
 |  | ||||||
| err: release(s) "default//foo" depend(s) on an undefined release "default//bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"? |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,126 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: database | ||||||
|  |  3:   chart: charts/mysql | ||||||
|  |  4:   needs: | ||||||
|  |  5:   - logging | ||||||
|  |  6: - name: frontend-v1 | ||||||
|  |  7:   chart: charts/frontend | ||||||
|  |  8:   installed: false | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - servicemesh | ||||||
|  | 11:   - logging | ||||||
|  | 12:   - backend-v1 | ||||||
|  | 13: - name: frontend-v2 | ||||||
|  | 14:   chart: charts/frontend | ||||||
|  | 15:   needs: | ||||||
|  | 16:   - servicemesh | ||||||
|  | 17:   - logging | ||||||
|  | 18:   - backend-v2 | ||||||
|  | 19: - name: frontend-v3 | ||||||
|  | 20:   chart: charts/frontend | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - servicemesh | ||||||
|  | 23:   - logging | ||||||
|  | 24:   - backend-v2 | ||||||
|  | 25: - name: backend-v1 | ||||||
|  | 26:   chart: charts/backend | ||||||
|  | 27:   installed: false | ||||||
|  | 28:   needs: | ||||||
|  | 29:   - servicemesh | ||||||
|  | 30:   - logging | ||||||
|  | 31:   - database | ||||||
|  | 32:   - anotherbackend | ||||||
|  | 33: - name: backend-v2 | ||||||
|  | 34:   chart: charts/backend | ||||||
|  | 35:   needs: | ||||||
|  | 36:   - servicemesh | ||||||
|  | 37:   - logging | ||||||
|  | 38:   - database | ||||||
|  | 39:   - anotherbackend | ||||||
|  | 40: - name: anotherbackend | ||||||
|  | 41:   chart: charts/anotherbackend | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - servicemesh | ||||||
|  | 44:   - logging | ||||||
|  | 45:   - database | ||||||
|  | 46: - name: servicemesh | ||||||
|  | 47:   chart: charts/istio | ||||||
|  | 48:   needs: | ||||||
|  | 49:   - logging | ||||||
|  | 50: - name: logging | ||||||
|  | 51:   chart: charts/fluent-bit | ||||||
|  | 52: - name: front-proxy | ||||||
|  | 53:   chart: stable/envoy | ||||||
|  | 54:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: database | ||||||
|  |  3:   chart: charts/mysql | ||||||
|  |  4:   needs: | ||||||
|  |  5:   - logging | ||||||
|  |  6: - name: frontend-v1 | ||||||
|  |  7:   chart: charts/frontend | ||||||
|  |  8:   installed: false | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - servicemesh | ||||||
|  | 11:   - logging | ||||||
|  | 12:   - backend-v1 | ||||||
|  | 13: - name: frontend-v2 | ||||||
|  | 14:   chart: charts/frontend | ||||||
|  | 15:   needs: | ||||||
|  | 16:   - servicemesh | ||||||
|  | 17:   - logging | ||||||
|  | 18:   - backend-v2 | ||||||
|  | 19: - name: frontend-v3 | ||||||
|  | 20:   chart: charts/frontend | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - servicemesh | ||||||
|  | 23:   - logging | ||||||
|  | 24:   - backend-v2 | ||||||
|  | 25: - name: backend-v1 | ||||||
|  | 26:   chart: charts/backend | ||||||
|  | 27:   installed: false | ||||||
|  | 28:   needs: | ||||||
|  | 29:   - servicemesh | ||||||
|  | 30:   - logging | ||||||
|  | 31:   - database | ||||||
|  | 32:   - anotherbackend | ||||||
|  | 33: - name: backend-v2 | ||||||
|  | 34:   chart: charts/backend | ||||||
|  | 35:   needs: | ||||||
|  | 36:   - servicemesh | ||||||
|  | 37:   - logging | ||||||
|  | 38:   - database | ||||||
|  | 39:   - anotherbackend | ||||||
|  | 40: - name: anotherbackend | ||||||
|  | 41:   chart: charts/anotherbackend | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - servicemesh | ||||||
|  | 44:   - logging | ||||||
|  | 45:   - database | ||||||
|  | 46: - name: servicemesh | ||||||
|  | 47:   chart: charts/istio | ||||||
|  | 48:   needs: | ||||||
|  | 49:   - logging | ||||||
|  | 50: - name: logging | ||||||
|  | 51:   chart: charts/fluent-bit | ||||||
|  | 52: - name: front-proxy | ||||||
|  | 53:   chart: stable/envoy | ||||||
|  | 54:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release frontend-v1 needs backend-v1, but backend-v1 is not installed due to installed: false. Either mark backend-v1 as installed or remove backend-v1 from frontend-v1's needs | WARNING: release frontend-v1 needs backend-v1, but backend-v1 is not installed due to installed: false. Either mark backend-v1 as installed or remove backend-v1 from frontend-v1's needs | ||||||
| 10 release(s) found in helmfile.yaml | 10 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,7 +0,0 @@ | ||||||
| processing file "helmfile.yaml" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| 1 release(s) matching name=foo found in helmfile.yaml |  | ||||||
| 
 |  | ||||||
| err: release "default//foo" depends on "default//bar" which does not match the selectors. Please add a selector like "--selector name=bar", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: helmDefaults: | ||||||
|  |  2:   kubeContext: hello/world | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6: - name: foo | ||||||
|  |  7:   chart: mychart1 | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - bar | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: helmDefaults: | ||||||
|  |  2:   kubeContext: hello/world | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6: - name: foo | ||||||
|  |  7:   chart: mychart1 | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - bar | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,42 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: releaseA | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: namespaceA | ||||||
|  |  5:   kubeContext: arn:aws:eks:us-east-1:1234567890:cluster/myekscluster | ||||||
|  |  6: - name: releaseB | ||||||
|  |  7:   chart: mychart2 | ||||||
|  |  8:   namespace: namespaceA | ||||||
|  |  9:   kubeContext: arn:aws:eks:us-east-1:1234567890:cluster/myekscluster | ||||||
|  | 10:   needs: | ||||||
|  | 11:     - arn:aws:eks:us-east-1:1234567890:cluster/myekscluster/namespaceA/releaseA | ||||||
|  | 12:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: releaseA | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: namespaceA | ||||||
|  |  5:   kubeContext: arn:aws:eks:us-east-1:1234567890:cluster/myekscluster | ||||||
|  |  6: - name: releaseB | ||||||
|  |  7:   chart: mychart2 | ||||||
|  |  8:   namespace: namespaceA | ||||||
|  |  9:   kubeContext: arn:aws:eks:us-east-1:1234567890:cluster/myekscluster | ||||||
|  | 10:   needs: | ||||||
|  | 11:     - arn:aws:eks:us-east-1:1234567890:cluster/myekscluster/namespaceA/releaseA | ||||||
|  | 12:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: ns1 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns2/bar | ||||||
|  |  7: - name: bar | ||||||
|  |  8:   chart: mychart2 | ||||||
|  |  9:   namespace: ns2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: ns1 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns2/bar | ||||||
|  |  7: - name: bar | ||||||
|  |  8:   chart: mychart2 | ||||||
|  |  9:   namespace: ns2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,33 +0,0 @@ | ||||||
| processing file "helmfile.yaml.gotmpl" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default  map[] map[]}, overrode=<nil> |  | ||||||
| rendering result of "helmfile.yaml.gotmpl.part.0": |  | ||||||
|  0:  |  | ||||||
|  1:  |  | ||||||
|  2:  |  | ||||||
|  3: releases: |  | ||||||
|  4: - name: kubernetes-external-secrets |  | ||||||
|  5:   chart: incubator/raw |  | ||||||
|  6:   namespace: kube-system |  | ||||||
|  7:  |  | ||||||
|  8: - name: external-secrets |  | ||||||
|  9:   chart: incubator/raw |  | ||||||
| 10:   namespace: default |  | ||||||
| 11:   labels: |  | ||||||
| 12:     app: test |  | ||||||
| 13:   needs: |  | ||||||
| 14:   - kube-system/kubernetes-external-secrets |  | ||||||
| 15:  |  | ||||||
| 16: - name: my-release |  | ||||||
| 17:   chart: incubator/raw |  | ||||||
| 18:   namespace: default |  | ||||||
| 19:   labels: |  | ||||||
| 20:     app: test |  | ||||||
| 21:   needs: |  | ||||||
| 22:   - default/external-secrets |  | ||||||
| 23:  |  | ||||||
| 
 |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| 0 release(s) matching app=test_non_existent found in helmfile.yaml.gotmpl |  | ||||||
| 
 |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,34 +0,0 @@ | ||||||
| processing file "helmfile.yaml.gotmpl" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default  map[] map[]}, overrode=<nil> |  | ||||||
| rendering result of "helmfile.yaml.gotmpl.part.0": |  | ||||||
|  0:  |  | ||||||
|  1:  |  | ||||||
|  2:  |  | ||||||
|  3: releases: |  | ||||||
|  4: - name: kubernetes-external-secrets |  | ||||||
|  5:   chart: incubator/raw |  | ||||||
|  6:   namespace: kube-system |  | ||||||
|  7:  |  | ||||||
|  8: - name: external-secrets |  | ||||||
|  9:   chart: incubator/raw |  | ||||||
| 10:   namespace: default |  | ||||||
| 11:   labels: |  | ||||||
| 12:     app: test |  | ||||||
| 13:   needs: |  | ||||||
| 14:   - kube-system/kubernetes-external-secrets |  | ||||||
| 15:  |  | ||||||
| 16: - name: my-release |  | ||||||
| 17:   chart: incubator/raw |  | ||||||
| 18:   namespace: default |  | ||||||
| 19:   labels: |  | ||||||
| 20:     app: test |  | ||||||
| 21:   needs: |  | ||||||
| 22:   - default/external-secrets |  | ||||||
| 23:  |  | ||||||
| 
 |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| 2 release(s) matching app=test found in helmfile.yaml.gotmpl |  | ||||||
| 
 |  | ||||||
| err: release "default/default/external-secrets" depends on "default/kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,7 +1,39 @@ | ||||||
| processing file "helmfile.yaml.gotmpl" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
| rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
| rendering result of "helmfile.yaml.gotmpl.part.0": | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  0:  |  0:  | ||||||
|  1:  |  1:  | ||||||
|  2:  |  2:  | ||||||
|  | @ -28,7 +60,7 @@ rendering result of "helmfile.yaml.gotmpl.part.0": | ||||||
| 23:  | 23:  | ||||||
| 
 | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) matching app=test found in helmfile.yaml.gotmpl | 2 release(s) matching app=test found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
| processing 2 groups of releases in this order: | processing 2 groups of releases in this order: | ||||||
| GROUP RELEASES | GROUP RELEASES | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: ns1 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns2/bar | ||||||
|  |  7: - name: bar | ||||||
|  |  8:   chart: mychart2 | ||||||
|  |  9:   namespace: ns2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   namespace: ns1 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns2/bar | ||||||
|  |  7: - name: bar | ||||||
|  |  8:   chart: mychart2 | ||||||
|  |  9:   namespace: ns2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   installed: false | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   installed: false | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   installed: false | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - bar | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: foo | ||||||
|  |  6:   chart: mychart1 | ||||||
|  |  7:   installed: false | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - bar | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4:   installed: false | ||||||
|  |  5: - name: bar | ||||||
|  |  6:   chart: mychart2 | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - foo | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | WARNING: release bar needs foo, but foo is not installed due to installed: false. Either mark foo as installed or remove foo from bar's needs | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   namespace: ns2 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns1/foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   namespace: ns1 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   namespace: ns2 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns1/foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   namespace: ns1 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   namespace: ns2 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns1/foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   namespace: ns1 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4:   namespace: ns2 | ||||||
|  |  5:   needs: | ||||||
|  |  6:   - ns1/foo | ||||||
|  |  7: - name: foo | ||||||
|  |  8:   chart: mychart1 | ||||||
|  |  9:   namespace: ns1 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,38 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   chart: mychart3 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8: - name: bar | ||||||
|  |  9:   chart: mychart2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: baz | ||||||
|  |  3:   chart: mychart3 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8: - name: bar | ||||||
|  |  9:   chart: mychart2 | ||||||
|  | 10:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 3 release(s) found in helmfile.yaml | 3 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,8 +0,0 @@ | ||||||
| processing file "helmfile.yaml" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| WARNING: release foo needs bar, but bar is not installed due to installed: false. Either mark bar as installed or remove bar from foo's needs |  | ||||||
| 2 release(s) found in helmfile.yaml |  | ||||||
| 
 |  | ||||||
| err: release(s) "foo" depend(s) on an undefined release "bar". Perhaps you made a typo in "needs" or forgot defining a release named "bar" with appropriate "namespace" and "kubeContext"? |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,5 +1,36 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   installed: false | ||||||
|  |  7:   needs: | ||||||
|  |  8:   - bar | ||||||
|  |  9:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,126 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: database | ||||||
|  |  3:   chart: charts/mysql | ||||||
|  |  4:   needs: | ||||||
|  |  5:   - logging | ||||||
|  |  6: - name: frontend-v1 | ||||||
|  |  7:   chart: charts/frontend | ||||||
|  |  8:   installed: false | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - servicemesh | ||||||
|  | 11:   - logging | ||||||
|  | 12:   - backend-v1 | ||||||
|  | 13: - name: frontend-v2 | ||||||
|  | 14:   chart: charts/frontend | ||||||
|  | 15:   needs: | ||||||
|  | 16:   - servicemesh | ||||||
|  | 17:   - logging | ||||||
|  | 18:   - backend-v2 | ||||||
|  | 19: - name: frontend-v3 | ||||||
|  | 20:   chart: charts/frontend | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - servicemesh | ||||||
|  | 23:   - logging | ||||||
|  | 24:   - backend-v2 | ||||||
|  | 25: - name: backend-v1 | ||||||
|  | 26:   chart: charts/backend | ||||||
|  | 27:   installed: false | ||||||
|  | 28:   needs: | ||||||
|  | 29:   - servicemesh | ||||||
|  | 30:   - logging | ||||||
|  | 31:   - database | ||||||
|  | 32:   - anotherbackend | ||||||
|  | 33: - name: backend-v2 | ||||||
|  | 34:   chart: charts/backend | ||||||
|  | 35:   needs: | ||||||
|  | 36:   - servicemesh | ||||||
|  | 37:   - logging | ||||||
|  | 38:   - database | ||||||
|  | 39:   - anotherbackend | ||||||
|  | 40: - name: anotherbackend | ||||||
|  | 41:   chart: charts/anotherbackend | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - servicemesh | ||||||
|  | 44:   - logging | ||||||
|  | 45:   - database | ||||||
|  | 46: - name: servicemesh | ||||||
|  | 47:   chart: charts/istio | ||||||
|  | 48:   needs: | ||||||
|  | 49:   - logging | ||||||
|  | 50: - name: logging | ||||||
|  | 51:   chart: charts/fluent-bit | ||||||
|  | 52: - name: front-proxy | ||||||
|  | 53:   chart: stable/envoy | ||||||
|  | 54:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: database | ||||||
|  |  3:   chart: charts/mysql | ||||||
|  |  4:   needs: | ||||||
|  |  5:   - logging | ||||||
|  |  6: - name: frontend-v1 | ||||||
|  |  7:   chart: charts/frontend | ||||||
|  |  8:   installed: false | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - servicemesh | ||||||
|  | 11:   - logging | ||||||
|  | 12:   - backend-v1 | ||||||
|  | 13: - name: frontend-v2 | ||||||
|  | 14:   chart: charts/frontend | ||||||
|  | 15:   needs: | ||||||
|  | 16:   - servicemesh | ||||||
|  | 17:   - logging | ||||||
|  | 18:   - backend-v2 | ||||||
|  | 19: - name: frontend-v3 | ||||||
|  | 20:   chart: charts/frontend | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - servicemesh | ||||||
|  | 23:   - logging | ||||||
|  | 24:   - backend-v2 | ||||||
|  | 25: - name: backend-v1 | ||||||
|  | 26:   chart: charts/backend | ||||||
|  | 27:   installed: false | ||||||
|  | 28:   needs: | ||||||
|  | 29:   - servicemesh | ||||||
|  | 30:   - logging | ||||||
|  | 31:   - database | ||||||
|  | 32:   - anotherbackend | ||||||
|  | 33: - name: backend-v2 | ||||||
|  | 34:   chart: charts/backend | ||||||
|  | 35:   needs: | ||||||
|  | 36:   - servicemesh | ||||||
|  | 37:   - logging | ||||||
|  | 38:   - database | ||||||
|  | 39:   - anotherbackend | ||||||
|  | 40: - name: anotherbackend | ||||||
|  | 41:   chart: charts/anotherbackend | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - servicemesh | ||||||
|  | 44:   - logging | ||||||
|  | 45:   - database | ||||||
|  | 46: - name: servicemesh | ||||||
|  | 47:   chart: charts/istio | ||||||
|  | 48:   needs: | ||||||
|  | 49:   - logging | ||||||
|  | 50: - name: logging | ||||||
|  | 51:   chart: charts/fluent-bit | ||||||
|  | 52: - name: front-proxy | ||||||
|  | 53:   chart: stable/envoy | ||||||
|  | 54:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| WARNING: release frontend-v1 needs backend-v1, but backend-v1 is not installed due to installed: false. Either mark backend-v1 as installed or remove backend-v1 from frontend-v1's needs | WARNING: release frontend-v1 needs backend-v1, but backend-v1 is not installed due to installed: false. Either mark backend-v1 as installed or remove backend-v1 from frontend-v1's needs | ||||||
| 10 release(s) found in helmfile.yaml | 10 release(s) found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: foo | ||||||
|  |  3:   chart: mychart1 | ||||||
|  |  4: - name: bar | ||||||
|  |  5:   chart: mychart2 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - foo | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,5 +1,34 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: bar | ||||||
|  |  3:   chart: mychart2 | ||||||
|  |  4: - name: foo | ||||||
|  |  5:   chart: mychart1 | ||||||
|  |  6:   needs: | ||||||
|  |  7:   - bar | ||||||
|  |  8:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) found in helmfile.yaml | 2 release(s) found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,33 +0,0 @@ | ||||||
| processing file "helmfile.yaml.gotmpl" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default  map[] map[]}, overrode=<nil> |  | ||||||
| rendering result of "helmfile.yaml.gotmpl.part.0": |  | ||||||
|  0:  |  | ||||||
|  1:  |  | ||||||
|  2:  |  | ||||||
|  3: releases: |  | ||||||
|  4: - name: kubernetes-external-secrets |  | ||||||
|  5:   chart: incubator/raw |  | ||||||
|  6:   namespace: kube-system |  | ||||||
|  7:  |  | ||||||
|  8: - name: external-secrets |  | ||||||
|  9:   chart: incubator/raw |  | ||||||
| 10:   namespace: default |  | ||||||
| 11:   labels: |  | ||||||
| 12:     app: test |  | ||||||
| 13:   needs: |  | ||||||
| 14:   - kube-system/kubernetes-external-secrets |  | ||||||
| 15:  |  | ||||||
| 16: - name: my-release |  | ||||||
| 17:   chart: incubator/raw |  | ||||||
| 18:   namespace: default |  | ||||||
| 19:   labels: |  | ||||||
| 20:     app: test |  | ||||||
| 21:   needs: |  | ||||||
| 22:   - default/external-secrets |  | ||||||
| 23:  |  | ||||||
| 
 |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| 0 release(s) matching app=test_non_existent found in helmfile.yaml.gotmpl |  | ||||||
| 
 |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,34 +0,0 @@ | ||||||
| processing file "helmfile.yaml.gotmpl" in directory "." |  | ||||||
| changing working directory to "/path/to" |  | ||||||
| rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default  map[] map[]}, overrode=<nil> |  | ||||||
| rendering result of "helmfile.yaml.gotmpl.part.0": |  | ||||||
|  0:  |  | ||||||
|  1:  |  | ||||||
|  2:  |  | ||||||
|  3: releases: |  | ||||||
|  4: - name: kubernetes-external-secrets |  | ||||||
|  5:   chart: incubator/raw |  | ||||||
|  6:   namespace: kube-system |  | ||||||
|  7:  |  | ||||||
|  8: - name: external-secrets |  | ||||||
|  9:   chart: incubator/raw |  | ||||||
| 10:   namespace: default |  | ||||||
| 11:   labels: |  | ||||||
| 12:     app: test |  | ||||||
| 13:   needs: |  | ||||||
| 14:   - kube-system/kubernetes-external-secrets |  | ||||||
| 15:  |  | ||||||
| 16: - name: my-release |  | ||||||
| 17:   chart: incubator/raw |  | ||||||
| 18:   namespace: default |  | ||||||
| 19:   labels: |  | ||||||
| 20:     app: test |  | ||||||
| 21:   needs: |  | ||||||
| 22:   - default/external-secrets |  | ||||||
| 23:  |  | ||||||
| 
 |  | ||||||
| merged environment: &{default  map[] map[]} |  | ||||||
| 2 release(s) matching app=test found in helmfile.yaml.gotmpl |  | ||||||
| 
 |  | ||||||
| err: release "default/external-secrets" depends on "kube-system/kubernetes-external-secrets" which does not match the selectors. Please add a selector like "--selector name=kubernetes-external-secrets", or indicate whether to skip (--skip-needs) or include (--include-needs) these dependencies |  | ||||||
| changing working directory back to "/path/to" |  | ||||||
|  | @ -1,7 +1,39 @@ | ||||||
| processing file "helmfile.yaml.gotmpl" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
| rendering starting for "helmfile.yaml.gotmpl.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
| rendering result of "helmfile.yaml.gotmpl.part.0": | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1:  | ||||||
|  |  2:  | ||||||
|  |  3: releases: | ||||||
|  |  4: - name: kubernetes-external-secrets | ||||||
|  |  5:   chart: incubator/raw | ||||||
|  |  6:   namespace: kube-system | ||||||
|  |  7:  | ||||||
|  |  8: - name: external-secrets | ||||||
|  |  9:   chart: incubator/raw | ||||||
|  | 10:   namespace: default | ||||||
|  | 11:   labels: | ||||||
|  | 12:     app: test | ||||||
|  | 13:   needs: | ||||||
|  | 14:   - kube-system/kubernetes-external-secrets | ||||||
|  | 15:  | ||||||
|  | 16: - name: my-release | ||||||
|  | 17:   chart: incubator/raw | ||||||
|  | 18:   namespace: default | ||||||
|  | 19:   labels: | ||||||
|  | 20:     app: test | ||||||
|  | 21:   needs: | ||||||
|  | 22:   - default/external-secrets | ||||||
|  | 23:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  0:  |  0:  | ||||||
|  1:  |  1:  | ||||||
|  2:  |  2:  | ||||||
|  | @ -28,7 +60,7 @@ rendering result of "helmfile.yaml.gotmpl.part.0": | ||||||
| 23:  | 23:  | ||||||
| 
 | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| 2 release(s) matching app=test found in helmfile.yaml.gotmpl | 2 release(s) matching app=test found in helmfile.yaml | ||||||
| 
 | 
 | ||||||
| processing 2 groups of releases in this order: | processing 2 groups of releases in this order: | ||||||
| GROUP RELEASES | GROUP RELEASES | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | ||||||
| 0 release(s) matching app=test_non_existent found in helmfile.yaml | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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=test2 found in helmfile.yaml | 1 release(s) matching name=test2 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 1 release(s) matching name=test3 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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=test2 found in helmfile.yaml | 1 release(s) matching name=test2 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 1 release(s) matching name=test3 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 1 release(s) matching name=test3 found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,16 +1,221 @@ | ||||||
| found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | ||||||
| processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.1": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.1": | ||||||
|  |  0: releases: | ||||||
|  |  1: - name: logging | ||||||
|  |  2:   chart: incubator/raw | ||||||
|  |  3:   namespace: kube-system | ||||||
|  |  4:  | ||||||
|  |  5: - name: kubernetes-external-secrets | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: kube-system | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - kube-system/logging | ||||||
|  | 10:  | ||||||
|  | 11: - name: external-secrets | ||||||
|  | 12:   chart: incubator/raw | ||||||
|  | 13:   namespace: default | ||||||
|  | 14:   labels: | ||||||
|  | 15:     app: test | ||||||
|  | 16:   needs: | ||||||
|  | 17:   - kube-system/kubernetes-external-secrets | ||||||
|  | 18:  | ||||||
|  | 19: - name: my-release | ||||||
|  | 20:   chart: incubator/raw | ||||||
|  | 21:   namespace: default | ||||||
|  | 22:   labels: | ||||||
|  | 23:     app: test | ||||||
|  | 24:   needs: | ||||||
|  | 25:   - default/external-secrets | ||||||
|  | 26:  | ||||||
|  | 27:  | ||||||
|  | 28: # Disabled releases are treated as missing | ||||||
|  | 29: - name: disabled | ||||||
|  | 30:   chart: incubator/raw | ||||||
|  | 31:   namespace: kube-system | ||||||
|  | 32:   installed: false | ||||||
|  | 33:  | ||||||
|  | 34: - name: test2 | ||||||
|  | 35:   chart: incubator/raw | ||||||
|  | 36:   needs: | ||||||
|  | 37:   - kube-system/disabled | ||||||
|  | 38:  | ||||||
|  | 39: - name: test3 | ||||||
|  | 40:   chart: incubator/raw | ||||||
|  | 41:   needs: | ||||||
|  | 42:   - test2 | ||||||
|  | 43:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.1": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.1": | ||||||
|  |  0: releases: | ||||||
|  |  1: - name: logging | ||||||
|  |  2:   chart: incubator/raw | ||||||
|  |  3:   namespace: kube-system | ||||||
|  |  4:  | ||||||
|  |  5: - name: kubernetes-external-secrets | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: kube-system | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - kube-system/logging | ||||||
|  | 10:  | ||||||
|  | 11: - name: external-secrets | ||||||
|  | 12:   chart: incubator/raw | ||||||
|  | 13:   namespace: default | ||||||
|  | 14:   labels: | ||||||
|  | 15:     app: test | ||||||
|  | 16:   needs: | ||||||
|  | 17:   - kube-system/kubernetes-external-secrets | ||||||
|  | 18:  | ||||||
|  | 19: - name: my-release | ||||||
|  | 20:   chart: incubator/raw | ||||||
|  | 21:   namespace: default | ||||||
|  | 22:   labels: | ||||||
|  | 23:     app: test | ||||||
|  | 24:   needs: | ||||||
|  | 25:   - default/external-secrets | ||||||
|  | 26:  | ||||||
|  | 27:  | ||||||
|  | 28: # Disabled releases are treated as missing | ||||||
|  | 29: - name: disabled | ||||||
|  | 30:   chart: incubator/raw | ||||||
|  | 31:   namespace: kube-system | ||||||
|  | 32:   installed: false | ||||||
|  | 33:  | ||||||
|  | 34: - name: test2 | ||||||
|  | 35:   chart: incubator/raw | ||||||
|  | 36:   needs: | ||||||
|  | 37:   - kube-system/disabled | ||||||
|  | 38:  | ||||||
|  | 39: - name: test3 | ||||||
|  | 40:   chart: incubator/raw | ||||||
|  | 41:   needs: | ||||||
|  | 42:   - test2 | ||||||
|  | 43:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.1": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.1": | ||||||
|  |  0: repositories: | ||||||
|  |  1: - name: bitnami | ||||||
|  |  2:   url: https://charts.bitnami.com/bitnami | ||||||
|  |  3:  | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: cache | ||||||
|  |  6:   namespace: my-app | ||||||
|  |  7:   chart: bitnami/redis | ||||||
|  |  8:   version: 17.0.7 | ||||||
|  |  9:   labels: | ||||||
|  | 10:     app: test | ||||||
|  | 11:  | ||||||
|  | 12: - name: database | ||||||
|  | 13:   namespace: my-app | ||||||
|  | 14:   chart: bitnami/postgres | ||||||
|  | 15:   version: 11.6.22 | ||||||
|  | 16:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.1": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.1": | ||||||
|  |  0: repositories: | ||||||
|  |  1: - name: bitnami | ||||||
|  |  2:   url: https://charts.bitnami.com/bitnami | ||||||
|  |  3:  | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: cache | ||||||
|  |  6:   namespace: my-app | ||||||
|  |  7:   chart: bitnami/redis | ||||||
|  |  8:   version: 17.0.7 | ||||||
|  |  9:   labels: | ||||||
|  | 10:     app: test | ||||||
|  | 11:  | ||||||
|  | 12: - name: database | ||||||
|  | 13:   namespace: my-app | ||||||
|  | 14:   chart: bitnami/postgres | ||||||
|  | 15:   version: 11.6.22 | ||||||
|  | 16:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_3.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_3.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
|  |  | ||||||
|  | @ -1,13 +1,74 @@ | ||||||
| found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | ||||||
| processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.0": inherited=&{staging  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{staging  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{staging  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.0": {staging  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{staging  map[] map[]} | merged environment: &{staging  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.0": inherited=&{staging  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{staging  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{staging  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.0": {staging  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{staging  map[] map[]} | merged environment: &{staging  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_3.yaml.part.0": inherited=&{staging  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{staging  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{staging  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_3.yaml.part.0": {staging  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
| merged environment: &{staging  map[] map[]} | merged environment: &{staging  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
|  |  | ||||||
|  | @ -1,16 +1,221 @@ | ||||||
| found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | ||||||
| processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.0": inherited=&{shared  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{shared  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{shared  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.0": {shared  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{shared  map[] map[]} | merged environment: &{shared  map[] map[]} | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.1": inherited=&{shared  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{shared  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.1": | ||||||
|  |  0: releases: | ||||||
|  |  1: - name: logging | ||||||
|  |  2:   chart: incubator/raw | ||||||
|  |  3:   namespace: kube-system | ||||||
|  |  4:  | ||||||
|  |  5: - name: kubernetes-external-secrets | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: kube-system | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - kube-system/logging | ||||||
|  | 10:  | ||||||
|  | 11: - name: external-secrets | ||||||
|  | 12:   chart: incubator/raw | ||||||
|  | 13:   namespace: default | ||||||
|  | 14:   labels: | ||||||
|  | 15:     app: test | ||||||
|  | 16:   needs: | ||||||
|  | 17:   - kube-system/kubernetes-external-secrets | ||||||
|  | 18:  | ||||||
|  | 19: - name: my-release | ||||||
|  | 20:   chart: incubator/raw | ||||||
|  | 21:   namespace: default | ||||||
|  | 22:   labels: | ||||||
|  | 23:     app: test | ||||||
|  | 24:   needs: | ||||||
|  | 25:   - default/external-secrets | ||||||
|  | 26:  | ||||||
|  | 27:  | ||||||
|  | 28: # Disabled releases are treated as missing | ||||||
|  | 29: - name: disabled | ||||||
|  | 30:   chart: incubator/raw | ||||||
|  | 31:   namespace: kube-system | ||||||
|  | 32:   installed: false | ||||||
|  | 33:  | ||||||
|  | 34: - name: test2 | ||||||
|  | 35:   chart: incubator/raw | ||||||
|  | 36:   needs: | ||||||
|  | 37:   - kube-system/disabled | ||||||
|  | 38:  | ||||||
|  | 39: - name: test3 | ||||||
|  | 40:   chart: incubator/raw | ||||||
|  | 41:   needs: | ||||||
|  | 42:   - test2 | ||||||
|  | 43:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{shared  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.1": {shared  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.1": | ||||||
|  |  0: releases: | ||||||
|  |  1: - name: logging | ||||||
|  |  2:   chart: incubator/raw | ||||||
|  |  3:   namespace: kube-system | ||||||
|  |  4:  | ||||||
|  |  5: - name: kubernetes-external-secrets | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: kube-system | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - kube-system/logging | ||||||
|  | 10:  | ||||||
|  | 11: - name: external-secrets | ||||||
|  | 12:   chart: incubator/raw | ||||||
|  | 13:   namespace: default | ||||||
|  | 14:   labels: | ||||||
|  | 15:     app: test | ||||||
|  | 16:   needs: | ||||||
|  | 17:   - kube-system/kubernetes-external-secrets | ||||||
|  | 18:  | ||||||
|  | 19: - name: my-release | ||||||
|  | 20:   chart: incubator/raw | ||||||
|  | 21:   namespace: default | ||||||
|  | 22:   labels: | ||||||
|  | 23:     app: test | ||||||
|  | 24:   needs: | ||||||
|  | 25:   - default/external-secrets | ||||||
|  | 26:  | ||||||
|  | 27:  | ||||||
|  | 28: # Disabled releases are treated as missing | ||||||
|  | 29: - name: disabled | ||||||
|  | 30:   chart: incubator/raw | ||||||
|  | 31:   namespace: kube-system | ||||||
|  | 32:   installed: false | ||||||
|  | 33:  | ||||||
|  | 34: - name: test2 | ||||||
|  | 35:   chart: incubator/raw | ||||||
|  | 36:   needs: | ||||||
|  | 37:   - kube-system/disabled | ||||||
|  | 38:  | ||||||
|  | 39: - name: test3 | ||||||
|  | 40:   chart: incubator/raw | ||||||
|  | 41:   needs: | ||||||
|  | 42:   - test2 | ||||||
|  | 43:  | ||||||
|  | 
 | ||||||
| merged environment: &{shared  map[] map[]} | merged environment: &{shared  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 | 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 | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.0": inherited=&{shared  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{shared  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{shared  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.0": {shared  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{shared  map[] map[]} | merged environment: &{shared  map[] map[]} | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.1": inherited=&{shared  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{shared  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.1": | ||||||
|  |  0: repositories: | ||||||
|  |  1: - name: bitnami | ||||||
|  |  2:   url: https://charts.bitnami.com/bitnami | ||||||
|  |  3:  | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: cache | ||||||
|  |  6:   namespace: my-app | ||||||
|  |  7:   chart: bitnami/redis | ||||||
|  |  8:   version: 17.0.7 | ||||||
|  |  9:   labels: | ||||||
|  | 10:     app: test | ||||||
|  | 11:  | ||||||
|  | 12: - name: database | ||||||
|  | 13:   namespace: my-app | ||||||
|  | 14:   chart: bitnami/postgres | ||||||
|  | 15:   version: 11.6.22 | ||||||
|  | 16:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{shared  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.1": {shared  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.1": | ||||||
|  |  0: repositories: | ||||||
|  |  1: - name: bitnami | ||||||
|  |  2:   url: https://charts.bitnami.com/bitnami | ||||||
|  |  3:  | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: cache | ||||||
|  |  6:   namespace: my-app | ||||||
|  |  7:   chart: bitnami/redis | ||||||
|  |  8:   version: 17.0.7 | ||||||
|  |  9:   labels: | ||||||
|  | 10:     app: test | ||||||
|  | 11:  | ||||||
|  | 12: - name: database | ||||||
|  | 13:   namespace: my-app | ||||||
|  | 14:   chart: bitnami/postgres | ||||||
|  | 15:   version: 11.6.22 | ||||||
|  | 16:  | ||||||
|  | 
 | ||||||
| merged environment: &{shared  map[] map[]} | merged environment: &{shared  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_3.yaml.part.0": inherited=&{shared  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{shared  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{shared  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_3.yaml.part.0": {shared  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
| merged environment: &{shared  map[] map[]} | merged environment: &{shared  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
|  |  | ||||||
|  | @ -1,14 +1,120 @@ | ||||||
| found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | ||||||
| processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.0": inherited=&{test  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{test  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{test  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.0": {test  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{test  map[] map[]} | merged environment: &{test  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.0": inherited=&{test  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{test  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{test  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.0": {test  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{test  map[] map[]} | merged environment: &{test  map[] map[]} | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.1": inherited=&{test  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{test  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.1": | ||||||
|  |  0: repositories: | ||||||
|  |  1: - name: bitnami | ||||||
|  |  2:   url: https://charts.bitnami.com/bitnami | ||||||
|  |  3:  | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: cache | ||||||
|  |  6:   namespace: my-app | ||||||
|  |  7:   chart: bitnami/redis | ||||||
|  |  8:   version: 17.0.7 | ||||||
|  |  9:   labels: | ||||||
|  | 10:     app: test | ||||||
|  | 11:  | ||||||
|  | 12: - name: database | ||||||
|  | 13:   namespace: my-app | ||||||
|  | 14:   chart: bitnami/postgres | ||||||
|  | 15:   version: 11.6.22 | ||||||
|  | 16:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{test  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.1": {test  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.1": | ||||||
|  |  0: repositories: | ||||||
|  |  1: - name: bitnami | ||||||
|  |  2:   url: https://charts.bitnami.com/bitnami | ||||||
|  |  3:  | ||||||
|  |  4: releases: | ||||||
|  |  5: - name: cache | ||||||
|  |  6:   namespace: my-app | ||||||
|  |  7:   chart: bitnami/redis | ||||||
|  |  8:   version: 17.0.7 | ||||||
|  |  9:   labels: | ||||||
|  | 10:     app: test | ||||||
|  | 11:  | ||||||
|  | 12: - name: database | ||||||
|  | 13:   namespace: my-app | ||||||
|  | 14:   chart: bitnami/postgres | ||||||
|  | 15:   version: 11.6.22 | ||||||
|  | 16:  | ||||||
|  | 
 | ||||||
| merged environment: &{test  map[] map[]} | merged environment: &{test  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_3.yaml.part.0": inherited=&{test  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{test  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{test  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_3.yaml.part.0": {test  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
| merged environment: &{test  map[] map[]} | merged environment: &{test  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
|  |  | ||||||
|  | @ -1,15 +1,175 @@ | ||||||
| found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | found 3 helmfile state files in helmfile.d: /path/to/helmfile.d/helmfile_1.yaml, /path/to/helmfile.d/helmfile_2.yaml, /path/to/helmfile.d/helmfile_3.yaml | ||||||
| processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_1.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.0": inherited=&{development  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{development  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{development  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.0": {development  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   development: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{development  map[] map[]} | merged environment: &{development  map[] map[]} | ||||||
|  | first-pass rendering starting for "helmfile_1.yaml.part.1": inherited=&{development  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{development  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_1.yaml.part.1": | ||||||
|  |  0: releases: | ||||||
|  |  1: - name: logging | ||||||
|  |  2:   chart: incubator/raw | ||||||
|  |  3:   namespace: kube-system | ||||||
|  |  4:  | ||||||
|  |  5: - name: kubernetes-external-secrets | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: kube-system | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - kube-system/logging | ||||||
|  | 10:  | ||||||
|  | 11: - name: external-secrets | ||||||
|  | 12:   chart: incubator/raw | ||||||
|  | 13:   namespace: default | ||||||
|  | 14:   labels: | ||||||
|  | 15:     app: test | ||||||
|  | 16:   needs: | ||||||
|  | 17:   - kube-system/kubernetes-external-secrets | ||||||
|  | 18:  | ||||||
|  | 19: - name: my-release | ||||||
|  | 20:   chart: incubator/raw | ||||||
|  | 21:   namespace: default | ||||||
|  | 22:   labels: | ||||||
|  | 23:     app: test | ||||||
|  | 24:   needs: | ||||||
|  | 25:   - default/external-secrets | ||||||
|  | 26:  | ||||||
|  | 27:  | ||||||
|  | 28: # Disabled releases are treated as missing | ||||||
|  | 29: - name: disabled | ||||||
|  | 30:   chart: incubator/raw | ||||||
|  | 31:   namespace: kube-system | ||||||
|  | 32:   installed: false | ||||||
|  | 33:  | ||||||
|  | 34: - name: test2 | ||||||
|  | 35:   chart: incubator/raw | ||||||
|  | 36:   needs: | ||||||
|  | 37:   - kube-system/disabled | ||||||
|  | 38:  | ||||||
|  | 39: - name: test3 | ||||||
|  | 40:   chart: incubator/raw | ||||||
|  | 41:   needs: | ||||||
|  | 42:   - test2 | ||||||
|  | 43:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{development  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_1.yaml.part.1": {development  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_1.yaml.part.1": | ||||||
|  |  0: releases: | ||||||
|  |  1: - name: logging | ||||||
|  |  2:   chart: incubator/raw | ||||||
|  |  3:   namespace: kube-system | ||||||
|  |  4:  | ||||||
|  |  5: - name: kubernetes-external-secrets | ||||||
|  |  6:   chart: incubator/raw | ||||||
|  |  7:   namespace: kube-system | ||||||
|  |  8:   needs: | ||||||
|  |  9:   - kube-system/logging | ||||||
|  | 10:  | ||||||
|  | 11: - name: external-secrets | ||||||
|  | 12:   chart: incubator/raw | ||||||
|  | 13:   namespace: default | ||||||
|  | 14:   labels: | ||||||
|  | 15:     app: test | ||||||
|  | 16:   needs: | ||||||
|  | 17:   - kube-system/kubernetes-external-secrets | ||||||
|  | 18:  | ||||||
|  | 19: - name: my-release | ||||||
|  | 20:   chart: incubator/raw | ||||||
|  | 21:   namespace: default | ||||||
|  | 22:   labels: | ||||||
|  | 23:     app: test | ||||||
|  | 24:   needs: | ||||||
|  | 25:   - default/external-secrets | ||||||
|  | 26:  | ||||||
|  | 27:  | ||||||
|  | 28: # Disabled releases are treated as missing | ||||||
|  | 29: - name: disabled | ||||||
|  | 30:   chart: incubator/raw | ||||||
|  | 31:   namespace: kube-system | ||||||
|  | 32:   installed: false | ||||||
|  | 33:  | ||||||
|  | 34: - name: test2 | ||||||
|  | 35:   chart: incubator/raw | ||||||
|  | 36:   needs: | ||||||
|  | 37:   - kube-system/disabled | ||||||
|  | 38:  | ||||||
|  | 39: - name: test3 | ||||||
|  | 40:   chart: incubator/raw | ||||||
|  | 41:   needs: | ||||||
|  | 42:   - test2 | ||||||
|  | 43:  | ||||||
|  | 
 | ||||||
| merged environment: &{development  map[] map[]} | merged environment: &{development  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 | 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 | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_2.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_2.yaml.part.0": inherited=&{development  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{development  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{development  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_2.yaml.part.0": {development  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_2.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: environments: | ||||||
|  |  2:   test: {} | ||||||
|  |  3:   shared: {} | ||||||
|  | 
 | ||||||
| merged environment: &{development  map[] map[]} | merged environment: &{development  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
| processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | processing file "helmfile_3.yaml" in directory "/path/to/helmfile.d" | ||||||
| changing working directory to "/path/to/helmfile.d" | changing working directory to "/path/to/helmfile.d" | ||||||
|  | first-pass rendering starting for "helmfile_3.yaml.part.0": inherited=&{development  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{development  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{development  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile_3.yaml.part.0": {development  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile_3.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: global | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  | 
 | ||||||
| merged environment: &{development  map[] map[]} | merged environment: &{development  map[] map[]} | ||||||
| changing working directory back to "/path/to" | changing working directory back to "/path/to" | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | ||||||
| 0 release(s) matching app=test_non_existent found in helmfile.yaml | 0 release(s) matching app=test_non_existent found in helmfile.yaml | ||||||
|  |  | ||||||
|  | @ -1,5 +1,106 @@ | ||||||
| processing file "helmfile.yaml" in directory "." | processing file "helmfile.yaml" in directory "." | ||||||
| changing working directory to "/path/to" | changing working directory to "/path/to" | ||||||
|  | first-pass rendering starting for "helmfile.yaml.part.0": inherited=&{default  map[] map[]}, overrode=<nil> | ||||||
|  | first-pass uses: &{default  map[] map[]} | ||||||
|  | first-pass rendering output of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
|  | first-pass produced: &{default  map[] map[]} | ||||||
|  | first-pass rendering result of "helmfile.yaml.part.0": {default  map[] map[]} | ||||||
|  | vals: | ||||||
|  | map[] | ||||||
|  | defaultVals:[] | ||||||
|  | second-pass rendering result of "helmfile.yaml.part.0": | ||||||
|  |  0:  | ||||||
|  |  1: releases: | ||||||
|  |  2: - name: logging | ||||||
|  |  3:   chart: incubator/raw | ||||||
|  |  4:   namespace: kube-system | ||||||
|  |  5:  | ||||||
|  |  6: - name: kubernetes-external-secrets | ||||||
|  |  7:   chart: incubator/raw | ||||||
|  |  8:   namespace: kube-system | ||||||
|  |  9:   needs: | ||||||
|  | 10:   - kube-system/logging | ||||||
|  | 11:  | ||||||
|  | 12: - name: external-secrets | ||||||
|  | 13:   chart: incubator/raw | ||||||
|  | 14:   namespace: default | ||||||
|  | 15:   labels: | ||||||
|  | 16:     app: test | ||||||
|  | 17:   needs: | ||||||
|  | 18:   - kube-system/kubernetes-external-secrets | ||||||
|  | 19:  | ||||||
|  | 20: - name: my-release | ||||||
|  | 21:   chart: incubator/raw | ||||||
|  | 22:   namespace: default | ||||||
|  | 23:   labels: | ||||||
|  | 24:     app: test | ||||||
|  | 25:   needs: | ||||||
|  | 26:   - default/external-secrets | ||||||
|  | 27:  | ||||||
|  | 28:  | ||||||
|  | 29: # Disabled releases are treated as missing | ||||||
|  | 30: - name: disabled | ||||||
|  | 31:   chart: incubator/raw | ||||||
|  | 32:   namespace: kube-system | ||||||
|  | 33:   installed: false | ||||||
|  | 34:  | ||||||
|  | 35: - name: test2 | ||||||
|  | 36:   chart: incubator/raw | ||||||
|  | 37:   needs: | ||||||
|  | 38:   - kube-system/disabled | ||||||
|  | 39:  | ||||||
|  | 40: - name: test3 | ||||||
|  | 41:   chart: incubator/raw | ||||||
|  | 42:   needs: | ||||||
|  | 43:   - test2 | ||||||
|  | 44:  | ||||||
|  | 
 | ||||||
| merged environment: &{default  map[] map[]} | merged environment: &{default  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 | 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 | 2 release(s) matching app=test found in helmfile.yaml | ||||||
|  |  | ||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue