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 }