• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kubernetes-sigs / kubebuilder / 21719734236

05 Feb 2026 04:30PM UTC coverage: 66.464% (-7.4%) from 73.91%
21719734236

Pull #5352

github

camilamacedo86
(chore) Add delete interface and implementation for all options

Add delete functionality to remove APIs and webhooks from projects.
Users can now clean up scaffolded resources.

Generated-by: Cursor/Claude
Pull Request #5352: WIP ✨ Added Delete API and implemented a unified interface across all commands and plugin options

402 of 1627 new or added lines in 24 files covered. (24.71%)

1 existing line in 1 file now uncovered.

7111 of 10699 relevant lines covered (66.46%)

37.75 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

87.5
/pkg/plugins/optional/helm/v2alpha/plugin.go
1
/*
2
Copyright 2025 The Kubernetes Authors.
3

4
Licensed under the Apache License, Version 2.0 (the "License");
5
you may not use this file except in compliance with the License.
6
You may obtain a copy of the License at
7

8
    http://www.apache.org/licenses/LICENSE-2.0
9

10
Unless required by applicable law or agreed to in writing, software
11
distributed under the License is distributed on an "AS IS" BASIS,
12
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
See the License for the specific language governing permissions and
14
limitations under the License.
15
*/
16

17
package v2alpha
18

19
import (
20
        "sigs.k8s.io/kubebuilder/v4/pkg/config"
21
        cfgv3 "sigs.k8s.io/kubebuilder/v4/pkg/config/v3"
22
        "sigs.k8s.io/kubebuilder/v4/pkg/model/stage"
23
        "sigs.k8s.io/kubebuilder/v4/pkg/plugin"
24
        "sigs.k8s.io/kubebuilder/v4/pkg/plugins"
25
)
26

27
const pluginName = "helm." + plugins.DefaultNameQualifier
28

29
var (
30
        pluginVersion            = plugin.Version{Number: 2, Stage: stage.Alpha}
31
        supportedProjectVersions = []config.Version{cfgv3.Version}
32
)
33

34
// Plugin implements the plugin.Full interface
35
type Plugin struct {
36
        editSubcommand
37
}
38

39
var (
40
        _ plugin.Edit             = Plugin{}
41
        _ plugin.HasDeleteSupport = Plugin{}
42
)
43

44
// PluginConfig defines the structure that will be used to track the data
45
type pluginConfig struct {
46
        ManifestsFile string `json:"manifests,omitempty"`
47
        OutputDir     string `json:"output,omitempty"`
48
}
49

50
// Name returns the name of the plugin
51
func (Plugin) Name() string { return pluginName }
7✔
52

53
// Version returns the version of the Helm plugin
54
func (Plugin) Version() plugin.Version { return pluginVersion }
7✔
55

56
// SupportedProjectVersions returns an array with all project versions supported by the plugin
57
func (Plugin) SupportedProjectVersions() []config.Version { return supportedProjectVersions }
1✔
58

59
// GetEditSubcommand will return the subcommand which is responsible for adding and/or edit a helm chart
60
func (p Plugin) GetEditSubcommand() plugin.EditSubcommand { return &p.editSubcommand }
1✔
61

62
// SupportsDelete returns true indicating this plugin supports deletion via Edit --delete
NEW
63
func (Plugin) SupportsDelete() bool { return true }
×
64

65
// DeprecationWarning define the deprecation message or return empty when plugin is not deprecated
66
func (p Plugin) DeprecationWarning() string {
1✔
67
        return ""
1✔
68
}
1✔
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc