github.com/kubeshop/testkube@v1.17.23/cmd/kubectl-testkube/commands/abort.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/tests"
     9  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/testsuites"
    10  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/commands/testworkflows"
    11  	"github.com/kubeshop/testkube/cmd/kubectl-testkube/config"
    12  	"github.com/kubeshop/testkube/pkg/ui"
    13  )
    14  
    15  func NewAbortCmd() *cobra.Command {
    16  	cmd := &cobra.Command{
    17  		Use:         "abort <resourceName>",
    18  		Short:       "Abort tests or test suites",
    19  		Annotations: map[string]string{cmdGroupAnnotation: cmdGroupCommands},
    20  		Run: func(cmd *cobra.Command, args []string) {
    21  			err := cmd.Help()
    22  			ui.PrintOnError("Displaying help", err)
    23  		},
    24  		PersistentPreRun: func(cmd *cobra.Command, args []string) {
    25  			cfg, err := config.Load()
    26  			ui.ExitOnError("loading config", err)
    27  			common.UiContextHeader(cmd, cfg)
    28  
    29  			validator.PersistentPreRunVersionCheck(cmd, common.Version)
    30  		}}
    31  
    32  	cmd.AddCommand(tests.NewAbortExecutionCmd())
    33  	cmd.AddCommand(tests.NewAbortExecutionsCmd())
    34  	cmd.AddCommand(testsuites.NewAbortTestSuiteExecutionCmd())
    35  	cmd.AddCommand(testsuites.NewAbortTestSuiteExecutionsCmd())
    36  	cmd.AddCommand(testworkflows.NewAbortTestWorkflowExecutionCmd())
    37  	cmd.AddCommand(testworkflows.NewAbortTestWorkflowExecutionsCmd())
    38  
    39  	return cmd
    40  }