Emit warnings about deprecated settings [#10]

These aren't an error case--the plugin will work just fine--but users
should be aware they (the settings) aren't being respected.
This commit is contained in:
Erin Call
2019-12-31 10:03:53 -08:00
parent 353bd76f8f
commit 7cd46bb8b1
3 changed files with 38 additions and 2 deletions

View File

@@ -1,6 +1,7 @@
package helm
import (
"fmt"
"github.com/stretchr/testify/suite"
"os"
"strings"
@@ -123,6 +124,24 @@ func (suite *ConfigTestSuite) TestNewConfigSetsWriters() {
suite.Equal(stderr, cfg.Stderr)
}
func (suite *ConfigTestSuite) TestDeprecatedSettingWarnings() {
for _, varname := range deprecatedVars {
suite.setenv(varname, "deprecoat") // environment-block entries should cause warnings
}
suite.unsetenv("PURGE")
suite.setenv("PLUGIN_PURGE", "true") // settings-block entries should cause warnings
suite.setenv("UPGRADE", "") // entries should cause warnings even when set to empty string
stderr := &strings.Builder{}
_, err := NewConfig(&strings.Builder{}, stderr)
suite.NoError(err)
for _, varname := range deprecatedVars {
suite.Contains(stderr.String(), fmt.Sprintf("Warning: ignoring deprecated '%s' setting\n", strings.ToLower(varname)))
}
}
func (suite *ConfigTestSuite) TestLogDebug() {
suite.setenv("DEBUG", "true")
suite.setenv("HELM_COMMAND", "upgrade")