github.com/kubeshop/testkube@v1.17.23/cmd/kubectl-testkube/commands/delete.go (about)

     1  package commands
     2  
     3  import (
     4  	"github.com/spf13/cobra"
     5  
     6  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/common"
     7  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/common/validator"
     8  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/executors"
     9  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/templates"
    10  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/tests"
    11  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/testsources"
    12  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/testsuites"
    13  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/testworkflows"
    14  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/testworkflowtemplates"
    15  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/webhooks"
    16  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/config"
    17  	"github.com/kubeshop/testkube/pkg/ui"
    18  )
    19  
    20  func NewDeleteCmd() *cobra.Command {
    21  	cmd := &cobra.Command{
    22  		Use:         "delete <resourceName>",
    23  		Aliases:     []string{"remove"},
    24  		Short:       "Delete resources",
    25  		Annotations: map[string]string{cmdGroupAnnotation: cmdGroupCommands},
    26  		Run: func(cmd *cobra.Command, args []string) {
    27  			err := cmd.Help()
    28  			ui.PrintOnError("Displaying help", err)
    29  		},
    30  		PersistentPreRun: func(cmd *cobra.Command, args []string) {
    31  			cfg, err := config.Load()
    32  			ui.ExitOnError("loading config", err)
    33  			common.UiContextHeader(cmd, cfg)
    34  
    35  			validator.PersistentPreRunVersionCheck(cmd, common.Version)
    36  		}}
    37  
    38  	cmd.PersistentFlags().StringVarP(&client, "client", "c", "proxy", "Client used for connecting to testkube API one of proxy|direct|cluster")
    39  	cmd.PersistentFlags().BoolVarP(&verbose, "verbose", "", false, "should I show additional debug messages")
    40  
    41  	cmd.AddCommand(tests.NewDeleteTestsCmd())
    42  	cmd.AddCommand(testsuites.NewDeleteTestSuiteCmd())
    43  	cmd.AddCommand(webhooks.NewDeleteWebhookCmd())
    44  	cmd.AddCommand(executors.NewDeleteExecutorCmd())
    45  	cmd.AddCommand(testsources.NewDeleteTestSourceCmd())
    46  	cmd.AddCommand(templates.NewDeleteTemplateCmd())
    47  	cmd.AddCommand(testworkflows.NewDeleteTestWorkflowCmd())
    48  	cmd.AddCommand(testworkflowtemplates.NewDeleteTestWorkflowTemplateCmd())
    49  
    50  	return cmd
    51  }