Documentation

Overview

    Package v1alpha1 is the v1alpha1 version of the Pinniped concierge configuration API.

    Index

    Constants

    View Source
    const (
    	KubeClusterSigningCertificateStrategyType = StrategyType("KubeClusterSigningCertificate")
    
    	TokenCredentialRequestAPIFrontendType = FrontendType("TokenCredentialRequestAPI")
    
    	SuccessStrategyStatus = StrategyStatus("Success")
    	ErrorStrategyStatus   = StrategyStatus("Error")
    
    	CouldNotFetchKeyStrategyReason       = StrategyReason("CouldNotFetchKey")
    	CouldNotGetClusterInfoStrategyReason = StrategyReason("CouldNotGetClusterInfo")
    	FetchedKeyStrategyReason             = StrategyReason("FetchedKey")
    )
    View Source
    const GroupName = "config.concierge.pinniped.dev"

    Variables

    View Source
    var (
    	SchemeBuilder runtime.SchemeBuilder
    
    	AddToScheme = localSchemeBuilder.AddToScheme
    )
    View Source
    var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

      SchemeGroupVersion is group version used to register these objects.

      Functions

      func Resource

      func Resource(resource string) schema.GroupResource

        Resource takes an unqualified resource and returns a Group qualified GroupResource.

        Types

        type CredentialIssuer

        type CredentialIssuer struct {
        	metav1.TypeMeta   `json:",inline"`
        	metav1.ObjectMeta `json:"metadata,omitempty"`
        
        	// Status of the credential issuer.
        	// +optional
        	Status CredentialIssuerStatus `json:"status"`
        }

          Describes the configuration status of a Pinniped credential issuer. +genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:categories=pinniped,scope=Cluster +kubebuilder:subresource:status

          func (*CredentialIssuer) DeepCopy

          func (in *CredentialIssuer) DeepCopy() *CredentialIssuer

            DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialIssuer.

            func (*CredentialIssuer) DeepCopyInto

            func (in *CredentialIssuer) DeepCopyInto(out *CredentialIssuer)

              DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

              func (*CredentialIssuer) DeepCopyObject

              func (in *CredentialIssuer) DeepCopyObject() runtime.Object

                DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                type CredentialIssuerFrontend

                type CredentialIssuerFrontend struct {
                	// Type describes which frontend mechanism clients can use with a strategy.
                	Type FrontendType `json:"type"`
                
                	// TokenCredentialRequestAPIInfo describes the parameters for the TokenCredentialRequest API on this Concierge.
                	// This field is only set when Type is "TokenCredentialRequestAPI".
                	TokenCredentialRequestAPIInfo *TokenCredentialRequestAPIInfo `json:"tokenCredentialRequestInfo,omitempty"`
                }

                func (*CredentialIssuerFrontend) DeepCopy

                  DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialIssuerFrontend.

                  func (*CredentialIssuerFrontend) DeepCopyInto

                  func (in *CredentialIssuerFrontend) DeepCopyInto(out *CredentialIssuerFrontend)

                    DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                    type CredentialIssuerKubeConfigInfo

                    type CredentialIssuerKubeConfigInfo struct {
                    	// The K8s API server URL.
                    	// +kubebuilder:validation:MinLength=1
                    	// +kubebuilder:validation:Pattern=`^https://|^http://`
                    	Server string `json:"server"`
                    
                    	// The K8s API server CA bundle.
                    	// +kubebuilder:validation:MinLength=1
                    	CertificateAuthorityData string `json:"certificateAuthorityData"`
                    }

                      Information needed to form a valid Pinniped-based kubeconfig using this credential issuer.

                      func (*CredentialIssuerKubeConfigInfo) DeepCopy

                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialIssuerKubeConfigInfo.

                        func (*CredentialIssuerKubeConfigInfo) DeepCopyInto

                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                          type CredentialIssuerList

                          type CredentialIssuerList struct {
                          	metav1.TypeMeta `json:",inline"`
                          	metav1.ListMeta `json:"metadata,omitempty"`
                          
                          	Items []CredentialIssuer `json:"items"`
                          }

                            List of CredentialIssuer objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

                            func (*CredentialIssuerList) DeepCopy

                              DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialIssuerList.

                              func (*CredentialIssuerList) DeepCopyInto

                              func (in *CredentialIssuerList) DeepCopyInto(out *CredentialIssuerList)

                                DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                func (*CredentialIssuerList) DeepCopyObject

                                func (in *CredentialIssuerList) DeepCopyObject() runtime.Object

                                  DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                  type CredentialIssuerStatus

                                  type CredentialIssuerStatus struct {
                                  	// List of integration strategies that were attempted by Pinniped.
                                  	Strategies []CredentialIssuerStrategy `json:"strategies"`
                                  
                                  	// Information needed to form a valid Pinniped-based kubeconfig using this credential issuer.
                                  	// This field is deprecated and will be removed in a future version.
                                  	// +optional
                                  	KubeConfigInfo *CredentialIssuerKubeConfigInfo `json:"kubeConfigInfo,omitempty"`
                                  }

                                    Status of a credential issuer.

                                    func (*CredentialIssuerStatus) DeepCopy

                                      DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialIssuerStatus.

                                      func (*CredentialIssuerStatus) DeepCopyInto

                                      func (in *CredentialIssuerStatus) DeepCopyInto(out *CredentialIssuerStatus)

                                        DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                        type CredentialIssuerStrategy

                                        type CredentialIssuerStrategy struct {
                                        	// Type of integration attempted.
                                        	Type StrategyType `json:"type"`
                                        
                                        	// Status of the attempted integration strategy.
                                        	Status StrategyStatus `json:"status"`
                                        
                                        	// Reason for the current status.
                                        	Reason StrategyReason `json:"reason"`
                                        
                                        	// Human-readable description of the current status.
                                        	// +kubebuilder:validation:MinLength=1
                                        	Message string `json:"message"`
                                        
                                        	// When the status was last checked.
                                        	LastUpdateTime metav1.Time `json:"lastUpdateTime"`
                                        
                                        	// Frontend describes how clients can connect using this strategy.
                                        	Frontend *CredentialIssuerFrontend `json:"frontend,omitempty"`
                                        }

                                          Status of an integration strategy that was attempted by Pinniped.

                                          func (*CredentialIssuerStrategy) DeepCopy

                                            DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialIssuerStrategy.

                                            func (*CredentialIssuerStrategy) DeepCopyInto

                                            func (in *CredentialIssuerStrategy) DeepCopyInto(out *CredentialIssuerStrategy)

                                              DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                              type FrontendType

                                              type FrontendType string

                                                +kubebuilder:validation:Enum=TokenCredentialRequestAPI

                                                type StrategyReason

                                                type StrategyReason string

                                                  +kubebuilder:validation:Enum=FetchedKey;CouldNotFetchKey

                                                  type StrategyStatus

                                                  type StrategyStatus string

                                                    +kubebuilder:validation:Enum=Success;Error

                                                    type StrategyType

                                                    type StrategyType string

                                                      +kubebuilder:validation:Enum=KubeClusterSigningCertificate

                                                      type TokenCredentialRequestAPIInfo

                                                      type TokenCredentialRequestAPIInfo struct {
                                                      	// Server is the Kubernetes API server URL.
                                                      	// +kubebuilder:validation:MinLength=1
                                                      	// +kubebuilder:validation:Pattern=`^https://|^http://`
                                                      	Server string `json:"server"`
                                                      
                                                      	// CertificateAuthorityData is the Kubernetes API server CA bundle.
                                                      	// +kubebuilder:validation:MinLength=1
                                                      	CertificateAuthorityData string `json:"certificateAuthorityData"`
                                                      }

                                                        TokenCredentialRequestAPIInfo describes the parameters for the TokenCredentialRequest API on this Concierge.

                                                        func (*TokenCredentialRequestAPIInfo) DeepCopy

                                                          DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenCredentialRequestAPIInfo.

                                                          func (*TokenCredentialRequestAPIInfo) DeepCopyInto

                                                            DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.