* Add `Prompt`, with `prompts.enabled` setting in `argocd-cm`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Make `SettingsOpts`, `SettingsOpts.ArgocdCMPath`, `SettingsOpts.CreateSettingsManager()` and `commandContext.CreateSettingsManager()` exportable
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add `prompt_test.go`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Refactor `NewPrompt()` and move into new package `utils`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Update `NewPrompt()` to use local config
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add `NewConfigurationCommand()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Move `prompt_test.go`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Remove `prompt_test.go` for now
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add back and update `prompt_test.go`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add `configuration_test.go`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Fix linting issues
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Fix linting issues
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Reverse early-termination logic in `Confirm()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Rename `ArgocdCMPath` to `argocdCMPath`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Rename `SettingsOpts` to `settingsOpts`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Rename `CreateSettingsManager()` to `createSettingsManager()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Rename `configuration` to `configure`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Further rename `configuration` to `configure`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Remove redundant Argo CD ConfigMap logic
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Fix terminal output spacing
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Make `argocd configure` use local config value as the default value for `--prompts-enabled`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add global CLI flag `--force-prompts-enabled`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Update existing `prompt_test.go` test cases
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add test case for `(p *Prompt).Confirm()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add test cases for `GetBoolFlagWithFallback()` to `env_test.go`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Format imports
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Further format imports and remove unused variable
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Again format imports
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add fallback to `GetPromptsEnabled()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Fix bug in `GetPromptsEnabled()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Fix missing import
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add auto-generated docs for `argocd configure`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add auto-generated docs for new global CLI flag `--force-prompts-enabled`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Update `NewPrompt()` to receive a `bool` rather than `*apiclient.ClientOptions` arg
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Remove arg `fallback` from `GetPromptsEnabled()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add arg `useCLIOpts bool` to `GetPromptsEnabled()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Make `config.LoadFlags()` exportable
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Add tests for `GetPromptsEnabled()`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Fix linting errors in tests
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
* Run `make codegen-local`
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
---------
Signed-off-by: David Wu <155603967+david-wu-octopus@users.noreply.github.com>
This commit replaces `os.Setenv` with `t.Setenv` in tests. The
environment variable is automatically restored to its original value
when the test and all its subtests complete.
Reference: https://pkg.go.dev/testing#T.Setenv
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>