v1beta2

package
v0.1.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 14, 2025 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package v1beta2 contains API Schema definitions for the msi-acrpull v1beta2 API group +kubebuilder:object:generate=true +groupName=acrpull.microsoft.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "acrpull.microsoft.com", Version: "v1beta2"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type AcrConfiguration

type AcrConfiguration struct {

	// Server is the FQDN for the Azure Container Registry, e.g. example.azurecr.io
	Server string `json:"server"`

	// Scope defines the scope for the access token, e.g. pull/push access for a repository.
	// Note: you need to pin it down to the repository level, there is no wildcard available,
	// however a list of space-delimited scopes is acceptable.
	// See docs for details: https://distribution.github.io/distribution/spec/auth/scope/
	//
	// Examples:
	// repository:my-repository:pull,push
	// repository:my-repository:pull repository:other-repository:push,pull
	Scope string `json:"scope"`

	// Environment specifies the Azure Cloud environment in which the ACR is deployed.
	Environment AzureEnvironmentType `json:"environment"`

	// AirgappedCloudConfiguration configures a custom cloud to interact with when running air-gapped.
	CloudConfig *AirgappedCloudConfiguration `json:"cloudConfig,omitempty"`
}

AcrConfiguration identifies the Azure Container Registry we wish to bind to and how we will bind to it.

func (*AcrConfiguration) DeepCopy

func (in *AcrConfiguration) DeepCopy() *AcrConfiguration

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

func (*AcrConfiguration) DeepCopyInto

func (in *AcrConfiguration) DeepCopyInto(out *AcrConfiguration)

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

type AcrPullBinding

type AcrPullBinding struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   AcrPullBindingSpec   `json:"spec,omitempty"`
	Status AcrPullBindingStatus `json:"status,omitempty"`
}

AcrPullBinding is the Schema for the acrpullbindings API

func (*AcrPullBinding) DeepCopy

func (in *AcrPullBinding) DeepCopy() *AcrPullBinding

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

func (*AcrPullBinding) DeepCopyInto

func (in *AcrPullBinding) DeepCopyInto(out *AcrPullBinding)

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

func (*AcrPullBinding) DeepCopyObject

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

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

type AcrPullBindingList

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

AcrPullBindingList contains a list of AcrPullBinding

func (*AcrPullBindingList) DeepCopy

func (in *AcrPullBindingList) DeepCopy() *AcrPullBindingList

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

func (*AcrPullBindingList) DeepCopyInto

func (in *AcrPullBindingList) DeepCopyInto(out *AcrPullBindingList)

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

func (*AcrPullBindingList) DeepCopyObject

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

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

type AcrPullBindingSpec

type AcrPullBindingSpec struct {

	// ACR holds specifics of the Azure Container Registry for which credentials are projected.
	ACR AcrConfiguration `json:"acr,omitempty"`

	// Auth determines how we will authenticate to the Azure Container Registry. Only one method may be provided.
	Auth AuthenticationMethod `json:"auth,omitempty"`

	// The name of the service account to associate the image pull secret with.
	ServiceAccountName string `json:"serviceAccountName,omitempty"`
}

AcrPullBindingSpec defines the desired state of AcrPullBinding

func (*AcrPullBindingSpec) DeepCopy

func (in *AcrPullBindingSpec) DeepCopy() *AcrPullBindingSpec

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

func (*AcrPullBindingSpec) DeepCopyInto

func (in *AcrPullBindingSpec) DeepCopyInto(out *AcrPullBindingSpec)

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

type AcrPullBindingStatus

type AcrPullBindingStatus struct {

	// Information when was the last time the ACR token was refreshed.
	LastTokenRefreshTime *metav1.Time `json:"lastTokenRefreshTime,omitempty"`

	// The expiration date of the current ACR token.
	TokenExpirationTime *metav1.Time `json:"tokenExpirationTime,omitempty"`

	// Error message if there was an error updating the token.
	Error string `json:"error,omitempty"`
}

AcrPullBindingStatus defines the observed state of AcrPullBinding

func (*AcrPullBindingStatus) DeepCopy

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

func (*AcrPullBindingStatus) DeepCopyInto

func (in *AcrPullBindingStatus) DeepCopyInto(out *AcrPullBindingStatus)

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

type AirgappedCloudConfiguration

type AirgappedCloudConfiguration struct {

	// EntraAuthorityHost configures a custom Entra host endpoint.
	EntraAuthorityHost string `json:"entraAuthorityHost"`

	// ResourceManagerAudience configures the audience for which tokens will be requested from Entra.
	ResourceManagerAudience string `json:"resourceManagerAudience"`
}

func (*AirgappedCloudConfiguration) DeepCopy

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

func (*AirgappedCloudConfiguration) DeepCopyInto

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

type AuthenticationMethod

type AuthenticationMethod struct {

	// ManagedIdentity uses Azure Managed Identity to authenticate with Azure.
	ManagedIdentity *ManagedIdentityAuth `json:"managedIdentity,omitempty"`

	// WorkloadIdentity uses Azure Workload Identity to authenticate with Azure.
	WorkloadIdentity *WorkloadIdentityAuth `json:"workloadIdentity,omitempty"`
}

AuthenticationMethod holds a disjoint set of methods for authentication to an ACR.

func (*AuthenticationMethod) DeepCopy

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

func (*AuthenticationMethod) DeepCopyInto

func (in *AuthenticationMethod) DeepCopyInto(out *AuthenticationMethod)

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

type AzureEnvironmentType

type AzureEnvironmentType string

AzureEnvironmentType represents a set of endpoints for each of Azure's Clouds.

const (
	AzureEnvironmentPublicCloud       AzureEnvironmentType = "PublicCloud"
	AzureEnvironmentUSGovernmentCloud AzureEnvironmentType = "USGovernmentCloud"
	AzureEnvironmentChinaCloud        AzureEnvironmentType = "ChinaCloud"
	AzureEnvironmentAirgappedCloud    AzureEnvironmentType = "AirgappedCloud"
)

type ManagedIdentityAuth

type ManagedIdentityAuth struct {

	// ClientID is the client identifier for the managed identity. Either provide the client ID or the resource ID.
	ClientID string `json:"clientID,omitempty"`

	// ResourceID is the resource identifier for the managed identity. Either provide the client ID or the resource ID.
	ResourceID string `json:"resourceID,omitempty"`
}

ManagedIdentityAuth configures authentication to use a managed identity.

func (*ManagedIdentityAuth) DeepCopy

func (in *ManagedIdentityAuth) DeepCopy() *ManagedIdentityAuth

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

func (*ManagedIdentityAuth) DeepCopyInto

func (in *ManagedIdentityAuth) DeepCopyInto(out *ManagedIdentityAuth)

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

type WorkloadIdentityAuth

type WorkloadIdentityAuth struct {

	// ServiceAccountName specifies the name of the service account
	// that should be used when authenticating with WorkloadIdentity.
	ServiceAccountName string `json:"serviceAccountRef,omitempty"`

	// ClientID holds an optional client identifier of a federated identity.
	// Specify this identifier if multiple identities are federated with the
	// service account and the identity to use for image pulling is not the
	// default identity stored in the service account's annotations. The
	// client and tenant ID must be specified together.
	ClientID string `json:"clientID,omitempty"`

	// TenantID holds an optional tenant identifier of a federated identity.
	// Specify this identifier if multiple identities are federated with the
	// service account and the identity to use for image pulling is not the
	// default identity stored in the service account's annotations. The
	// client and tenant ID must be specified together.
	TenantID string `json:"tenantID,omitempty"`
}

func (*WorkloadIdentityAuth) DeepCopy

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

func (*WorkloadIdentityAuth) DeepCopyInto

func (in *WorkloadIdentityAuth) DeepCopyInto(out *WorkloadIdentityAuth)

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL