github.com/jenkins-x/jx/v2@v2.1.155/pkg/kube/quickstarts.go (about)

     1  package kube
     2  
     3  import (
     4  	"fmt"
     5  	"reflect"
     6  
     7  	v1 "github.com/jenkins-x/jx-api/pkg/apis/jenkins.io/v1"
     8  	"github.com/jenkins-x/jx-api/pkg/client/clientset/versioned"
     9  	"github.com/jenkins-x/jx/v2/pkg/gits"
    10  )
    11  
    12  var (
    13  	DefaultQuickstartLocations = []v1.QuickStartLocation{
    14  		{
    15  			GitURL:   gits.GitHubURL,
    16  			GitKind:  gits.KindGitHub,
    17  			Owner:    "jenkins-x-quickstarts",
    18  			Includes: []string{"*"},
    19  			Excludes: []string{"WIP-*"},
    20  		},
    21  	}
    22  )
    23  
    24  // GetQuickstartLocations returns the current quickstart locations. If no locations are defined
    25  // yet lets return the defaults
    26  func GetQuickstartLocations(jxClient versioned.Interface, ns string) ([]v1.QuickStartLocation, error) {
    27  	var answer []v1.QuickStartLocation
    28  	env, err := EnsureDevEnvironmentSetup(jxClient, ns)
    29  	if err != nil {
    30  		return answer, err
    31  	}
    32  	if env == nil {
    33  		return answer, fmt.Errorf("No Development environment found for namespace %s", ns)
    34  	}
    35  	answer = env.Spec.TeamSettings.QuickstartLocations
    36  	return answer, nil
    37  }
    38  
    39  // IsDefaultQuickstartLocation checks whether the given quickstart location is a default one, and if so returns true
    40  func IsDefaultQuickstartLocation(location v1.QuickStartLocation) bool {
    41  	for _, l := range DefaultQuickstartLocations {
    42  		if reflect.DeepEqual(l, location) {
    43  			return true
    44  		}
    45  	}
    46  	return false
    47  }