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

     1  package renderer
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/kubeshop/testkube/pkg/api/v1/client"
     7  	"github.com/kubeshop/testkube/pkg/api/v1/testkube"
     8  	"github.com/kubeshop/testkube/pkg/ui"
     9  )
    10  
    11  func TestSourceRenderer(client client.Client, ui *ui.UI, obj interface{}) error {
    12  	testSource, ok := obj.(testkube.TestSource)
    13  	if !ok {
    14  		return fmt.Errorf("can't use '%T' as testkube.TestSource in RenderObj for test source", obj)
    15  	}
    16  
    17  	ui.Warn("Name:     ", testSource.Name)
    18  	ui.Warn("Namespace:", testSource.Namespace)
    19  
    20  	ui.NL()
    21  	ui.Warn("Type", testSource.Type_)
    22  	if testSource.Uri != "" {
    23  		ui.Warn("Uri: ", testSource.Uri)
    24  	}
    25  
    26  	if testSource.Repository != nil {
    27  		ui.Warn("Repository: ")
    28  		ui.Warn("  Uri:         ", testSource.Repository.Uri)
    29  		ui.Warn("  Branch:      ", testSource.Repository.Branch)
    30  		ui.Warn("  Commit:      ", testSource.Repository.Commit)
    31  		ui.Warn("  Path:        ", testSource.Repository.Path)
    32  		if testSource.Repository.UsernameSecret != nil {
    33  			ui.Warn("  Username:    ", fmt.Sprintf("[secret:%s key:%s]", testSource.Repository.UsernameSecret.Name,
    34  				testSource.Repository.UsernameSecret.Key))
    35  		}
    36  
    37  		if testSource.Repository.TokenSecret != nil {
    38  			ui.Warn("  Token:       ", fmt.Sprintf("[secret:%s key:%s]", testSource.Repository.TokenSecret.Name,
    39  				testSource.Repository.TokenSecret.Key))
    40  		}
    41  
    42  		if testSource.Repository.CertificateSecret != "" {
    43  			ui.Warn("  Certificate: ", testSource.Repository.CertificateSecret)
    44  		}
    45  
    46  		ui.Warn("  Working dir: ", testSource.Repository.WorkingDir)
    47  		ui.Warn("  Auth type:   ", testSource.Repository.AuthType)
    48  	}
    49  
    50  	if testSource.Data != "" {
    51  		ui.Warn("Data: ", "\n", testSource.Data)
    52  	}
    53  
    54  	return nil
    55  
    56  }