From 14b387272c2dc64ccc6cf09435f8958339aa0301 Mon Sep 17 00:00:00 2001 From: George Jenkins Date: Sun, 26 Jan 2025 14:34:18 -0800 Subject: [PATCH] chore: remove unused pkg/gates Signed-off-by: George Jenkins --- pkg/gates/doc.go | 21 ---------------- pkg/gates/gates.go | 38 ---------------------------- pkg/gates/gates_test.go | 56 ----------------------------------------- 3 files changed, 115 deletions(-) delete mode 100644 pkg/gates/doc.go delete mode 100644 pkg/gates/gates.go delete mode 100644 pkg/gates/gates_test.go diff --git a/pkg/gates/doc.go b/pkg/gates/doc.go deleted file mode 100644 index 6592cf4d4..000000000 --- a/pkg/gates/doc.go +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright The Helm Authors. -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -/* -Package gates provides a general tool for working with experimental feature gates. - -This provides convenience methods where the user can determine if certain experimental features are enabled. -*/ -package gates diff --git a/pkg/gates/gates.go b/pkg/gates/gates.go deleted file mode 100644 index 69559219e..000000000 --- a/pkg/gates/gates.go +++ /dev/null @@ -1,38 +0,0 @@ -/* -Copyright The Helm Authors. -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package gates - -import ( - "fmt" - "os" -) - -// Gate is the name of the feature gate. -type Gate string - -// String returns the string representation of this feature gate. -func (g Gate) String() string { - return string(g) -} - -// IsEnabled determines whether a certain feature gate is enabled. -func (g Gate) IsEnabled() bool { - return os.Getenv(string(g)) != "" -} - -func (g Gate) Error() error { - return fmt.Errorf("this feature has been marked as experimental and is not enabled by default. Please set %s=1 in your environment to use this feature", g.String()) -} diff --git a/pkg/gates/gates_test.go b/pkg/gates/gates_test.go deleted file mode 100644 index 6bdd17ed6..000000000 --- a/pkg/gates/gates_test.go +++ /dev/null @@ -1,56 +0,0 @@ -/* -Copyright The Helm Authors. -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package gates - -import ( - "os" - "testing" -) - -const name string = "HELM_EXPERIMENTAL_FEATURE" - -func TestIsEnabled(t *testing.T) { - os.Unsetenv(name) - g := Gate(name) - - if g.IsEnabled() { - t.Errorf("feature gate shows as available, but the environment variable %s was not set", name) - } - - os.Setenv(name, "1") - - if !g.IsEnabled() { - t.Errorf("feature gate shows as disabled, but the environment variable %s was set", name) - } -} - -func TestError(t *testing.T) { - os.Unsetenv(name) - g := Gate(name) - - if g.Error().Error() != "this feature has been marked as experimental and is not enabled by default. Please set HELM_EXPERIMENTAL_FEATURE=1 in your environment to use this feature" { - t.Errorf("incorrect error message. Received %s", g.Error().Error()) - } -} - -func TestString(t *testing.T) { - os.Unsetenv(name) - g := Gate(name) - - if g.String() != "HELM_EXPERIMENTAL_FEATURE" { - t.Errorf("incorrect string representation. Received %s", g.String()) - } -}