boskos/crds/client.go
func createRESTConfig(kubeconfig string, t Type) (config *rest.Config, types *runtime.Scheme, err error) {
	if kubeconfig == "" {
		config, err = rest.InClusterConfig()
	} else {
		config, err = clientcmd.BuildConfigFromFlags("", kubeconfig)
	}

	if err != nil {
		return
	}

	version := schema.GroupVersion{
		Group:   group,
		Version: version,
	}

	config.GroupVersion = &version
	config.APIPath = "/apis"
	config.ContentType = runtime.ContentTypeJSON

	types = runtime.NewScheme()
	schemeBuilder := runtime.NewSchemeBuilder(
		func(scheme *runtime.Scheme) error {
			scheme.AddKnownTypes(version, t.Object, t.Collection)
			v1.AddToGroupVersion(scheme, version)
			return nil
		})
	err = schemeBuilder.AddToScheme(types)
	config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: serializer.NewCodecFactory(types)}

	return
}
func createRESTConfig(kubeconfig string, t Type) (config *rest.Config, types *runtime.Scheme, err error) {
	if kubeconfig == "" {
		config, err = rest.InClusterConfig()
	} else {
		config, err = clientcmd.BuildConfigFromFlags("", kubeconfig)
	}

	if err != nil {
		return
	}

	version := schema.GroupVersion{
		Group:   group,
		Version: version,
	}

	config.GroupVersion = &version
	config.APIPath = "/apis"
	config.ContentType = runtime.ContentTypeJSON

	types = runtime.NewScheme()
	schemeBuilder := runtime.NewSchemeBuilder(
		func(scheme *runtime.Scheme) error {
			scheme.AddKnownTypes(version, t.Object, t.Collection)
			v1.AddToGroupVersion(scheme, version)
			return nil
		})
	err = schemeBuilder.AddToScheme(types)
	config.NegotiatedSerializer = serializer.DirectCodecFactory{CodecFactory: serializer.NewCodecFactory(types)}

	return
}
func createRESTConfig ( kubeconfig string , t Type ) ( config * rest . Config , types * runtime . Scheme , err error ) { if kubeconfig == " " { config , err = rest . InClusterConfig ( ) } else { config , err = clientcmd . BuildConfigFromFlags ( " " , kubeconfig ) } if err != nil { return } version := schema . GroupVersion { Group : group , Version : version , } config . GroupVersion = & version config . APIPath = " " config . ContentType = runtime . ContentTypeJSON types = runtime . NewScheme ( ) schemeBuilder := runtime . NewSchemeBuilder ( func ( scheme * runtime . Scheme ) error { scheme . AddKnownTypes ( version , t . Object , t . Collection ) v1 . AddToGroupVersion ( scheme , version ) return nil } ) err = schemeBuilder . AddToScheme ( types ) config . NegotiatedSerializer = serializer . DirectCodecFactory { CodecFactory : serializer . NewCodecFactory ( types ) } return }
// createRESTConfig for cluster API server, pass empty config file for in-cluster
createRESTConfig for cluster API server pass empty config file for in - cluster