v1

package
v4.7.1 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2026 License: MPL-2.0 Imports: 8 Imported by: 45

Documentation

Overview

+k8s:openapi-gen=true +k8s:openapi-model-package=com.github.loft-sh.api.v4.pkg.apis.storage.v1 +k8s:deepcopy-gen=package +k8s:defaulter-gen=TypeMeta +groupName=storage.loft.sh

Package v1alpha1 contains API Schema definitions for the config v1alpha1 API group +kubebuilder:object:generate=true +groupName=storage.loft.sh

Index

Constants

View Source
const (
	LoftCluster = "loft-cluster"

	MetricsFederationServiceNamespaceAnnotation = "loft.sh/metrics-federation-service-namespace"
	MetricsFederationServiceNameAnnotation      = "loft.sh/metrics-federation-service-name"
	MetricsFederationServicePortAnnotation      = "loft.sh/metrics-federation-service-port"

	PrometheusLastAppliedHashAnnotation                              = "loft.sh/prometheus-last-applied-hash"
	PrometheusDeployed                  agentstoragev1.ConditionType = "PrometheusDeployed"
	PrometheusAvailable                 agentstoragev1.ConditionType = "PrometheusAvailable"

	GlobalPrometheusServiceAddress                                         = "loft.sh/global-prometheus-service-address"
	GlobalPrometheusLastAppliedHashAnnotation                              = "loft.sh/global-prometheus-last-applied-hash"
	GlobalPrometheusDeployed                  agentstoragev1.ConditionType = "GlobalPrometheusDeployed"
	GlobalPrometheusAvailable                 agentstoragev1.ConditionType = "GlobalPrometheusAvailable"

	EmbeddedPostgresAppliedHashAnnotation                              = "loft.sh/platform-db-applied-hash"
	EmbeddedPostgresDeployed              agentstoragev1.ConditionType = "EmbeddedPostgresDeployed"
	EmbeddedPostgresAvailable             agentstoragev1.ConditionType = "EmbeddedPostgresAvailable"

	OpenCostLastAppliedHashAnnotation                              = "loft.sh/opencost-last-applied-hash"
	OpenCostDeployed                  agentstoragev1.ConditionType = "OpenCostDeployed"
	OpenCostAvailable                 agentstoragev1.ConditionType = "OpenCostAvailable"

	BuildKitServiceAddress                                         = "loft.sh/buildkit-service-address"
	BuildKitLastAppliedHashAnnotation                              = "loft.sh/buildkit-last-applied-hash"
	BuildKitDeployed                  agentstoragev1.ConditionType = "BuildKitDeployed"
	BuildKitAvailable                 agentstoragev1.ConditionType = "BuildKitAvailable"
)
View Source
const (
	// NodeClaim conditions
	NodeClaimConditionTypeProvisioned = "Provisioned"
	// NodeClaimConditionTypeJoined is the condition that indicates if the node claim is joined to the vCluster.
	NodeClaimConditionTypeJoined = "Joined"
	// ConditionTypeScheduled is the condition that indicates if the node claim is scheduled.
	NodeClaimConditionTypeScheduled = "Scheduled"
	// NodeClaimConditionTypeNotDrifted is the condition that indicates if the node claim is not drifted from the desired state.
	NodeClaimConditionTypeNotDrifted = "NotDrifted"
)
View Source
const (
	// NodeEnvironment conditions
	NodeEnvironmentConditionTypeInfrastructureProvisioned = "Provisioned"
	NodeEnvironmentConditionTypeInfrastructureSynced      = "Synced"
	NodeEnvironmentConditionTypeKubernetesProvisioned     = "KubernetesProvisioned"
	NodeEnvironmentConditionTypeKubernetesSynced          = "KubernetesSynced"
)
View Source
const (
	NodeProviderTypeBCM        string = "bcm"
	NodeProviderTypeKubeVirt   string = "kubeVirt"
	NodeProviderTypeTerraform  string = "terraform"
	NodeProviderTypeClusterAPI string = "clusterAPI"

	// NodeProviderConditionTypeInitialized is the condition that indicates if the node provider is initialized.
	NodeProviderConditionTypeInitialized = "Initialized"
)
View Source
const (
	// NodeProviderPhasePending is the initial state of a NodeProvider.
	NodeProviderPhasePending NodeProviderPhase = "Pending"
	// NodeProviderPhaseAvailable means the underlying node has been successfully provisioned.
	NodeProviderPhaseAvailable NodeProviderPhase = "Available"
	// NodeProviderPhaseFailed means the provisioning process has failed.
	NodeProviderPhaseFailed NodeProviderPhase = "Failed"
	// NodeProvider specific label
	NodeProvidedManagedTypeIndicatorLabel     = "autoscaling.loft.sh/managed-by"
	NodeProviderManagedTypeMetadataAnnotation = "autoscaling.loft.sh/managed-metadata"

	// NodeTypeMaxCapacityAnnotation is the annotation used to store the maximum capacity of a NodeType
	NodeTypeMaxCapacityAnnotation = "autoscaling.loft.sh/max-capacity"

	// BCM specific annotations
	NodeTypeNodesAnnotation      = "bcm.loft.sh/nodes"
	NodeTypeNodeGroupsAnnotation = "bcm.loft.sh/node-groups"

	// KubeVirt specific annotations
	NodeTypeVMTemplateAnnotation = "kubevirt.vcluster.com/vm-template"

	// ClusterAPI specific annotations
	NodeTypeClusterAPIInfrastructureMachineTemplateAnnotation = "clusterapi.loft.sh/infrastructure-machine-template"
	NodeTypeClusterAPIBootstrapConfigTemplateAnnotation       = "clusterapi.loft.sh/bootstrap-config-template"

	// Properties
	NodeProviderCCMEnabledProperty = "vcluster.com/ccm-enabled"
)
View Source
const (
	NodeTypePropertyKey = "vcluster.com/node-type"

	// NodeTypeConditionTypeSynced is the condition that indicates if the node type is synced with provider.
	NodeTypeConditionTypeSynced  = "Synced"
	NodeTypeConditionHasCapacity = "HasCapacity"
)
View Source
const (
	ArgoIntegrationSynced agentstoragev1.ConditionType = "ArgoIntegrationSynced"

	ArgoLastAppliedHashAnnotation                = "loft.sh/argo-integration-last-applied-hash"
	ArgoPreviousClusterAnnotation                = "loft.sh/argo-integration-previous-cluster"
	ArgoPreviousNamespaceAnnotation              = "loft.sh/argo-integration-previous-namespace"
	ArgoPreviousVirtualClusterInstanceAnnotation = "loft.sh/argo-integration-previous-virtualclusterinstance"
)
View Source
const (
	ConditionTypeVaultIntegration agentstoragev1.ConditionType = "VaultIntegration"

	ConditionReasonVaultIntegrationError = "VaultIntegrationError"

	VaultLastAppliedHashAnnotation                = "loft.sh/vault-integration-last-applied-hash"
	VaultPreviousClusterAnnotation                = "loft.sh/vault-integration-previous-cluster"
	VaultPreviousNamespaceAnnotation              = "loft.sh/vault-integration-previous-namespace"
	VaultPreviousVirtualClusterInstanceAnnotation = "loft.sh/vault-integration-previous-virtualclusterinstance"
)
View Source
const (
	RancherIntegrationSynced agentstoragev1.ConditionType = "RancherIntegrationSynced"

	RancherLastAppliedHashAnnotation = "loft.sh/rancher-integration-last-applied-hash"
)
View Source
const (
	InstanceScheduled                         agentstoragev1.ConditionType = "Scheduled"
	InstanceTemplateSynced                    agentstoragev1.ConditionType = "TemplateSynced"
	InstanceTemplateResolved                  agentstoragev1.ConditionType = "TemplateResolved"
	InstanceSpaceSynced                       agentstoragev1.ConditionType = "SpaceSynced"
	InstanceSpaceReady                        agentstoragev1.ConditionType = "SpaceReady"
	InstanceVirtualClusterDeployed            agentstoragev1.ConditionType = "VirtualClusterDeployed"
	InstanceVirtualClusterSynced              agentstoragev1.ConditionType = "VirtualClusterSynced"
	InstanceVirtualClusterReady               agentstoragev1.ConditionType = "VirtualClusterReady"
	InstanceVirtualClusterOnline              agentstoragev1.ConditionType = "VirtualClusterOnline"
	InstanceProjectsSecretsSynced             agentstoragev1.ConditionType = "ProjectSecretsSynced"
	InstanceNodesProvisioned                  agentstoragev1.ConditionType = "NodesProvisioned"
	InstanceExternalResourcesCleanedUp        agentstoragev1.ConditionType = "ExternalResourcesCleanedUp"
	InstanceVirtualClusterAutoDeletionBlocked agentstoragev1.ConditionType = "VirtualClusterAutoDeletionBlocked"

	InstanceVirtualClusterAppsAndObjectsSynced     agentstoragev1.ConditionType = "VirtualClusterAppsAndObjectsSynced"
	InstanceVirtualClusterDBConnectorSynced        agentstoragev1.ConditionType = "DBConnectorSynced"
	InstanceVirtualClusterDBIdentityProviderSynced agentstoragev1.ConditionType = "DBIdentityProviderSynced"

	// Etcd health condition types
	InstanceEtcdClusterHealthy  agentstoragev1.ConditionType = "EtcdClusterHealthy"
	InstanceEtcdLeaderAvailable agentstoragev1.ConditionType = "EtcdLeaderAvailable"
	InstanceEtcdQuorumMet       agentstoragev1.ConditionType = "EtcdQuorumMet"
	InstanceEtcdMemberHealthy   agentstoragev1.ConditionType = "EtcdMemberHealthy"
	InstanceEtcdNoAlarms        agentstoragev1.ConditionType = "EtcdNoAlarms"
	InstanceEtcdDbSizeOk        agentstoragev1.ConditionType = "EtcdDbSizeOk"
)
View Source
const (
	// TaskStartedCondition defines the task started condition type that summarizes the operational state of the virtual cluster API object.
	TaskStartedCondition agentstoragev1.ConditionType = "TaskStarted"
)

Common ConditionTypes used by Cluster API objects.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "storage.loft.sh", Version: "v1"}

	// 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

	// SchemeGroupVersion is a shim that expect this to be present in the api package
	SchemeGroupVersion = GroupVersion
)
View Source
var (
	SpaceTemplateKind          = "SpaceTemplate"
	VirtualClusterTemplateKind = "VirtualClusterTemplate"
)
View Source
var (
	InstanceDeployedAppDeployed = "Deployed"
	InstanceDeployedAppFailed   = "Failed"
)

Functions

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Access

type Access struct {
	// Name is an optional name that is used for this access rule
	// +optional
	Name string `json:"name,omitempty"`

	// Verbs is a list of Verbs that apply to ALL the ResourceKinds and AttributeRestrictions contained in this rule. VerbAll represents all kinds.
	Verbs []string `json:"verbs"`

	// Subresources defines the sub resources that are allowed by this access rule
	// +optional
	Subresources []string `json:"subresources,omitempty"`

	// Users specifies which users should be able to access this secret with the aforementioned verbs
	// +optional
	Users []string `json:"users,omitempty"`

	// Teams specifies which teams should be able to access this secret with the aforementioned verbs
	// +optional
	Teams []string `json:"teams,omitempty"`
}

Access describes the access to a secret

func (*Access) DeepCopy

func (in *Access) DeepCopy() *Access

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

func (*Access) DeepCopyInto

func (in *Access) DeepCopyInto(out *Access)

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

func (Access) OpenAPIModelName added in v4.7.0

func (in Access) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessAccessor

type AccessAccessor interface {
	GetAccess() []Access
	SetAccess(access []Access)

	GetOwner() *UserOrTeam
	SetOwner(userOrTeam *UserOrTeam)
}

type AccessKey

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

	Spec   AccessKeySpec   `json:"spec,omitempty"`
	Status AccessKeyStatus `json:"status,omitempty"`
}

AccessKey holds the session information +k8s:openapi-gen=true

func (*AccessKey) DeepCopy

func (in *AccessKey) DeepCopy() *AccessKey

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

func (*AccessKey) DeepCopyInto

func (in *AccessKey) DeepCopyInto(out *AccessKey)

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

func (*AccessKey) DeepCopyObject

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

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

func (AccessKey) OpenAPIModelName added in v4.7.0

func (in AccessKey) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyList

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

AccessKeyList contains a list of AccessKey

func (*AccessKeyList) DeepCopy

func (in *AccessKeyList) DeepCopy() *AccessKeyList

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

func (*AccessKeyList) DeepCopyInto

func (in *AccessKeyList) DeepCopyInto(out *AccessKeyList)

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

func (*AccessKeyList) DeepCopyObject

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

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

func (AccessKeyList) OpenAPIModelName added in v4.7.0

func (in AccessKeyList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyOIDC

type AccessKeyOIDC struct {
	// The current id token that was created during login
	// +optional
	IDToken []byte `json:"idToken,omitempty"`

	// The current access token that was created during login
	// +optional
	AccessToken []byte `json:"accessToken,omitempty"`

	// The current refresh token that was created during login
	// +optional
	RefreshToken []byte `json:"refreshToken,omitempty"`

	// The last time the id token was refreshed
	// +optional
	LastRefresh *metav1.Time `json:"lastRefresh,omitempty"`
}

func (*AccessKeyOIDC) DeepCopy

func (in *AccessKeyOIDC) DeepCopy() *AccessKeyOIDC

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

func (*AccessKeyOIDC) DeepCopyInto

func (in *AccessKeyOIDC) DeepCopyInto(out *AccessKeyOIDC)

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

func (AccessKeyOIDC) OpenAPIModelName added in v4.7.0

func (in AccessKeyOIDC) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyOIDCProvider

type AccessKeyOIDCProvider struct {
	// ClientId the token was generated for
	// +optional
	ClientId string `json:"clientId,omitempty"`

	// Nonce to use
	// +optional
	Nonce string `json:"nonce,omitempty"`

	// RedirectUri to use
	// +optional
	RedirectUri string `json:"redirectUri,omitempty"`

	// Scopes to use
	// +optional
	Scopes string `json:"scopes,omitempty"`
}

func (*AccessKeyOIDCProvider) DeepCopy

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

func (*AccessKeyOIDCProvider) DeepCopyInto

func (in *AccessKeyOIDCProvider) DeepCopyInto(out *AccessKeyOIDCProvider)

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

func (AccessKeyOIDCProvider) OpenAPIModelName added in v4.7.0

func (in AccessKeyOIDCProvider) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScope

type AccessKeyScope struct {
	// Roles is a set of managed permissions to apply to the access key.
	// +optional
	Roles []AccessKeyScopeRole `json:"roles,omitempty"`

	// Projects specifies the projects the access key should have access to.
	// +optional
	Projects []AccessKeyScopeProject `json:"projects,omitempty"`

	// Spaces specifies the spaces the access key is allowed to access.
	// +optional
	Spaces []AccessKeyScopeSpace `json:"spaces,omitempty"`

	// VirtualClusters specifies the virtual clusters the access key is allowed to access.
	// +optional
	VirtualClusters []AccessKeyScopeVirtualCluster `json:"virtualClusters,omitempty"`

	// Clusters specifies the project cluster the access key is allowed to access.
	// +optional
	Clusters []AccessKeyScopeCluster `json:"clusters,omitempty"`

	// DEPRECATED: Use Projects, Spaces and VirtualClusters instead
	// Rules specifies the rules that should apply to the access key.
	// +optional
	Rules []AccessKeyScopeRule `json:"rules,omitempty"`

	// AllowLoftCLI allows certain read-only management requests to
	// make sure loft cli works correctly with this specific access key.
	//
	// Deprecated: Use the `roles` field instead
	//  “`yaml
	//  # Example:
	//  roles:
	//    - role: loftCLI
	//  “`
	// +optional
	AllowLoftCLI bool `json:"allowLoftCli,omitempty"`
}

func (AccessKeyScope) ContainsRole

func (a AccessKeyScope) ContainsRole(val AccessKeyScopeRoleName) bool

func (*AccessKeyScope) DeepCopy

func (in *AccessKeyScope) DeepCopy() *AccessKeyScope

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

func (*AccessKeyScope) DeepCopyInto

func (in *AccessKeyScope) DeepCopyInto(out *AccessKeyScope)

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

func (AccessKeyScope) GetRole

func (AccessKeyScope) OpenAPIModelName added in v4.7.0

func (in AccessKeyScope) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScopeCluster

type AccessKeyScopeCluster struct {
	// Cluster is the name of the cluster to access. You can specify * to select all clusters.
	// +optional
	Cluster string `json:"cluster,omitempty"`
}

func (*AccessKeyScopeCluster) DeepCopy

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

func (*AccessKeyScopeCluster) DeepCopyInto

func (in *AccessKeyScopeCluster) DeepCopyInto(out *AccessKeyScopeCluster)

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

func (AccessKeyScopeCluster) OpenAPIModelName added in v4.7.0

func (in AccessKeyScopeCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScopeProject

type AccessKeyScopeProject struct {
	// Project is the name of the project. You can specify * to select all projects.
	// +optional
	Project string `json:"project,omitempty"`
}

func (*AccessKeyScopeProject) DeepCopy

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

func (*AccessKeyScopeProject) DeepCopyInto

func (in *AccessKeyScopeProject) DeepCopyInto(out *AccessKeyScopeProject)

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

func (AccessKeyScopeProject) OpenAPIModelName added in v4.7.0

func (in AccessKeyScopeProject) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScopeRole

type AccessKeyScopeRole struct {
	// Role is the name of the role to apply to the access key scope.
	// +optional
	Role AccessKeyScopeRoleName `json:"role,omitempty"`

	// Projects specifies the projects the access key should have access to.
	// +optional
	Projects []string `json:"projects,omitempty"`

	// VirtualClusters specifies the virtual clusters the access key is allowed to access.
	// +optional
	VirtualClusters []string `json:"virtualClusters,omitempty"`
}

func (*AccessKeyScopeRole) DeepCopy

func (in *AccessKeyScopeRole) DeepCopy() *AccessKeyScopeRole

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

func (*AccessKeyScopeRole) DeepCopyInto

func (in *AccessKeyScopeRole) DeepCopyInto(out *AccessKeyScopeRole)

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

func (AccessKeyScopeRole) OpenAPIModelName added in v4.7.0

func (in AccessKeyScopeRole) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScopeRoleName

type AccessKeyScopeRoleName string

AccessKeyScopeRoleName is the role name for a given scope +enum

const (
	AccessKeyScopeRoleAgent       AccessKeyScopeRoleName = "agent"
	AccessKeyScopeRoleVCluster    AccessKeyScopeRoleName = "vcluster"
	AccessKeyScopeRoleNetworkPeer AccessKeyScopeRoleName = "network-peer"
	AccessKeyScopeRoleLoftCLI     AccessKeyScopeRoleName = "loft-cli"
	AccessKeyScopeRoleRunner      AccessKeyScopeRoleName = "runner"
	AccessKeyScopeRoleWorkspace   AccessKeyScopeRoleName = "workspace"
)

type AccessKeyScopeRule

type AccessKeyScopeRule struct {
	// The verbs that match this rule.
	// An empty list implies every verb.
	// +optional
	Verbs []string `json:"verbs,omitempty"`

	// Resources that this rule matches. An empty list implies all kinds in all API groups.
	// +optional
	Resources []GroupResources `json:"resources,omitempty"`

	// Namespaces that this rule matches.
	// The empty string "" matches non-namespaced resources.
	// An empty list implies every namespace.
	// +optional
	Namespaces []string `json:"namespaces,omitempty"`

	// NonResourceURLs is a set of URL paths that should be checked.
	// *s are allowed, but only as the full, final step in the path.
	// Examples:
	//  "/metrics" - Log requests for apiserver metrics
	//  "/healthz*" - Log all health checks
	// +optional
	NonResourceURLs []string `json:"nonResourceURLs,omitempty"`

	// RequestTargets is a list of request targets that are allowed.
	// An empty list implies every request.
	// +optional
	RequestTargets []RequestTarget `json:"requestTargets,omitempty"`

	// Cluster that this rule matches. Only applies to cluster requests.
	// If this is set, no requests for non cluster requests are allowed.
	// An empty cluster means no restrictions will apply.
	// +optional
	Cluster string `json:"cluster,omitempty"`

	// VirtualClusters that this rule matches. Only applies to virtual cluster requests.
	// An empty list means no restrictions will apply.
	// +optional
	VirtualClusters []AccessKeyVirtualCluster `json:"virtualClusters,omitempty"`
}

AccessKeyScopeRule describes a rule for the access key

func (*AccessKeyScopeRule) DeepCopy

func (in *AccessKeyScopeRule) DeepCopy() *AccessKeyScopeRule

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

func (*AccessKeyScopeRule) DeepCopyInto

func (in *AccessKeyScopeRule) DeepCopyInto(out *AccessKeyScopeRule)

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

func (AccessKeyScopeRule) OpenAPIModelName added in v4.7.0

func (in AccessKeyScopeRule) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScopeSpace

type AccessKeyScopeSpace struct {
	// Project is the name of the project.
	// +optional
	Project string `json:"project,omitempty"`

	// Space is the name of the space. You can specify * to select all spaces.
	// +optional
	Space string `json:"space,omitempty"`
}

func (*AccessKeyScopeSpace) DeepCopy

func (in *AccessKeyScopeSpace) DeepCopy() *AccessKeyScopeSpace

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

func (*AccessKeyScopeSpace) DeepCopyInto

func (in *AccessKeyScopeSpace) DeepCopyInto(out *AccessKeyScopeSpace)

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

func (AccessKeyScopeSpace) OpenAPIModelName added in v4.7.0

func (in AccessKeyScopeSpace) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyScopeVirtualCluster

type AccessKeyScopeVirtualCluster struct {
	// Project is the name of the project.
	// +optional
	Project string `json:"project,omitempty"`

	// VirtualCluster is the name of the virtual cluster to access. You can specify * to select all virtual clusters.
	// +optional
	VirtualCluster string `json:"virtualCluster,omitempty"`
}

func (*AccessKeyScopeVirtualCluster) DeepCopy

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

func (*AccessKeyScopeVirtualCluster) DeepCopyInto

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

func (AccessKeyScopeVirtualCluster) OpenAPIModelName added in v4.7.0

func (in AccessKeyScopeVirtualCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeySpec

type AccessKeySpec struct {
	// The display name shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes an app
	// +optional
	Description string `json:"description,omitempty"`

	// The user this access key refers to
	// +optional
	User string `json:"user,omitempty"`

	// The team this access key refers to
	// +optional
	Team string `json:"team,omitempty"`

	// Subject is a generic subject that can be used
	// instead of user or team
	// +optional
	Subject string `json:"subject,omitempty"`

	// Groups specifies extra groups to apply when using
	// this access key
	// +optional
	Groups []string `json:"groups,omitempty"`

	// The actual access key that will be used as a bearer token
	// +optional
	Key string `json:"key,omitempty"`

	// If this field is true, the access key is still allowed to exist,
	// however will not work to access the api
	// +optional
	Disabled bool `json:"disabled,omitempty"`

	// The time to life for this access key
	// +optional
	TTL int64 `json:"ttl,omitempty"`

	// If this is specified, the time to life for this access key will
	// start after the lastActivity instead of creation timestamp
	// +optional
	TTLAfterLastActivity bool `json:"ttlAfterLastActivity,omitempty"`

	// Scope defines the scope of the access key.
	// +optional
	Scope *AccessKeyScope `json:"scope,omitempty"`

	// The type of an access key, which basically describes if the access
	// key is user managed or managed by loft itself.
	// +optional
	Type AccessKeyType `json:"type,omitempty"`

	// If available, contains information about the sso login data for this
	// access key
	// +optional
	Identity *SSOIdentity `json:"identity,omitempty"`

	// The last time the identity was refreshed
	// +optional
	IdentityRefresh *metav1.Time `json:"identityRefresh,omitempty"`

	// If the token is a refresh token, contains information about it
	// +optional
	OIDCProvider *AccessKeyOIDCProvider `json:"oidcProvider,omitempty"`

	// DEPRECATED: do not use anymore
	// Parent is used to share OIDC and external token information
	// with multiple access keys. Since copying an OIDC refresh token
	// would result in the other access keys becoming invalid after a refresh
	// parent allows access keys to share that information.
	//
	// The use case for this is primarily user generated access keys,
	// which will have the users current access key as parent if it contains
	// an OIDC token.
	// +optional
	Parent string `json:"parent,omitempty"`

	// DEPRECATED: Use identity instead
	// If available, contains information about the oidc login data for this
	// access key
	// +optional
	OIDCLogin *AccessKeyOIDC `json:"oidcLogin,omitempty"`
}

func (*AccessKeySpec) DeepCopy

func (in *AccessKeySpec) DeepCopy() *AccessKeySpec

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

func (*AccessKeySpec) DeepCopyInto

func (in *AccessKeySpec) DeepCopyInto(out *AccessKeySpec)

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

func (AccessKeySpec) OpenAPIModelName added in v4.7.0

func (in AccessKeySpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyStatus

type AccessKeyStatus struct {
	// The last time this access key was used to access the api
	// +optional
	LastActivity *metav1.Time `json:"lastActivity,omitempty"`
}

AccessKeyStatus holds the status of an access key

func (*AccessKeyStatus) DeepCopy

func (in *AccessKeyStatus) DeepCopy() *AccessKeyStatus

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

func (*AccessKeyStatus) DeepCopyInto

func (in *AccessKeyStatus) DeepCopyInto(out *AccessKeyStatus)

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

func (AccessKeyStatus) OpenAPIModelName added in v4.7.0

func (in AccessKeyStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AccessKeyType

type AccessKeyType string

AccessKeyType describes the type of an access key

const (
	AccessKeyTypeNone             AccessKeyType = ""
	AccessKeyTypeLogin            AccessKeyType = "Login"
	AccessKeyTypeUser             AccessKeyType = "User"
	AccessKeyTypeOther            AccessKeyType = "Other"
	AccessKeyTypeReset            AccessKeyType = "Reset"
	AccessKeyTypeOIDCRefreshToken AccessKeyType = "OIDCRefreshToken"
	AccessKeyTypeNetworkPeer      AccessKeyType = "NetworkPeer"
	AccessKeyTypeWorkspace        AccessKeyType = "Workspace"
)

These are the valid access key types

type AccessKeyVirtualCluster

type AccessKeyVirtualCluster struct {
	// Name of the virtual cluster. Empty means all virtual clusters.
	// +optional
	Name string `json:"name,omitempty"`

	// Namespace of the virtual cluster. Empty means all namespaces.
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

func (*AccessKeyVirtualCluster) DeepCopy

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

func (*AccessKeyVirtualCluster) DeepCopyInto

func (in *AccessKeyVirtualCluster) DeepCopyInto(out *AccessKeyVirtualCluster)

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

func (AccessKeyVirtualCluster) OpenAPIModelName added in v4.7.0

func (in AccessKeyVirtualCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AllowedCluster

type AllowedCluster struct {
	// Name is the name of the cluster that is allowed to create an environment in.
	// +optional
	Name string `json:"name,omitempty"`
}

func (*AllowedCluster) DeepCopy

func (in *AllowedCluster) DeepCopy() *AllowedCluster

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

func (*AllowedCluster) DeepCopyInto

func (in *AllowedCluster) DeepCopyInto(out *AllowedCluster)

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

func (AllowedCluster) OpenAPIModelName added in v4.7.0

func (in AllowedCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AllowedClusterAccountTemplate

type AllowedClusterAccountTemplate struct {
	// Name is the name of a cluster account template
	// +optional
	Name string `json:"name,omitempty"`
}

func (*AllowedClusterAccountTemplate) DeepCopy

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

func (*AllowedClusterAccountTemplate) DeepCopyInto

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

func (AllowedClusterAccountTemplate) OpenAPIModelName added in v4.7.0

func (in AllowedClusterAccountTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AllowedRunner

type AllowedRunner struct {
	// Name is the name of the runner that is allowed to create an environment in.
	// +optional
	Name string `json:"name,omitempty"`
}

func (*AllowedRunner) DeepCopy

func (in *AllowedRunner) DeepCopy() *AllowedRunner

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

func (*AllowedRunner) DeepCopyInto

func (in *AllowedRunner) DeepCopyInto(out *AllowedRunner)

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

func (AllowedRunner) OpenAPIModelName added in v4.7.0

func (in AllowedRunner) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AllowedTemplate

type AllowedTemplate struct {
	// Kind of the template that is allowed. Currently only supports DevPodWorkspaceTemplate, VirtualClusterTemplate & SpaceTemplate
	// +optional
	Kind string `json:"kind,omitempty"`

	// Group of the template that is allowed. Currently only supports storage.loft.sh
	// +optional
	Group string `json:"group,omitempty"`

	// Name of the template
	// +optional
	Name string `json:"name,omitempty"`

	// IsDefault specifies if the template should be used as a default
	// +optional
	IsDefault bool `json:"isDefault,omitempty"`
}

func (*AllowedTemplate) DeepCopy

func (in *AllowedTemplate) DeepCopy() *AllowedTemplate

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

func (*AllowedTemplate) DeepCopyInto

func (in *AllowedTemplate) DeepCopyInto(out *AllowedTemplate)

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

func (AllowedTemplate) OpenAPIModelName added in v4.7.0

func (in AllowedTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type App

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

	Spec   AppSpec   `json:"spec,omitempty"`
	Status AppStatus `json:"status,omitempty"`
}

App holds the app information +k8s:openapi-gen=true

func (*App) DeepCopy

func (in *App) DeepCopy() *App

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

func (*App) DeepCopyInto

func (in *App) DeepCopyInto(out *App)

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

func (*App) DeepCopyObject

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

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

func (*App) GetAccess

func (a *App) GetAccess() []Access

func (*App) GetOwner

func (a *App) GetOwner() *UserOrTeam

func (App) OpenAPIModelName added in v4.7.0

func (in App) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*App) SetAccess

func (a *App) SetAccess(access []Access)

func (*App) SetOwner

func (a *App) SetOwner(userOrTeam *UserOrTeam)

type AppConfig

type AppConfig struct {
	// DefaultNamespace is the default namespace this app should installed
	// in.
	// +optional
	DefaultNamespace string `json:"defaultNamespace,omitempty"`

	// Readme is a longer markdown string that describes the app.
	// +optional
	Readme string `json:"readme,omitempty"`

	// Icon holds an URL to the app icon
	// +optional
	Icon string `json:"icon,omitempty"`

	// Config is the helm config to use to deploy the helm release
	// +optional
	Config clusterv1.HelmReleaseConfig `json:"config,omitempty"`

	// Wait determines if Loft should wait during deploy for the app to become ready
	// +optional
	Wait bool `json:"wait,omitempty"`

	// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) (default 5m0s)
	// +optional
	Timeout string `json:"timeout,omitempty"`

	// Parameters define additional app parameters that will set helm values
	// +optional
	Parameters []AppParameter `json:"parameters,omitempty"`

	// DEPRECATED: Use config.bash instead
	// StreamContainer can be used to stream a containers logs instead of the helm output.
	// +optional
	// +internal
	StreamContainer *StreamContainer `json:"streamContainer,omitempty"`
}

func (*AppConfig) DeepCopy

func (in *AppConfig) DeepCopy() *AppConfig

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

func (*AppConfig) DeepCopyInto

func (in *AppConfig) DeepCopyInto(out *AppConfig)

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

func (AppConfig) OpenAPIModelName added in v4.7.0

func (in AppConfig) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppList

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

AppList contains a list of App

func (*AppList) DeepCopy

func (in *AppList) DeepCopy() *AppList

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

func (*AppList) DeepCopyInto

func (in *AppList) DeepCopyInto(out *AppList)

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

func (*AppList) DeepCopyObject

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

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

func (AppList) OpenAPIModelName added in v4.7.0

func (in AppList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppParameter

type AppParameter struct {
	// Variable is the path of the variable. Can be foo or foo.bar for nested objects.
	// +optional
	Variable string `json:"variable,omitempty"`

	// Label is the label to show for this parameter
	// +optional
	Label string `json:"label,omitempty"`

	// Description is the description to show for this parameter
	// +optional
	Description string `json:"description,omitempty"`

	// Type of the parameter. Can be one of:
	// string, multiline, boolean, number and password
	// +optional
	Type string `json:"type,omitempty"`

	// Options is a slice of strings, where each string represents a mutually exclusive choice.
	// +optional
	Options []string `json:"options,omitempty"`

	// Min is the minimum number if type is number
	// +optional
	Min *int `json:"min,omitempty"`

	// Max is the maximum number if type is number
	// +optional
	Max *int `json:"max,omitempty"`

	// Required specifies if this parameter is required
	// +optional
	Required bool `json:"required,omitempty"`

	// DefaultValue is the default value if none is specified
	// +optional
	DefaultValue string `json:"defaultValue,omitempty"`

	// Placeholder shown in the UI
	// +optional
	Placeholder string `json:"placeholder,omitempty"`

	// Invalidation regex that if matched will reject the input
	// +optional
	Invalidation string `json:"invalidation,omitempty"`

	// Validation regex that if matched will allow the input
	// +optional
	Validation string `json:"validation,omitempty"`

	// Section where this app should be displayed. Apps with the same section name will be grouped together
	// +optional
	Section string `json:"section,omitempty"`
}

func (*AppParameter) DeepCopy

func (in *AppParameter) DeepCopy() *AppParameter

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

func (*AppParameter) DeepCopyInto

func (in *AppParameter) DeepCopyInto(out *AppParameter)

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

func (AppParameter) OpenAPIModelName added in v4.7.0

func (in AppParameter) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppReference

type AppReference struct {
	// Name of the target app
	// +optional
	Name string `json:"name,omitempty"`

	// Namespace specifies in which target namespace the app should
	// get deployed in
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// ReleaseName is the name of the app release
	// +optional
	ReleaseName string `json:"releaseName,omitempty"`

	// Version of the app
	// +optional
	Version string `json:"version,omitempty"`

	// Hash is the hash of the app configuration
	// +optional
	Hash string `json:"hash,omitempty"`

	// Parameters to use for the app
	// +optional
	Parameters string `json:"parameters,omitempty"`
}

func (*AppReference) DeepCopy

func (in *AppReference) DeepCopy() *AppReference

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

func (*AppReference) DeepCopyInto

func (in *AppReference) DeepCopyInto(out *AppReference)

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

func (AppReference) OpenAPIModelName added in v4.7.0

func (in AppReference) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppSpec

type AppSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes an app
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Clusters are the clusters this app can be installed in.
	// +optional
	Clusters []string `json:"clusters,omitempty"`

	// RecommendedApp specifies where this app should show up as recommended app
	// +optional
	RecommendedApp []RecommendedApp `json:"recommendedApp,omitempty"`

	// AppConfig is the app configuration
	AppConfig `json:",inline"`

	// Versions are different app versions that can be referenced
	// +optional
	Versions []AppVersion `json:"versions,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// DEPRECATED: Use config instead
	// manifest represents kubernetes resources that will be deployed into the target namespace
	// +optional
	Manifests string `json:"manifests,omitempty"`

	// DEPRECATED: Use config instead
	// helm defines the configuration for a helm deployment
	// +optional
	Helm *HelmConfiguration `json:"helm,omitempty"`
}

AppSpec holds the specification

func (*AppSpec) DeepCopy

func (in *AppSpec) DeepCopy() *AppSpec

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

func (*AppSpec) DeepCopyInto

func (in *AppSpec) DeepCopyInto(out *AppSpec)

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

func (AppSpec) OpenAPIModelName added in v4.7.0

func (in AppSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppStatus

type AppStatus struct {
}

AppStatus holds the status

func (*AppStatus) DeepCopy

func (in *AppStatus) DeepCopy() *AppStatus

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

func (*AppStatus) DeepCopyInto

func (in *AppStatus) DeepCopyInto(out *AppStatus)

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

func (AppStatus) OpenAPIModelName added in v4.7.0

func (in AppStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppTask

type AppTask struct {
	// Type is the task type. Defaults to Upgrade
	// +optional
	Type HelmTaskType `json:"type,omitempty"`

	// RollbackRevision is the revision to rollback to
	// +optional
	RollbackRevision string `json:"rollbackRevision,omitempty"`

	// AppReference is the reference to the app to deploy
	// +optional
	AppReference AppReference `json:"appReference,omitempty"`
}

func (*AppTask) DeepCopy

func (in *AppTask) DeepCopy() *AppTask

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

func (*AppTask) DeepCopyInto

func (in *AppTask) DeepCopyInto(out *AppTask)

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

func (AppTask) OpenAPIModelName added in v4.7.0

func (in AppTask) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type AppVersion

type AppVersion struct {
	// AppConfig is the app configuration
	AppConfig `json:",inline"`

	// Version is the version. Needs to be in X.X.X format.
	// +optional
	Version string `json:"version,omitempty"`
}

func (*AppVersion) DeepCopy

func (in *AppVersion) DeepCopy() *AppVersion

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

func (*AppVersion) DeepCopyInto

func (in *AppVersion) DeepCopyInto(out *AppVersion)

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

func (AppVersion) OpenAPIModelName added in v4.7.0

func (in AppVersion) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ArgoIntegrationSpec

type ArgoIntegrationSpec struct {
	// Enabled indicates if the ArgoCD Integration is enabled for the project -- this knob only
	// enables the syncing of virtualclusters, but does not enable SSO integration or project
	// creation (see subsequent spec sections!).
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// Cluster defines the name of the cluster that ArgoCD is deployed into -- if not provided this
	// will default to 'loft-cluster'.
	// +optional
	Cluster string `json:"cluster,omitempty"`

	// VirtualClusterInstance defines the name of *virtual cluster* (instance) that ArgoCD is
	// deployed into. If provided, Cluster will be ignored and Loft will assume that ArgoCD is
	// running in the specified virtual cluster.
	// +optional
	VirtualClusterInstance string `json:"virtualClusterInstance,omitempty"`

	// Namespace defines the namespace in which ArgoCD is running in the cluster.
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// SSO defines single-sign-on related values for the ArgoCD Integration. Enabling SSO will allow
	// users to authenticate to ArgoCD via Loft.
	// +optional
	SSO *ArgoSSOSpec `json:"sso,omitempty"`

	// Project defines project related values for the ArgoCD Integration. Enabling Project
	// integration will cause Loft to generate and manage an ArgoCD appProject that corresponds to
	// the Loft Project.
	// +optional
	Project *ArgoProjectSpec `json:"project,omitempty"`
}

func (*ArgoIntegrationSpec) DeepCopy

func (in *ArgoIntegrationSpec) DeepCopy() *ArgoIntegrationSpec

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

func (*ArgoIntegrationSpec) DeepCopyInto

func (in *ArgoIntegrationSpec) DeepCopyInto(out *ArgoIntegrationSpec)

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

func (ArgoIntegrationSpec) OpenAPIModelName added in v4.7.0

func (in ArgoIntegrationSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ArgoProjectPolicyRule

type ArgoProjectPolicyRule struct {
	// Action is one of "*", "get", "create", "update", "delete", "sync", or "override".
	// +optional
	Action string `json:"action,omitempty"`
	// Application is the ArgoCD project/repository to apply the rule to.
	// +optional
	Application string `json:"application,omitempty"`
	// Allow applies the "allow" permission to the rule, if allow is not set, the permission will
	// always be set to "deny".
	// +optional
	Allow bool `json:"permission,omitempty"`
}

func (*ArgoProjectPolicyRule) DeepCopy

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

func (*ArgoProjectPolicyRule) DeepCopyInto

func (in *ArgoProjectPolicyRule) DeepCopyInto(out *ArgoProjectPolicyRule)

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

func (ArgoProjectPolicyRule) OpenAPIModelName added in v4.7.0

func (in ArgoProjectPolicyRule) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ArgoProjectRole

type ArgoProjectRole struct {
	// Name of the ArgoCD role to attach to the project.
	Name string `json:"name,omitempty"`
	// Description to add to the ArgoCD project.
	// +optional
	Description string `json:"description,omitempty"`
	// Rules ist a list of policy rules to attach to the role.
	Rules []ArgoProjectPolicyRule `json:"rules,omitempty"`
	// Groups is a list of OIDC group names to bind to the role.
	Groups []string `json:"groups,omitempty"`
}

func (*ArgoProjectRole) DeepCopy

func (in *ArgoProjectRole) DeepCopy() *ArgoProjectRole

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

func (*ArgoProjectRole) DeepCopyInto

func (in *ArgoProjectRole) DeepCopyInto(out *ArgoProjectRole)

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

func (ArgoProjectRole) OpenAPIModelName added in v4.7.0

func (in ArgoProjectRole) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ArgoProjectSpec

type ArgoProjectSpec struct {
	// Enabled indicates if the ArgoCD Project Integration is enabled for this project. Enabling
	// this will cause Loft to create an appProject in ArgoCD that is associated with the Loft
	// Project. When Project integration is enabled Loft will override the default assigned role
	// set in the SSO integration spec.
	// +optional
	Enabled bool `json:"enabled,omitempty"`
	// Metadata defines additional metadata to attach to the loft created project in ArgoCD.
	// +optional
	Metadata ArgoProjectSpecMetadata `json:"metadata,omitempty"`
	// SourceRepos is a list of source repositories to attach/allow on the project, if not specified
	// will be "*" indicating all source repositories.
	// +optional
	SourceRepos []string `json:"sourceRepos,omitempty"`
	// Roles is a list of roles that should be attached to the ArgoCD project. If roles are provided
	// no loft default roles will be set. If no roles are provided *and* SSO is enabled, loft will
	// configure sane default values.
	// +optional
	Roles []ArgoProjectRole `json:"roles,omitempty"`
}

func (*ArgoProjectSpec) DeepCopy

func (in *ArgoProjectSpec) DeepCopy() *ArgoProjectSpec

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

func (*ArgoProjectSpec) DeepCopyInto

func (in *ArgoProjectSpec) DeepCopyInto(out *ArgoProjectSpec)

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

func (ArgoProjectSpec) OpenAPIModelName added in v4.7.0

func (in ArgoProjectSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ArgoProjectSpecMetadata

type ArgoProjectSpecMetadata struct {
	// ExtraAnnotations are optional annotations that can be attached to the project in ArgoCD.
	// +optional
	ExtraAnnotations map[string]string `json:"extraAnnotations,omitempty"`
	// ExtraLabels are optional labels that can be attached to the project in ArgoCD.
	// +optional
	ExtraLabels map[string]string `json:"extraLabels,omitempty"`
	// Description to add to the ArgoCD project.
	// +optional
	Description string `json:"description,omitempty"`
}

func (*ArgoProjectSpecMetadata) DeepCopy

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

func (*ArgoProjectSpecMetadata) DeepCopyInto

func (in *ArgoProjectSpecMetadata) DeepCopyInto(out *ArgoProjectSpecMetadata)

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

func (ArgoProjectSpecMetadata) OpenAPIModelName added in v4.7.0

func (in ArgoProjectSpecMetadata) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ArgoSSOSpec

type ArgoSSOSpec struct {
	// Enabled indicates if the ArgoCD SSO Integration is enabled for this project. Enabling this
	// will cause Loft to configure SSO authentication via Loft in ArgoCD. If Projects are *not*
	// enabled, all users associated with this Project will be assigned either the 'read-only'
	// (default) role, *or* the roles set under the AssignedRoles field.
	// +optional
	Enabled bool `json:"enabled,omitempty"`
	// Host defines the ArgoCD host address that will be used for OIDC authentication between loft
	// and ArgoCD. If not specified OIDC integration will be skipped, but vclusters/spaces will
	// still be synced to ArgoCD.
	// +optional
	Host string `json:"host,omitempty"`
	// AssignedRoles is a list of roles to assign for users who authenticate via Loft -- by default
	// this will be the `read-only` role. If any roles are provided this will override the default
	// setting.
	// +optional
	AssignedRoles []string `json:"assignedRoles,omitempty"`
}

func (*ArgoSSOSpec) DeepCopy

func (in *ArgoSSOSpec) DeepCopy() *ArgoSSOSpec

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

func (*ArgoSSOSpec) DeepCopyInto

func (in *ArgoSSOSpec) DeepCopyInto(out *ArgoSSOSpec)

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

func (ArgoSSOSpec) OpenAPIModelName added in v4.7.0

func (in ArgoSSOSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type BCMNodeTypeSpec added in v4.4.0

type BCMNodeTypeSpec struct {
	NamedNodeTypeSpec `json:",inline"`

	// Nodes specifies nodes.
	Nodes []string `json:"nodes,omitempty"`

	// NodeGroups is the name of the node groups to use for this provider.
	NodeGroups []string `json:"nodeGroups,omitempty"`
}

func (*BCMNodeTypeSpec) DeepCopy added in v4.4.0

func (in *BCMNodeTypeSpec) DeepCopy() *BCMNodeTypeSpec

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

func (*BCMNodeTypeSpec) DeepCopyInto added in v4.4.0

func (in *BCMNodeTypeSpec) DeepCopyInto(out *BCMNodeTypeSpec)

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

func (BCMNodeTypeSpec) OpenAPIModelName added in v4.7.0

func (in BCMNodeTypeSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Chart

type Chart struct {
	// Name is the chart name in the repository
	Name string `json:"name,omitempty"`

	// Version is the chart version in the repository
	// +optional
	Version string `json:"version,omitempty"`

	// RepoURL is the repo url where the chart can be found
	// +optional
	RepoURL string `json:"repoURL,omitempty"`

	// The username that is required for this repository
	// +optional
	Username string `json:"username,omitempty"`

	// The password that is required for this repository
	// +optional
	Password string `json:"password,omitempty"`
}

Chart describes a chart

func (*Chart) DeepCopy

func (in *Chart) DeepCopy() *Chart

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

func (*Chart) DeepCopyInto

func (in *Chart) DeepCopyInto(out *Chart)

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

func (Chart) OpenAPIModelName added in v4.7.0

func (in Chart) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ChartStatus

type ChartStatus struct {
	// Name of the chart that was applied
	// +optional
	Name string `json:"name,omitempty"`

	// Namespace of the chart that was applied
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// LastAppliedChartConfigHash is the last applied configuration
	// +optional
	LastAppliedChartConfigHash string `json:"lastAppliedChartConfigHash,omitempty"`
}

func (*ChartStatus) DeepCopy

func (in *ChartStatus) DeepCopy() *ChartStatus

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

func (*ChartStatus) DeepCopyInto

func (in *ChartStatus) DeepCopyInto(out *ChartStatus)

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

func (ChartStatus) OpenAPIModelName added in v4.7.0

func (in ChartStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Cluster

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

	Spec   ClusterSpec   `json:"spec,omitempty"`
	Status ClusterStatus `json:"status,omitempty"`
}

Cluster holds the cluster information +k8s:openapi-gen=true

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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

func (*Cluster) GetAccess

func (a *Cluster) GetAccess() []Access

func (*Cluster) GetConditions added in v4.2.0

func (a *Cluster) GetConditions() agentstoragev1.Conditions

func (*Cluster) GetOwner

func (a *Cluster) GetOwner() *UserOrTeam

func (Cluster) OpenAPIModelName added in v4.7.0

func (in Cluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*Cluster) SetAccess

func (a *Cluster) SetAccess(access []Access)

func (*Cluster) SetConditions added in v4.2.0

func (a *Cluster) SetConditions(conditions agentstoragev1.Conditions)

func (*Cluster) SetOwner

func (a *Cluster) SetOwner(userOrTeam *UserOrTeam)

type ClusterAPINodeTypeSpec added in v4.5.0

type ClusterAPINodeTypeSpec struct {
	NamedNodeTypeSpec `json:",inline"`
	ClusterAPIObjects `json:",inline"`

	// MergeInfrastructureMachineTemplate will be merged into base InfrastructureMachine template for this NodeProvider.
	// This allows overwriting of specific fields from top level template by individual NodeTypes
	// This is mutually exclusive with InfrastructureMachineTemplate
	MergeInfrastructureMachineTemplate *runtime.RawExtension `json:"mergeInfrastructureMachineTemplate,omitempty"`

	// MergeBootstrapConfigTemplate will be merged into base BootstrapConfig template for this NodeProvider.
	// This allows overwriting of specific fields from top level template by individual NodeTypes
	// This is mutually exclusive with BootstrapConfigTemplate
	MergeBootstrapConfigTemplate *runtime.RawExtension `json:"mergeBootstrapConfigTemplate,omitempty"`

	// MaxCapacity is the maximum number of nodes that can be created for this NodeType.
	MaxCapacity int `json:"maxCapacity,omitempty"`
}

func (*ClusterAPINodeTypeSpec) DeepCopy added in v4.5.0

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

func (*ClusterAPINodeTypeSpec) DeepCopyInto added in v4.5.0

func (in *ClusterAPINodeTypeSpec) DeepCopyInto(out *ClusterAPINodeTypeSpec)

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

func (ClusterAPINodeTypeSpec) OpenAPIModelName added in v4.7.0

func (in ClusterAPINodeTypeSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterAPIObjects added in v4.5.0

type ClusterAPIObjects struct {
	// InfrastructureMachineTemplate is a template for the infrastructure machine, e.g. AWSMachine
	InfrastructureMachineTemplate *runtime.RawExtension `json:"infrastructureMachineTemplate,omitempty"`

	// BootstrapConfigTemplate is a template for the bootstrap config. Currently only KubeadmConfig is supported.
	BootstrapConfigTemplate *runtime.RawExtension `json:"bootstrapConfigTemplate,omitempty"`
}

func (*ClusterAPIObjects) DeepCopy added in v4.5.0

func (in *ClusterAPIObjects) DeepCopy() *ClusterAPIObjects

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

func (*ClusterAPIObjects) DeepCopyInto added in v4.5.0

func (in *ClusterAPIObjects) DeepCopyInto(out *ClusterAPIObjects)

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

func (ClusterAPIObjects) OpenAPIModelName added in v4.7.0

func (in ClusterAPIObjects) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterAccess

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

	Spec   ClusterAccessSpec   `json:"spec,omitempty"`
	Status ClusterAccessStatus `json:"status,omitempty"`
}

ClusterAccess holds the global cluster access information +k8s:openapi-gen=true

func (*ClusterAccess) DeepCopy

func (in *ClusterAccess) DeepCopy() *ClusterAccess

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

func (*ClusterAccess) DeepCopyInto

func (in *ClusterAccess) DeepCopyInto(out *ClusterAccess)

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

func (*ClusterAccess) DeepCopyObject

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

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

func (*ClusterAccess) GetAccess

func (a *ClusterAccess) GetAccess() []Access

func (*ClusterAccess) GetOwner

func (a *ClusterAccess) GetOwner() *UserOrTeam

func (ClusterAccess) OpenAPIModelName added in v4.7.0

func (in ClusterAccess) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*ClusterAccess) SetAccess

func (a *ClusterAccess) SetAccess(access []Access)

func (*ClusterAccess) SetOwner

func (a *ClusterAccess) SetOwner(userOrTeam *UserOrTeam)

type ClusterAccessList

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

ClusterAccessList contains a list of ClusterAccess objects

func (*ClusterAccessList) DeepCopy

func (in *ClusterAccessList) DeepCopy() *ClusterAccessList

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

func (*ClusterAccessList) DeepCopyInto

func (in *ClusterAccessList) DeepCopyInto(out *ClusterAccessList)

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

func (*ClusterAccessList) DeepCopyObject

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

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

func (ClusterAccessList) OpenAPIModelName added in v4.7.0

func (in ClusterAccessList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterAccessSpec

type ClusterAccessSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a cluster access object
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Clusters are the clusters this template should be applied on.
	// +optional
	Clusters []string `json:"clusters,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// LocalClusterAccessTemplate holds the cluster access template
	// +omitempty
	LocalClusterAccessTemplate LocalClusterAccessTemplate `json:"localClusterAccessTemplate,omitempty"`
}

func (*ClusterAccessSpec) DeepCopy

func (in *ClusterAccessSpec) DeepCopy() *ClusterAccessSpec

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

func (*ClusterAccessSpec) DeepCopyInto

func (in *ClusterAccessSpec) DeepCopyInto(out *ClusterAccessSpec)

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

func (ClusterAccessSpec) OpenAPIModelName added in v4.7.0

func (in ClusterAccessSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterAccessStatus

type ClusterAccessStatus struct {
}

ClusterAccessStatus holds the status of a user access

func (*ClusterAccessStatus) DeepCopy

func (in *ClusterAccessStatus) DeepCopy() *ClusterAccessStatus

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

func (*ClusterAccessStatus) DeepCopyInto

func (in *ClusterAccessStatus) DeepCopyInto(out *ClusterAccessStatus)

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

func (ClusterAccessStatus) OpenAPIModelName added in v4.7.0

func (in ClusterAccessStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterList

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

ClusterList contains a list of Cluster

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

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

func (*ClusterList) DeepCopyObject

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

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

func (ClusterList) OpenAPIModelName added in v4.7.0

func (in ClusterList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterRef

type ClusterRef struct {
	// Cluster is the connected cluster the space will be created in
	// +optional
	Cluster string `json:"cluster,omitempty"`

	// Namespace is the namespace inside the connected cluster holding the space
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

func (*ClusterRef) DeepCopy

func (in *ClusterRef) DeepCopy() *ClusterRef

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

func (*ClusterRef) DeepCopyInto

func (in *ClusterRef) DeepCopyInto(out *ClusterRef)

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

func (ClusterRef) OpenAPIModelName added in v4.7.0

func (in ClusterRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterRoleRef

type ClusterRoleRef struct {
	// Name is the cluster role to assign
	// +optional
	Name string `json:"name,omitempty"`
}

func (*ClusterRoleRef) DeepCopy

func (in *ClusterRoleRef) DeepCopy() *ClusterRoleRef

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

func (*ClusterRoleRef) DeepCopyInto

func (in *ClusterRoleRef) DeepCopyInto(out *ClusterRoleRef)

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

func (ClusterRoleRef) OpenAPIModelName added in v4.7.0

func (in ClusterRoleRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterRoleTemplate

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

	Spec   ClusterRoleTemplateSpec   `json:"spec,omitempty"`
	Status ClusterRoleTemplateStatus `json:"status,omitempty"`
}

ClusterRoleTemplate holds the global role template information +k8s:openapi-gen=true

func (*ClusterRoleTemplate) DeepCopy

func (in *ClusterRoleTemplate) DeepCopy() *ClusterRoleTemplate

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

func (*ClusterRoleTemplate) DeepCopyInto

func (in *ClusterRoleTemplate) DeepCopyInto(out *ClusterRoleTemplate)

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

func (*ClusterRoleTemplate) DeepCopyObject

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

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

func (*ClusterRoleTemplate) GetAccess

func (a *ClusterRoleTemplate) GetAccess() []Access

func (*ClusterRoleTemplate) GetOwner

func (a *ClusterRoleTemplate) GetOwner() *UserOrTeam

func (ClusterRoleTemplate) OpenAPIModelName added in v4.7.0

func (in ClusterRoleTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*ClusterRoleTemplate) SetAccess

func (a *ClusterRoleTemplate) SetAccess(access []Access)

func (*ClusterRoleTemplate) SetOwner

func (a *ClusterRoleTemplate) SetOwner(userOrTeam *UserOrTeam)

type ClusterRoleTemplateList

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

ClusterRoleTemplateList contains a list of ClusterRoleTemplate objects

func (*ClusterRoleTemplateList) DeepCopy

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

func (*ClusterRoleTemplateList) DeepCopyInto

func (in *ClusterRoleTemplateList) DeepCopyInto(out *ClusterRoleTemplateList)

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

func (*ClusterRoleTemplateList) DeepCopyObject

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

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

func (ClusterRoleTemplateList) OpenAPIModelName added in v4.7.0

func (in ClusterRoleTemplateList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterRoleTemplateSpec

type ClusterRoleTemplateSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a cluster role template object
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Clusters are the clusters this template should be applied on.
	// +optional
	Clusters []string `json:"clusters,omitempty"`

	// Management defines if this cluster role should be created in the management instance.
	// +optional
	Management bool `json:"management,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// ClusterRoleTemplate holds the cluster role template
	// +optional
	ClusterRoleTemplate ClusterRoleTemplateTemplate `json:"clusterRoleTemplate,omitempty"`

	// DEPRECATED: Use ClusterRoleTemplate instead
	// LocalClusterRoleTemplate holds the cluster role template
	// +omitempty
	LocalClusterRoleTemplate *LocalClusterRoleTemplate `json:"localClusterRoleTemplate,omitempty"`
}

func (*ClusterRoleTemplateSpec) DeepCopy

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

func (*ClusterRoleTemplateSpec) DeepCopyInto

func (in *ClusterRoleTemplateSpec) DeepCopyInto(out *ClusterRoleTemplateSpec)

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

func (ClusterRoleTemplateSpec) OpenAPIModelName added in v4.7.0

func (in ClusterRoleTemplateSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterRoleTemplateStatus

type ClusterRoleTemplateStatus struct {
}

ClusterRoleTemplateStatus holds the status of a user access

func (*ClusterRoleTemplateStatus) DeepCopy

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

func (*ClusterRoleTemplateStatus) DeepCopyInto

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

func (ClusterRoleTemplateStatus) OpenAPIModelName added in v4.7.0

func (in ClusterRoleTemplateStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterRoleTemplateTemplate

type ClusterRoleTemplateTemplate struct {
	// Standard object's metadata.
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

	// Rules holds all the PolicyRules for this ClusterRole
	// +optional
	Rules []rbacv1.PolicyRule `json:"rules" protobuf:"bytes,2,rep,name=rules"`

	// AggregationRule is an optional field that describes how to build the Rules for this ClusterRole.
	// If AggregationRule is set, then the Rules are controller managed and direct changes to Rules will be
	// stomped by the controller.
	// +optional
	AggregationRule *rbacv1.AggregationRule `json:"aggregationRule,omitempty" protobuf:"bytes,3,opt,name=aggregationRule"`
}

func (*ClusterRoleTemplateTemplate) DeepCopy

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

func (*ClusterRoleTemplateTemplate) DeepCopyInto

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

func (ClusterRoleTemplateTemplate) OpenAPIModelName added in v4.7.0

func (in ClusterRoleTemplateTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterSpec

type ClusterSpec struct {
	// If specified this name is displayed in the UI instead of the metadata name
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a cluster access object
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Holds a reference to a secret that holds the kube config to access this cluster
	// +optional
	Config SecretRef `json:"config,omitempty"`

	// Local specifies if it is the local cluster that should be connected, when this is specified, config is optional
	// +optional
	Local bool `json:"local,omitempty"`

	// NetworkPeer specifies if the cluster is connected via tailscale, when this is specified, config is optional
	// +optional
	NetworkPeer bool `json:"networkPeer,omitempty"`

	// The namespace where the cluster components will be installed in
	// +optional
	ManagementNamespace string `json:"managementNamespace,omitempty"`

	// If unusable is true, no spaces or virtual clusters can be scheduled on this cluster.
	// +optional
	Unusable bool `json:"unusable,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// Metrics holds the cluster's metrics backend configuration
	Metrics *Metrics `json:"metrics,omitempty"`

	// OpenCost holds the cluster's OpenCost backend configuration
	OpenCost *OpenCost `json:"opencost,omitempty"`
}

ClusterSpec holds the cluster specification

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

func (ClusterSpec) OpenAPIModelName added in v4.7.0

func (in ClusterSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterStatus

type ClusterStatus struct {
	// +optional
	Phase ClusterStatusPhase `json:"phase,omitempty"`

	// +optional
	Reason string `json:"reason,omitempty"`

	// +optional
	Message string `json:"message,omitempty"`

	// Conditions holds several conditions the cluster might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
}

ClusterStatus holds the user status

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

func (ClusterStatus) OpenAPIModelName added in v4.7.0

func (in ClusterStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ClusterStatusPhase

type ClusterStatusPhase string

ClusterStatusPhase describes the phase of a cluster

const (
	ClusterStatusPhaseInitializing ClusterStatusPhase = ""
	ClusterStatusPhaseInitialized  ClusterStatusPhase = "Initialized"
	ClusterStatusPhaseFailed       ClusterStatusPhase = "Failed"
)

These are the valid admin account types

type EntityInfo

type EntityInfo struct {
	// Name is the kubernetes name of the object
	Name string `json:"name,omitempty"`

	// The display name shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Icon is the icon of the user / team
	// +optional
	Icon string `json:"icon,omitempty"`

	// The username that is used to login
	// +optional
	Username string `json:"username,omitempty"`

	// The users email address
	// +optional
	Email string `json:"email,omitempty"`

	// The user subject
	// +optional
	Subject string `json:"subject,omitempty"`
}

func (*EntityInfo) DeepCopy

func (in *EntityInfo) DeepCopy() *EntityInfo

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

func (*EntityInfo) DeepCopyInto

func (in *EntityInfo) DeepCopyInto(out *EntityInfo)

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

func (EntityInfo) OpenAPIModelName added in v4.7.0

func (in EntityInfo) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type GroupResources

type GroupResources struct {
	// Group is the name of the API group that contains the resources.
	// The empty string represents the core API group.
	// +optional
	Group string `json:"group,omitempty" protobuf:"bytes,1,opt,name=group"`
	// Resources is a list of resources this rule applies to.
	//
	// For example:
	// 'pods' matches pods.
	// 'pods/log' matches the log subresource of pods.
	// '*' matches all resources and their subresources.
	// 'pods/*' matches all subresources of pods.
	// '*/scale' matches all scale subresources.
	//
	// If wildcard is present, the validation rule will ensure resources do not
	// overlap with each other.
	//
	// An empty list implies all resources and subresources in this API groups apply.
	// +optional
	Resources []string `json:"resources,omitempty" protobuf:"bytes,2,rep,name=resources"`
	// ResourceNames is a list of resource instance names that the policy matches.
	// Using this field requires Resources to be specified.
	// An empty list implies that every instance of the resource is matched.
	// +optional
	ResourceNames []string `json:"resourceNames,omitempty" protobuf:"bytes,3,rep,name=resourceNames"`
}

GroupResources represents resource kinds in an API group.

func (*GroupResources) DeepCopy

func (in *GroupResources) DeepCopy() *GroupResources

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

func (*GroupResources) DeepCopyInto

func (in *GroupResources) DeepCopyInto(out *GroupResources)

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

func (GroupResources) OpenAPIModelName added in v4.7.0

func (in GroupResources) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type HelmChart

type HelmChart struct {
	// Metadata provides information about a chart
	// +optional
	Metadata clusterv1.Metadata `json:"metadata,omitempty"`

	// Versions holds all chart versions
	// +optional
	Versions []string `json:"versions,omitempty"`

	// Repository is the repository name of this chart
	// +optional
	Repository HelmChartRepository `json:"repository,omitempty"`
}

func (*HelmChart) DeepCopy

func (in *HelmChart) DeepCopy() *HelmChart

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

func (*HelmChart) DeepCopyInto

func (in *HelmChart) DeepCopyInto(out *HelmChart)

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

func (HelmChart) OpenAPIModelName added in v4.7.0

func (in HelmChart) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type HelmChartRepository

type HelmChartRepository struct {
	// Name is the name of the repository
	// +optional
	Name string `json:"name,omitempty"`

	// URL is the repository url
	// +optional
	URL string `json:"url,omitempty"`

	// Username of the repository
	// +optional
	Username string `json:"username,omitempty"`

	// Password of the repository
	// +optional
	Password string `json:"password,omitempty"`

	// Insecure specifies if the chart should be retrieved without TLS
	// verification
	// +optional
	Insecure bool `json:"insecure,omitempty"`
}

func (*HelmChartRepository) DeepCopy

func (in *HelmChartRepository) DeepCopy() *HelmChartRepository

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

func (*HelmChartRepository) DeepCopyInto

func (in *HelmChartRepository) DeepCopyInto(out *HelmChartRepository)

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

func (HelmChartRepository) OpenAPIModelName added in v4.7.0

func (in HelmChartRepository) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type HelmConfiguration

type HelmConfiguration struct {
	// Name of the chart to deploy
	Name string `json:"name"`

	// The additional helm values to use. Expected block string
	// +optional
	Values string `json:"values,omitempty"`

	// Version is the version of the chart to deploy
	// +optional
	Version string `json:"version,omitempty"`

	// The repo url to use
	// +optional
	RepoURL string `json:"repoUrl,omitempty"`

	// The username to use for the selected repository
	// +optional
	Username string `json:"username,omitempty"`

	// The password to use for the selected repository
	// +optional
	Password string `json:"password,omitempty"`

	// Determines if the remote location uses an insecure
	// TLS certificate.
	// +optional
	Insecure bool `json:"insecure,omitempty"`
}

HelmConfiguration holds the helm configuration

func (*HelmConfiguration) DeepCopy

func (in *HelmConfiguration) DeepCopy() *HelmConfiguration

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

func (*HelmConfiguration) DeepCopyInto

func (in *HelmConfiguration) DeepCopyInto(out *HelmConfiguration)

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

func (HelmConfiguration) OpenAPIModelName added in v4.7.0

func (in HelmConfiguration) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type HelmTask

type HelmTask struct {
	// Release holds the release information
	// +optional
	Release HelmTaskRelease `json:"release,omitempty"`

	// Type is the task type. Defaults to Upgrade
	// +optional
	Type HelmTaskType `json:"type,omitempty"`

	// RollbackRevision is the revision to rollback to
	// +optional
	RollbackRevision string `json:"rollbackRevision,omitempty"`
}

func (*HelmTask) DeepCopy

func (in *HelmTask) DeepCopy() *HelmTask

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

func (*HelmTask) DeepCopyInto

func (in *HelmTask) DeepCopyInto(out *HelmTask)

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

func (HelmTask) OpenAPIModelName added in v4.7.0

func (in HelmTask) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type HelmTaskRelease

type HelmTaskRelease struct {
	// Name is the name of the release
	Name string `json:"name,omitempty"`

	// Namespace of the release, if empty will use the target namespace
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// Config is the helm config to use to deploy the release
	// +optional
	Config clusterv1.HelmReleaseConfig `json:"config,omitempty"`

	// Labels are additional labels for the helm release.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
}

func (*HelmTaskRelease) DeepCopy

func (in *HelmTaskRelease) DeepCopy() *HelmTaskRelease

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

func (*HelmTaskRelease) DeepCopyInto

func (in *HelmTaskRelease) DeepCopyInto(out *HelmTaskRelease)

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

func (HelmTaskRelease) OpenAPIModelName added in v4.7.0

func (in HelmTaskRelease) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type HelmTaskType

type HelmTaskType string

HelmTaskType describes the type of a task

const (
	HelmTaskTypeInstall  HelmTaskType = "Install"
	HelmTaskTypeUpgrade  HelmTaskType = "Upgrade"
	HelmTaskTypeDelete   HelmTaskType = "Delete"
	HelmTaskTypeRollback HelmTaskType = "Rollback"
)

These are the valid admin account types

type ImportVirtualClustersSpec

type ImportVirtualClustersSpec struct {
	// RoleMapping indicates an optional role mapping from a rancher project role to a rancher cluster role. Map to an empty role to exclude users and groups with that role from
	// being synced.
	// +optional
	RoleMapping map[string]string `json:"roleMapping,omitempty"`
}

func (*ImportVirtualClustersSpec) DeepCopy

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

func (*ImportVirtualClustersSpec) DeepCopyInto

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

func (ImportVirtualClustersSpec) OpenAPIModelName added in v4.7.0

func (in ImportVirtualClustersSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type InstanceAccess

type InstanceAccess struct {
	// Specifies which cluster role should get applied to users or teams that do not
	// match a rule below.
	// +optional
	DefaultClusterRole string `json:"defaultClusterRole,omitempty"`

	// Rules defines which users and teams should have which access to the virtual
	// cluster. If no rule matches an authenticated incoming user, the user will get cluster admin
	// access.
	// +optional
	Rules []InstanceAccessRule `json:"rules,omitempty"`
}

func (*InstanceAccess) DeepCopy

func (in *InstanceAccess) DeepCopy() *InstanceAccess

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

func (*InstanceAccess) DeepCopyInto

func (in *InstanceAccess) DeepCopyInto(out *InstanceAccess)

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

func (InstanceAccess) OpenAPIModelName added in v4.7.0

func (in InstanceAccess) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type InstanceAccessRule

type InstanceAccessRule struct {
	// Users this rule matches. * means all users.
	// +optional
	Users []string `json:"users,omitempty"`

	// Teams that this rule matches.
	// +optional
	Teams []string `json:"teams,omitempty"`

	// ClusterRole is the cluster role that should be assigned to the
	// +optional
	ClusterRole string `json:"clusterRole,omitempty"`
}

func (*InstanceAccessRule) DeepCopy

func (in *InstanceAccessRule) DeepCopy() *InstanceAccessRule

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

func (*InstanceAccessRule) DeepCopyInto

func (in *InstanceAccessRule) DeepCopyInto(out *InstanceAccessRule)

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

func (InstanceAccessRule) OpenAPIModelName added in v4.7.0

func (in InstanceAccessRule) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type InstanceDeployedAppPhase

type InstanceDeployedAppPhase string

type InstanceDeployedAppStatus

type InstanceDeployedAppStatus struct {
	// Name of the app that should get deployed
	// +optional
	Name string `json:"name,omitempty"`

	// Namespace specifies in which target namespace the app should
	// get deployed in. Only used for virtual cluster apps.
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// ReleaseName of the target app
	// +optional
	ReleaseName string `json:"releaseName,omitempty"`

	// Version of the app that should get deployed
	// +optional
	Version string `json:"version,omitempty"`

	// Phase describes the current phase the app deployment is in
	// +optional
	Phase InstanceDeployedAppPhase `json:"phase,omitempty"`

	// Reason describes the reason in machine-readable form
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human-readable form
	// +optional
	Message string `json:"message,omitempty"`
}

func (*InstanceDeployedAppStatus) DeepCopy

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

func (*InstanceDeployedAppStatus) DeepCopyInto

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

func (InstanceDeployedAppStatus) OpenAPIModelName added in v4.7.0

func (in InstanceDeployedAppStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type InstancePhase

type InstancePhase string
var (
	InstanceReady    InstancePhase = "Ready"
	InstanceSleeping InstancePhase = "Sleeping"
	InstanceFailed   InstancePhase = "Failed"
	InstancePending  InstancePhase = "Pending"
)

type KindSecretRef

type KindSecretRef struct {
	// APIGroup is the api group of the secret
	APIGroup string `json:"apiGroup,omitempty"`
	// Kind is the kind of the secret
	Kind string `json:"kind,omitempty"`
	// +optional
	SecretName string `json:"secretName,omitempty"`
	// +optional
	SecretNamespace string `json:"secretNamespace,omitempty"`
	// +optional
	Key string `json:"key,omitempty"`
}

KindSecretRef is the reference to a secret containing the user password

func (*KindSecretRef) DeepCopy

func (in *KindSecretRef) DeepCopy() *KindSecretRef

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

func (*KindSecretRef) DeepCopyInto

func (in *KindSecretRef) DeepCopyInto(out *KindSecretRef)

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

func (KindSecretRef) OpenAPIModelName added in v4.7.0

func (in KindSecretRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type KubeVirtNodeTypeSpec added in v4.4.0

type KubeVirtNodeTypeSpec struct {
	NamedNodeTypeSpec `json:",inline"`

	// VirtualMachineTemplate is a full KubeVirt VirtualMachine template to use for this NodeType.
	// This is mutually exclusive with MergeVirtualMachineTemplate
	VirtualMachineTemplate *runtime.RawExtension `json:"virtualMachineTemplate,omitempty"`

	// MergeVirtualMachineTemplate will be merged into base VirtualMachine template for this NodeProvider.
	// This allows overwriting of specific fields from top level template by individual NodeTypes
	// This is mutually exclusive with VirtualMachineTemplate
	MergeVirtualMachineTemplate *runtime.RawExtension `json:"mergeVirtualMachineTemplate,omitempty"`

	// MaxCapacity is the maximum number of nodes that can be created for this NodeType.
	MaxCapacity int `json:"maxCapacity,omitempty"`
}

KubeVirtNodeTypeSpec defines single NodeType spec for KubeVirt provider type.

func (*KubeVirtNodeTypeSpec) DeepCopy added in v4.4.0

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

func (*KubeVirtNodeTypeSpec) DeepCopyInto added in v4.4.0

func (in *KubeVirtNodeTypeSpec) DeepCopyInto(out *KubeVirtNodeTypeSpec)

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

func (KubeVirtNodeTypeSpec) OpenAPIModelName added in v4.7.0

func (in KubeVirtNodeTypeSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type LocalClusterAccessSpec

type LocalClusterAccessSpec struct {
	// DisplayName is the name that should be shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description is the description of this object in
	// human-readable text.
	// +optional
	Description string `json:"description,omitempty"`

	// Users are the users affected by this cluster access object
	// +optional
	Users []UserOrTeam `json:"users,omitempty"`

	// Teams are the teams affected by this cluster access object
	// +optional
	Teams []string `json:"teams,omitempty"`

	// ClusterRoles define the cluster roles that the users should have assigned in the cluster.
	// +optional
	ClusterRoles []ClusterRoleRef `json:"clusterRoles,omitempty"`

	// Priority is a unique value that specifies the priority of this cluster access
	// for the space constraints and quota. A higher priority means the cluster access object
	// will override the space constraints of lower priority cluster access objects
	// +optional
	Priority int `json:"priority,omitempty"`
}

func (*LocalClusterAccessSpec) DeepCopy

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

func (*LocalClusterAccessSpec) DeepCopyInto

func (in *LocalClusterAccessSpec) DeepCopyInto(out *LocalClusterAccessSpec)

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

func (LocalClusterAccessSpec) OpenAPIModelName added in v4.7.0

func (in LocalClusterAccessSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type LocalClusterAccessTemplate

type LocalClusterAccessTemplate struct {
	// Metadata is the metadata of the cluster access object
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	Metadata metav1.ObjectMeta `json:"metadata,omitempty"`

	// LocalClusterAccessSpec holds the spec of the cluster access in the cluster
	// +optional
	LocalClusterAccessSpec LocalClusterAccessSpec `json:"spec,omitempty"`
}

func (*LocalClusterAccessTemplate) DeepCopy

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

func (*LocalClusterAccessTemplate) DeepCopyInto

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

func (LocalClusterAccessTemplate) OpenAPIModelName added in v4.7.0

func (in LocalClusterAccessTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type LocalClusterRoleTemplate

type LocalClusterRoleTemplate struct {
	// Metadata is the metadata of the cluster role template object
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	Metadata metav1.ObjectMeta `json:"metadata,omitempty"`

	// LocalClusterRoleTemplateSpec holds the spec of the cluster role template in the cluster
	// +optional
	LocalClusterRoleTemplateSpec LocalClusterRoleTemplateSpec `json:"spec,omitempty"`
}

func (*LocalClusterRoleTemplate) DeepCopy

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

func (*LocalClusterRoleTemplate) DeepCopyInto

func (in *LocalClusterRoleTemplate) DeepCopyInto(out *LocalClusterRoleTemplate)

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

func (LocalClusterRoleTemplate) OpenAPIModelName added in v4.7.0

func (in LocalClusterRoleTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type LocalClusterRoleTemplateSpec

type LocalClusterRoleTemplateSpec struct {
	// DisplayName is the name that should be shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description is the description of this object in
	// human-readable text.
	// +optional
	Description string `json:"description,omitempty"`

	// ClusterRoleTemplate holds the cluster role template
	// +optional
	ClusterRoleTemplate ClusterRoleTemplateTemplate `json:"clusterRoleTemplate,omitempty"`
}

func (*LocalClusterRoleTemplateSpec) DeepCopy

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

func (*LocalClusterRoleTemplateSpec) DeepCopyInto

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

func (LocalClusterRoleTemplateSpec) OpenAPIModelName added in v4.7.0

func (in LocalClusterRoleTemplateSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ManagedNodeTypeObjectMeta added in v4.4.0

type ManagedNodeTypeObjectMeta struct {
	// Labels holds labels to add to this managed NodeType.
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations holds annotations to add to this managed NodeType.
	Annotations map[string]string `json:"annotations,omitempty"`
}

func (*ManagedNodeTypeObjectMeta) DeepCopy added in v4.4.0

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

func (*ManagedNodeTypeObjectMeta) DeepCopyInto added in v4.4.0

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

func (ManagedNodeTypeObjectMeta) OpenAPIModelName added in v4.7.0

func (in ManagedNodeTypeObjectMeta) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Member

type Member struct {
	// Kind is the kind of the member. Currently either User or Team
	// +optional
	Kind string `json:"kind,omitempty"`

	// Group of the member. Currently only supports storage.loft.sh
	// +optional
	Group string `json:"group,omitempty"`

	// Name of the member
	// +optional
	Name string `json:"name,omitempty"`

	// ClusterRole is the assigned role for the above member
	ClusterRole string `json:"clusterRole"`
}

func (*Member) DeepCopy

func (in *Member) DeepCopy() *Member

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

func (*Member) DeepCopyInto

func (in *Member) DeepCopyInto(out *Member)

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

func (Member) OpenAPIModelName added in v4.7.0

func (in Member) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Metrics added in v4.2.0

type Metrics struct {
	// Replicas is the number of desired replicas.
	Replicas *int32 `json:"replicas,omitempty"`

	// Resources are compute resource required by the metrics backend
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`

	// Retention is the metrics data retention period. Default is 1y
	Retention string `json:"retention,omitempty"`

	// Storage contains settings related to the metrics backend's persistent volume configuration
	Storage `json:"storage,omitempty"`
}

func (*Metrics) DeepCopy added in v4.2.0

func (in *Metrics) DeepCopy() *Metrics

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

func (*Metrics) DeepCopyInto added in v4.2.0

func (in *Metrics) DeepCopyInto(out *Metrics)

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

func (Metrics) OpenAPIModelName added in v4.7.0

func (in Metrics) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NamedNodeTypeSpec added in v4.4.0

type NamedNodeTypeSpec struct {
	NodeTypeSpec `json:",inline"`

	// Name is the name of this node type.
	Name string `json:"name"`

	// Metadata holds metadata to add to this managed NodeType.
	Metadata ManagedNodeTypeObjectMeta `json:"metadata,omitempty"`
}

func (*NamedNodeTypeSpec) DeepCopy added in v4.4.0

func (in *NamedNodeTypeSpec) DeepCopy() *NamedNodeTypeSpec

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

func (*NamedNodeTypeSpec) DeepCopyInto added in v4.4.0

func (in *NamedNodeTypeSpec) DeepCopyInto(out *NamedNodeTypeSpec)

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

func (NamedNodeTypeSpec) OpenAPIModelName added in v4.7.0

func (in NamedNodeTypeSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NamespacePattern

type NamespacePattern struct {
	// Space holds the namespace pattern to use for space instances
	// +optional
	Space string `json:"space,omitempty"`

	// VirtualCluster holds the namespace pattern to use for virtual cluster instances
	// +optional
	VirtualCluster string `json:"virtualCluster,omitempty"`
}

func (*NamespacePattern) DeepCopy

func (in *NamespacePattern) DeepCopy() *NamespacePattern

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

func (*NamespacePattern) DeepCopyInto

func (in *NamespacePattern) DeepCopyInto(out *NamespacePattern)

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

func (NamespacePattern) OpenAPIModelName added in v4.7.0

func (in NamespacePattern) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NamespacedRef added in v4.4.0

type NamespacedRef struct {
	// Name is the name of this resource
	Name string `json:"name"`
	// Namespace is the namespace of this resource
	Namespace string `json:"namespace"`
}

func (*NamespacedRef) DeepCopy added in v4.4.0

func (in *NamespacedRef) DeepCopy() *NamespacedRef

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

func (*NamespacedRef) DeepCopyInto added in v4.4.0

func (in *NamespacedRef) DeepCopyInto(out *NamespacedRef)

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

func (NamespacedRef) OpenAPIModelName added in v4.7.0

func (in NamespacedRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NetworkPeer

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

	Spec   NetworkPeerSpec   `json:"spec,omitempty"`
	Status NetworkPeerStatus `json:"status,omitempty"`
}

NetworkPeer hols the information of network peers +k8s:openapi-gen=true

func (*NetworkPeer) DeepCopy

func (in *NetworkPeer) DeepCopy() *NetworkPeer

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

func (*NetworkPeer) DeepCopyInto

func (in *NetworkPeer) DeepCopyInto(out *NetworkPeer)

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

func (*NetworkPeer) DeepCopyObject

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

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

func (NetworkPeer) OpenAPIModelName added in v4.7.0

func (in NetworkPeer) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NetworkPeerList

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

NetworkPeerList contains a list of NetworkPeers

func (*NetworkPeerList) DeepCopy

func (in *NetworkPeerList) DeepCopy() *NetworkPeerList

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

func (*NetworkPeerList) DeepCopyInto

func (in *NetworkPeerList) DeepCopyInto(out *NetworkPeerList)

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

func (*NetworkPeerList) DeepCopyObject

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

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

func (NetworkPeerList) OpenAPIModelName added in v4.7.0

func (in NetworkPeerList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NetworkPeerSpec

type NetworkPeerSpec struct {
	// DiscoKey is a key used for DERP discovery
	DiscoKey string `json:"discoKey,omitempty"`
	// MachineKey is used to identify a network peer
	MachineKey string `json:"machineKey,omitempty"`
	// NodeKey is used to identify a session
	NodeKey string `json:"nodeKey,omitempty"`
	// Addresses is a list of IP addresses of this Node directly.
	Addresses []string `json:"addresses,omitempty"`
	// AllowedIPs is a range of IP addresses to route to this node.
	AllowedIPs []string `json:"allowedIPs,omitempty"`
	// Endpoints is a list of IP+port (public via STUN, and local LANs) where
	// this node can be reached.
	Endpoints []string `json:"endpoints,omitempty"`
}

func (*NetworkPeerSpec) DeepCopy

func (in *NetworkPeerSpec) DeepCopy() *NetworkPeerSpec

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

func (*NetworkPeerSpec) DeepCopyInto

func (in *NetworkPeerSpec) DeepCopyInto(out *NetworkPeerSpec)

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

func (NetworkPeerSpec) OpenAPIModelName added in v4.7.0

func (in NetworkPeerSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NetworkPeerStatus

type NetworkPeerStatus struct {
	// LastSeen is when the network peer was last online. It is not updated when
	// Online is true.
	LastSeen string `json:"lastSeen,omitempty"`
	// HomeDerpRegion is the currently preferred DERP region by the network peer
	HomeDerpRegion int `json:"homeDerpRegion,omitempty"`
	// Online is whether the node is currently connected to the coordination
	// server.
	Online bool `json:"online,omitempty"`
}

func (*NetworkPeerStatus) DeepCopy

func (in *NetworkPeerStatus) DeepCopy() *NetworkPeerStatus

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

func (*NetworkPeerStatus) DeepCopyInto

func (in *NetworkPeerStatus) DeepCopyInto(out *NetworkPeerStatus)

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

func (NetworkPeerStatus) OpenAPIModelName added in v4.7.0

func (in NetworkPeerStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeClaim added in v4.4.0

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

	Spec   NodeClaimSpec   `json:"spec,omitempty"`
	Status NodeClaimStatus `json:"status,omitempty"`
}

NodeClaim holds the node claim for vCluster. +k8s:openapi-gen=true

func (*NodeClaim) DeepCopy added in v4.4.0

func (in *NodeClaim) DeepCopy() *NodeClaim

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

func (*NodeClaim) DeepCopyInto added in v4.4.0

func (in *NodeClaim) DeepCopyInto(out *NodeClaim)

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

func (*NodeClaim) DeepCopyObject added in v4.4.0

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

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

func (*NodeClaim) GetConditions added in v4.4.0

func (a *NodeClaim) GetConditions() agentstoragev1.Conditions

func (NodeClaim) OpenAPIModelName added in v4.7.0

func (in NodeClaim) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*NodeClaim) SetConditions added in v4.4.0

func (a *NodeClaim) SetConditions(conditions agentstoragev1.Conditions)

type NodeClaimList added in v4.4.0

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

NodeClaimList contains a list of NodeClaim

func (*NodeClaimList) DeepCopy added in v4.4.0

func (in *NodeClaimList) DeepCopy() *NodeClaimList

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

func (*NodeClaimList) DeepCopyInto added in v4.4.0

func (in *NodeClaimList) DeepCopyInto(out *NodeClaimList)

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

func (*NodeClaimList) DeepCopyObject added in v4.4.0

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

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

func (NodeClaimList) OpenAPIModelName added in v4.7.0

func (in NodeClaimList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeClaimPhase added in v4.4.0

type NodeClaimPhase string

NodeClaimPhase defines the phase of the NodeClaim

const (
	// NodeClaimPhasePending is the initial state of a NodeClaim.
	NodeClaimPhasePending NodeClaimPhase = "Pending"
	// NodeClaimPhaseAvailable means the underlying node has been successfully provisioned.
	NodeClaimPhaseAvailable NodeClaimPhase = "Available"
	// NodeClaimPhaseFailed means the provisioning process has failed.
	NodeClaimPhaseFailed NodeClaimPhase = "Failed"
)

type NodeClaimSpec added in v4.4.0

type NodeClaimSpec struct {
	// Taints will be applied to the NodeClaim's node.
	// +optional
	Taints []corev1.Taint `json:"taints,omitempty"`

	// StartupTaints are taints that are applied to nodes upon startup which are expected to be removed automatically
	// within a short period of time, typically by a DaemonSet that tolerates the taint. These are commonly used by
	// daemonsets to allow initialization and enforce startup ordering.  StartupTaints are ignored for provisioning
	// purposes in that pods are not required to tolerate a StartupTaint in order to have nodes provisioned for them.
	// +optional
	StartupTaints []corev1.Taint `json:"startupTaints,omitempty"`

	// KubeletArgs are additional arguments to pass to the kubelet.
	// +optional
	KubeletArgs map[string]string `json:"kubeletArgs,omitempty"`

	// DesiredCapacity specifies the resources requested by the NodeClaim.
	DesiredCapacity corev1.ResourceList `json:"desiredCapacity,omitempty"`

	// Requirements are the requirements for the NodeClaim.
	Requirements []corev1.NodeSelectorRequirement `json:"requirements,omitempty"`

	// Properties are extra properties for the NodeClaim.
	// +optional
	Properties map[string]string `json:"properties"`

	// ProviderRef is the name of the NodeProvider that this NodeClaim is based on.
	ProviderRef string `json:"providerRef"`

	// TypeRef is the full name of the NodeType that this NodeClaim is based on.
	// +optional
	TypeRef string `json:"typeRef,omitempty"`

	// VClusterRef references source vCluster. This is required.
	VClusterRef string `json:"vClusterRef"`

	// ControlPlane indicates if the node claim is for a control plane node. This is intentionally not omitempty as
	// we want to ensure that the control plane is always set for easier checking in for example terraform templates.
	// +optional
	ControlPlane bool `json:"controlPlane"`
}

NodeClaimSpec defines spec of node claim.

func (*NodeClaimSpec) DeepCopy added in v4.4.0

func (in *NodeClaimSpec) DeepCopy() *NodeClaimSpec

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

func (*NodeClaimSpec) DeepCopyInto added in v4.4.0

func (in *NodeClaimSpec) DeepCopyInto(out *NodeClaimSpec)

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

func (NodeClaimSpec) OpenAPIModelName added in v4.7.0

func (in NodeClaimSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeClaimStatus added in v4.4.0

type NodeClaimStatus struct {
	// Phase is the current lifecycle phase of the NodeClaim.
	// +optional
	Phase NodeClaimPhase `json:"phase,omitempty"`

	// Reason describes the reason in machine-readable form
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human-readable form
	// +optional
	Message string `json:"message,omitempty"`

	// Conditions describe the current state of the platform NodeClaim.
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
}

func (*NodeClaimStatus) DeepCopy added in v4.4.0

func (in *NodeClaimStatus) DeepCopy() *NodeClaimStatus

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

func (*NodeClaimStatus) DeepCopyInto added in v4.4.0

func (in *NodeClaimStatus) DeepCopyInto(out *NodeClaimStatus)

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

func (NodeClaimStatus) OpenAPIModelName added in v4.7.0

func (in NodeClaimStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeEnvironment added in v4.4.0

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

	Spec   NodeEnvironmentSpec   `json:"spec,omitempty"`
	Status NodeEnvironmentStatus `json:"status,omitempty"`
}

NodeEnvironment holds the node environment for vCluster. +k8s:openapi-gen=true

func (*NodeEnvironment) DeepCopy added in v4.4.0

func (in *NodeEnvironment) DeepCopy() *NodeEnvironment

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

func (*NodeEnvironment) DeepCopyInto added in v4.4.0

func (in *NodeEnvironment) DeepCopyInto(out *NodeEnvironment)

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

func (*NodeEnvironment) DeepCopyObject added in v4.4.0

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

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

func (*NodeEnvironment) GetConditions added in v4.4.0

func (a *NodeEnvironment) GetConditions() agentstoragev1.Conditions

func (NodeEnvironment) OpenAPIModelName added in v4.7.0

func (in NodeEnvironment) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*NodeEnvironment) SetConditions added in v4.4.0

func (a *NodeEnvironment) SetConditions(conditions agentstoragev1.Conditions)

type NodeEnvironmentList added in v4.4.0

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

NodeEnvironmentList contains a list of NodeEnvironment

func (*NodeEnvironmentList) DeepCopy added in v4.4.0

func (in *NodeEnvironmentList) DeepCopy() *NodeEnvironmentList

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

func (*NodeEnvironmentList) DeepCopyInto added in v4.4.0

func (in *NodeEnvironmentList) DeepCopyInto(out *NodeEnvironmentList)

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

func (*NodeEnvironmentList) DeepCopyObject added in v4.4.0

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

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

func (NodeEnvironmentList) OpenAPIModelName added in v4.7.0

func (in NodeEnvironmentList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeEnvironmentPhase added in v4.4.0

type NodeEnvironmentPhase string

NodeEnvironmentPhase defines the phase of the NodeEnvironment

const (
	// NodeEnvironmentPhasePending is the initial state of a NodeEnvironment.
	NodeEnvironmentPhasePending NodeEnvironmentPhase = "Pending"
	// NodeEnvironmentPhaseAvailable means the underlying node environment has been successfully provisioned.
	NodeEnvironmentPhaseAvailable NodeEnvironmentPhase = "Available"
	// NodeEnvironmentPhaseFailed means the provisioning process has failed.
	NodeEnvironmentPhaseFailed NodeEnvironmentPhase = "Failed"
)

type NodeEnvironmentSpec added in v4.4.0

type NodeEnvironmentSpec struct {
	// Properties are the properties for the NodeEnvironment.
	// +optional
	Properties map[string]string `json:"properties"`

	// ProviderRef is the name of the NodeProvider that this NodeEnvironment is based on.
	ProviderRef string `json:"providerRef"`

	// VClusterRef references source vCluster. This is required.
	VClusterRef string `json:"vClusterRef"`

	// ControlPlane indicates if the node environment is a control plane environment. This is intentionally not omitempty as
	// we want to ensure that the control plane is always set for easier checking in for example terraform templates.
	// +optional
	ControlPlane bool `json:"controlPlane"`
}

NodeEnvironmentSpec defines spec of node environment.

func (*NodeEnvironmentSpec) DeepCopy added in v4.4.0

func (in *NodeEnvironmentSpec) DeepCopy() *NodeEnvironmentSpec

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

func (*NodeEnvironmentSpec) DeepCopyInto added in v4.4.0

func (in *NodeEnvironmentSpec) DeepCopyInto(out *NodeEnvironmentSpec)

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

func (NodeEnvironmentSpec) OpenAPIModelName added in v4.7.0

func (in NodeEnvironmentSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeEnvironmentStatus added in v4.4.0

type NodeEnvironmentStatus struct {
	// Phase is the current lifecycle phase of the NodeEnvironment.
	// +optional
	Phase NodeEnvironmentPhase `json:"phase,omitempty"`

	// Reason describes the reason in machine-readable form
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human-readable form
	// +optional
	Message string `json:"message,omitempty"`

	// Conditions describe the current state of the platform NodeClaim.
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
}

func (*NodeEnvironmentStatus) DeepCopy added in v4.4.0

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

func (*NodeEnvironmentStatus) DeepCopyInto added in v4.4.0

func (in *NodeEnvironmentStatus) DeepCopyInto(out *NodeEnvironmentStatus)

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

func (NodeEnvironmentStatus) OpenAPIModelName added in v4.7.0

func (in NodeEnvironmentStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProvider added in v4.4.0

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

	Spec   NodeProviderSpec   `json:"spec,omitempty"`
	Status NodeProviderStatus `json:"status,omitempty"`
}

NodeProvider holds the information of a node provider config. This resource defines various ways a node can be provisioned or configured. +k8s:openapi-gen=true

func (*NodeProvider) DeepCopy added in v4.4.0

func (in *NodeProvider) DeepCopy() *NodeProvider

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

func (*NodeProvider) DeepCopyInto added in v4.4.0

func (in *NodeProvider) DeepCopyInto(out *NodeProvider)

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

func (*NodeProvider) DeepCopyObject added in v4.4.0

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

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

func (*NodeProvider) GetConditions added in v4.4.0

func (a *NodeProvider) GetConditions() agentstoragev1.Conditions

func (NodeProvider) OpenAPIModelName added in v4.7.0

func (in NodeProvider) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*NodeProvider) SetConditions added in v4.4.0

func (a *NodeProvider) SetConditions(conditions agentstoragev1.Conditions)

type NodeProviderBCM added in v4.4.0

type NodeProviderBCM struct {
	// SecretRef is a reference to secret with keys for BCM auth.
	SecretRef *NamespacedRef `json:"secretRef"`

	// Endpoint is a address for head node.
	Endpoint string `json:"endpoint"`

	// NodeTypes define NodeTypes that should be automatically created for this provider.
	NodeTypes []BCMNodeTypeSpec `json:"nodeTypes,omitempty"`
}

NodeProviderBCMSpec defines the configuration for a BCM node provider.

func (*NodeProviderBCM) DeepCopy added in v4.4.0

func (in *NodeProviderBCM) DeepCopy() *NodeProviderBCM

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

func (*NodeProviderBCM) DeepCopyInto added in v4.4.0

func (in *NodeProviderBCM) DeepCopyInto(out *NodeProviderBCM)

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

func (NodeProviderBCM) OpenAPIModelName added in v4.7.0

func (in NodeProviderBCM) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderClusterAPI added in v4.5.0

type NodeProviderClusterAPI struct {
	ClusterAPIObjects `json:",inline"`

	// ClusterRef is a reference to connected host cluster in which KubeVirt operator is running
	ClusterRef *NodeProviderClusterRef `json:"clusterRef,omitempty"`

	// NodeTypes define NodeTypes that should be automatically created for this provider.
	NodeTypes []ClusterAPINodeTypeSpec `json:"nodeTypes,omitempty"`
}

func (*NodeProviderClusterAPI) DeepCopy added in v4.5.0

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

func (*NodeProviderClusterAPI) DeepCopyInto added in v4.5.0

func (in *NodeProviderClusterAPI) DeepCopyInto(out *NodeProviderClusterAPI)

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

func (NodeProviderClusterAPI) OpenAPIModelName added in v4.7.0

func (in NodeProviderClusterAPI) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderClusterRef added in v4.5.0

type NodeProviderClusterRef struct {
	// Cluster is the connected cluster the VMs will be created in
	Cluster string `json:"cluster"`

	// Namespace is the namespace inside the connected cluster holding VMs
	Namespace string `json:"namespace,omitempty"`
}

func (*NodeProviderClusterRef) DeepCopy added in v4.5.0

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

func (*NodeProviderClusterRef) DeepCopyInto added in v4.5.0

func (in *NodeProviderClusterRef) DeepCopyInto(out *NodeProviderClusterRef)

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

func (NodeProviderClusterRef) OpenAPIModelName added in v4.7.0

func (in NodeProviderClusterRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderKubeVirt added in v4.4.0

type NodeProviderKubeVirt struct {
	// ClusterRef is a reference to connected host cluster in which KubeVirt operator is running
	ClusterRef *NodeProviderClusterRef `json:"clusterRef,omitempty"`

	// VirtualMachineTemplate is a KubeVirt VirtualMachine template to use by NodeTypes managed by this NodeProvider
	VirtualMachineTemplate *runtime.RawExtension `json:"virtualMachineTemplate,omitempty"`

	// NodeTypes define NodeTypes that should be automatically created for this provider.
	NodeTypes []KubeVirtNodeTypeSpec `json:"nodeTypes"`
}

NodeProviderKubeVirt defines the configuration for a KubeVirt node provider.

func (*NodeProviderKubeVirt) DeepCopy added in v4.4.0

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

func (*NodeProviderKubeVirt) DeepCopyInto added in v4.4.0

func (in *NodeProviderKubeVirt) DeepCopyInto(out *NodeProviderKubeVirt)

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

func (NodeProviderKubeVirt) OpenAPIModelName added in v4.7.0

func (in NodeProviderKubeVirt) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderList added in v4.4.0

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

NodeProviderList contains a list of NodeProvider

func (*NodeProviderList) DeepCopy added in v4.4.0

func (in *NodeProviderList) DeepCopy() *NodeProviderList

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

func (*NodeProviderList) DeepCopyInto added in v4.4.0

func (in *NodeProviderList) DeepCopyInto(out *NodeProviderList)

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

func (*NodeProviderList) DeepCopyObject added in v4.4.0

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

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

func (NodeProviderList) OpenAPIModelName added in v4.7.0

func (in NodeProviderList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderPhase added in v4.4.0

type NodeProviderPhase string

NodeProviderPhase defines the phase of the NodeProvider

type NodeProviderSpec added in v4.4.0

type NodeProviderSpec struct {
	// Properties are global properties that are applied to all node claims and environments managed by this provider.
	// +optional
	Properties map[string]string `json:"properties,omitempty"`

	// BCM configures a node provider for BCM Bare Metal Cloud environments.
	// +optional
	BCM *NodeProviderBCM `json:"bcm,omitempty"`

	// Kubevirt configures a node provider using KubeVirt, enabling virtual machines
	// to be provisioned as nodes within a vCluster.
	// +optional
	KubeVirt *NodeProviderKubeVirt `json:"kubeVirt,omitempty"`

	// Terraform configures a node provider using Terraform, enabling nodes to be provisioned using Terraform.
	// +optional
	Terraform *NodeProviderTerraform `json:"terraform,omitempty"`

	// ClusterAPI configures a node provider using Cluster API, enabling nodes to be provisioned using Cluster API.
	// This requires the vCluster to be deployed with Cluster API as well.
	// +optional
	ClusterAPI *NodeProviderClusterAPI `json:"clusterAPI,omitempty"`

	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`
}

NodeProviderSpec defines the desired state of NodeProvider. Only one of the provider types (Pods, BCM, Kubevirt) should be specified at a time.

func (*NodeProviderSpec) DeepCopy added in v4.4.0

func (in *NodeProviderSpec) DeepCopy() *NodeProviderSpec

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

func (*NodeProviderSpec) DeepCopyInto added in v4.4.0

func (in *NodeProviderSpec) DeepCopyInto(out *NodeProviderSpec)

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

func (NodeProviderSpec) OpenAPIModelName added in v4.7.0

func (in NodeProviderSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderStatus added in v4.4.0

type NodeProviderStatus struct {
	// Conditions describe the current state of the platform NodeProvider.
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`

	// Reason describes the reason in machine-readable form
	// +optional
	Reason string `json:"reason,omitempty"`

	// Phase is the current lifecycle phase of the NodeProvider.
	// +optional
	Phase NodeProviderPhase `json:"phase,omitempty"`

	// Message is a human-readable message indicating details about why the NodeProvider is in its current state.
	// +optional
	Message string `json:"message,omitempty"`
}

NodeProviderStatus defines the observed state of NodeProvider.

func (*NodeProviderStatus) DeepCopy added in v4.4.0

func (in *NodeProviderStatus) DeepCopy() *NodeProviderStatus

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

func (*NodeProviderStatus) DeepCopyInto added in v4.4.0

func (in *NodeProviderStatus) DeepCopyInto(out *NodeProviderStatus)

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

func (NodeProviderStatus) OpenAPIModelName added in v4.7.0

func (in NodeProviderStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeProviderTerraform added in v4.4.0

type NodeProviderTerraform struct {
	// NodeTemplate is the template to use for this node provider.
	NodeTemplate *TerraformTemplate `json:"nodeTemplate,omitempty"`

	// NodeEnvironmentTemplate is the template to use for this node environment.
	NodeEnvironmentTemplate *TerraformNodeEnvironmentTemplate `json:"nodeEnvironmentTemplate,omitempty"`

	// NodeTypes define NodeTypes that should be automatically created for this provider.
	NodeTypes []TerraformNodeTypeSpec `json:"nodeTypes,omitempty"`
}

func (*NodeProviderTerraform) DeepCopy added in v4.4.0

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

func (*NodeProviderTerraform) DeepCopyInto added in v4.4.0

func (in *NodeProviderTerraform) DeepCopyInto(out *NodeProviderTerraform)

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

func (NodeProviderTerraform) OpenAPIModelName added in v4.7.0

func (in NodeProviderTerraform) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeType added in v4.4.0

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

	Spec   NodeTypeSpec   `json:"spec,omitempty"`
	Status NodeTypeStatus `json:"status,omitempty"`
}

NodeType holds the information of a node type. +k8s:openapi-gen=true

func (*NodeType) DeepCopy added in v4.4.0

func (in *NodeType) DeepCopy() *NodeType

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

func (*NodeType) DeepCopyInto added in v4.4.0

func (in *NodeType) DeepCopyInto(out *NodeType)

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

func (*NodeType) DeepCopyObject added in v4.4.0

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

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

func (*NodeType) GetConditions added in v4.4.0

func (a *NodeType) GetConditions() agentstoragev1.Conditions

func (NodeType) OpenAPIModelName added in v4.7.0

func (in NodeType) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*NodeType) SetConditions added in v4.4.0

func (a *NodeType) SetConditions(conditions agentstoragev1.Conditions)

type NodeTypeCapacity added in v4.4.0

type NodeTypeCapacity struct {
	// Total is the total number of nodes of this type
	Total int `json:"total"`

	// Claimed is the number of already claimed nodes of this type
	Claimed int `json:"claimed"`
}

IMPORTANT: DO NOT use omitempty for values in NodeTypeCapacity. The values are used in NodePool calculations and for UI.

func (*NodeTypeCapacity) DeepCopy added in v4.4.0

func (in *NodeTypeCapacity) DeepCopy() *NodeTypeCapacity

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

func (*NodeTypeCapacity) DeepCopyInto added in v4.4.0

func (in *NodeTypeCapacity) DeepCopyInto(out *NodeTypeCapacity)

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

func (NodeTypeCapacity) OpenAPIModelName added in v4.7.0

func (in NodeTypeCapacity) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeTypeList added in v4.4.0

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

NodeTypeList contains a list of NodeType

func (*NodeTypeList) DeepCopy added in v4.4.0

func (in *NodeTypeList) DeepCopy() *NodeTypeList

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

func (*NodeTypeList) DeepCopyInto added in v4.4.0

func (in *NodeTypeList) DeepCopyInto(out *NodeTypeList)

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

func (*NodeTypeList) DeepCopyObject added in v4.4.0

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

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

func (NodeTypeList) OpenAPIModelName added in v4.7.0

func (in NodeTypeList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeTypeOverhead added in v4.4.0

type NodeTypeOverhead struct {
	// KubeReserved is the resource overhead for kubelet and other Kubernetes system daemons.
	// +optional
	KubeReserved corev1.ResourceList `json:"kubeReserved,omitempty"`
}

NodeTypeOverhead defines the resource overhead for a node type.

func (*NodeTypeOverhead) DeepCopy added in v4.4.0

func (in *NodeTypeOverhead) DeepCopy() *NodeTypeOverhead

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

func (*NodeTypeOverhead) DeepCopyInto added in v4.4.0

func (in *NodeTypeOverhead) DeepCopyInto(out *NodeTypeOverhead)

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

func (NodeTypeOverhead) OpenAPIModelName added in v4.7.0

func (in NodeTypeOverhead) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeTypePhase added in v4.4.0

type NodeTypePhase string

NodeTypePhase defines the phase of the NodeType

const (
	// PhasePending is the initial state of a NodeType.
	NodeTypePhasePending NodeTypePhase = "Pending"
	// NodeTypePhaseAvailable means the provisioning process has failed.
	NodeTypePhaseAvailable NodeTypePhase = "Available"
	// NodeTypePhaseFailed means the provisioning process has failed.
	NodeTypePhaseFailed NodeTypePhase = "Failed"
)

type NodeTypeSpec added in v4.4.0

type NodeTypeSpec struct {
	// ProviderRef is the node provider to use for this node type.
	// +optional
	ProviderRef string `json:"providerRef,omitempty"`

	// Properties returns a flexible set of properties that may be selected for scheduling.
	Properties map[string]string `json:"properties,omitempty"`

	// Resources lists the full resources for a single node.
	Resources corev1.ResourceList `json:"resources,omitempty"`

	// Overhead defines the resource overhead for this node type.
	// +optional
	Overhead *NodeTypeOverhead `json:"overhead,omitempty"`

	// Cost is the instance cost. The higher the cost, the less likely it is to be selected. If empty, cost is automatically calculated
	// from the resources specified.
	// +optional
	Cost int64 `json:"cost,omitempty"`

	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`
}

func (*NodeTypeSpec) DeepCopy added in v4.4.0

func (in *NodeTypeSpec) DeepCopy() *NodeTypeSpec

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

func (*NodeTypeSpec) DeepCopyInto added in v4.4.0

func (in *NodeTypeSpec) DeepCopyInto(out *NodeTypeSpec)

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

func (NodeTypeSpec) OpenAPIModelName added in v4.7.0

func (in NodeTypeSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type NodeTypeStatus added in v4.4.0

type NodeTypeStatus struct {
	// Phase is the current lifecycle phase of the NodeType.
	// +optional
	Phase NodeTypePhase `json:"phase,omitempty"`

	// Reason describes the reason in machine-readable form
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human-readable form
	// +optional
	Message string `json:"message,omitempty"`

	// Cost is the calculated instance cost from the resources specified or the price specified from spec. The higher the cost, the less likely it is to be selected.
	// +optional
	Cost int64 `json:"cost,omitempty"`

	// Capacity is the capacity of the node type.
	// +optional
	Capacity NodeTypeCapacity `json:"capacity,omitempty"`

	// Requirements is the calculated requirements based of the properties for the node type.
	// +optional
	Requirements []corev1.NodeSelectorRequirement `json:"requirements,omitempty"`

	// Conditions holds several conditions the node type might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
}

NodeTypeStatus holds the status of a node type

func (*NodeTypeStatus) DeepCopy added in v4.4.0

func (in *NodeTypeStatus) DeepCopy() *NodeTypeStatus

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

func (*NodeTypeStatus) DeepCopyInto added in v4.4.0

func (in *NodeTypeStatus) DeepCopyInto(out *NodeTypeStatus)

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

func (NodeTypeStatus) OpenAPIModelName added in v4.7.0

func (in NodeTypeStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ObjectsStatus

type ObjectsStatus struct {
	// LastAppliedObjects holds the status for the objects that were applied
	// +optional
	LastAppliedObjects string `json:"lastAppliedObjects,omitempty"`

	// Charts are the charts that were applied
	// +optional
	Charts []ChartStatus `json:"charts,omitempty"`

	// Apps are the apps that were applied
	// +optional
	Apps []AppReference `json:"apps,omitempty"`
}

func (*ObjectsStatus) DeepCopy

func (in *ObjectsStatus) DeepCopy() *ObjectsStatus

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

func (*ObjectsStatus) DeepCopyInto

func (in *ObjectsStatus) DeepCopyInto(out *ObjectsStatus)

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

func (ObjectsStatus) OpenAPIModelName added in v4.7.0

func (in ObjectsStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type OpenCost added in v4.2.0

type OpenCost struct {
	// Replicas is the number of desired replicas.
	Replicas *int32 `json:"replicas,omitempty"`

	// Resources are compute resource required by the OpenCost backend
	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
}

func (*OpenCost) DeepCopy added in v4.2.0

func (in *OpenCost) DeepCopy() *OpenCost

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

func (*OpenCost) DeepCopyInto added in v4.2.0

func (in *OpenCost) DeepCopyInto(out *OpenCost)

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

func (OpenCost) OpenAPIModelName added in v4.7.0

func (in OpenCost) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type PodSelector

type PodSelector struct {
	// A label selector to select the virtual cluster pod to route
	// incoming requests to.
	// +optional
	Selector metav1.LabelSelector `json:"podSelector,omitempty"`

	// The port of the pod to route to
	// +optional
	Port *int `json:"port,omitempty"`
}

func (*PodSelector) DeepCopy

func (in *PodSelector) DeepCopy() *PodSelector

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

func (*PodSelector) DeepCopyInto

func (in *PodSelector) DeepCopyInto(out *PodSelector)

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

func (PodSelector) OpenAPIModelName added in v4.7.0

func (in PodSelector) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Project

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

	Spec   ProjectSpec   `json:"spec,omitempty"`
	Status ProjectStatus `json:"status,omitempty"`
}

Project +k8s:openapi-gen=true

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject

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

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

func (*Project) GetAccess

func (a *Project) GetAccess() []Access

func (*Project) GetConditions

func (a *Project) GetConditions() agentstoragev1.Conditions

func (*Project) GetOwner

func (a *Project) GetOwner() *UserOrTeam

func (Project) OpenAPIModelName added in v4.7.0

func (in Project) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*Project) SetAccess

func (a *Project) SetAccess(access []Access)

func (*Project) SetConditions

func (a *Project) SetConditions(conditions agentstoragev1.Conditions)

func (*Project) SetOwner

func (a *Project) SetOwner(userOrTeam *UserOrTeam)

type ProjectList

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

ProjectList contains a list of Project objects

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject

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

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

func (ProjectList) OpenAPIModelName added in v4.7.0

func (in ProjectList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ProjectSpec

type ProjectSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes an app
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Quotas define the quotas inside the project
	// +optional
	Quotas Quotas `json:"quotas,omitempty"`

	// AllowedClusters are target clusters that are allowed to target with
	// environments.
	// +optional
	AllowedClusters []AllowedCluster `json:"allowedClusters,omitempty"`

	// AllowedRunners are target runners that are allowed to target with
	// +optional
	AllowedRunners []AllowedRunner `json:"allowedRunners,omitempty"`

	// AllowedTemplates are the templates that are allowed to use in this
	// project.
	// +optional
	AllowedTemplates []AllowedTemplate `json:"allowedTemplates,omitempty"`

	// RequireTemplate configures if a template is required for instance creation.
	// +optional
	RequireTemplate RequireTemplate `json:"requireTemplate,omitempty"`

	// RequirePreset configures if a preset is required for instance creation.
	// +optional
	RequirePreset RequirePreset `json:"requirePreset,omitempty"`

	// Members are the users and teams that are part of this project
	// +optional
	Members []Member `json:"members,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// NamespacePattern specifies template patterns to use for creating each space or virtual cluster's namespace
	// +optional
	NamespacePattern *NamespacePattern `json:"namespacePattern,omitempty"`

	// ArgoIntegration holds information about ArgoCD Integration
	// +optional
	ArgoIntegration *ArgoIntegrationSpec `json:"argoCD,omitempty"`

	// VaultIntegration holds information about Vault Integration
	// +optional
	VaultIntegration *VaultIntegrationSpec `json:"vault,omitempty"`

	// RancherIntegration holds information about Rancher Integration
	// +optional
	RancherIntegration *RancherIntegrationSpec `json:"rancher,omitempty"`
}

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

func (ProjectSpec) OpenAPIModelName added in v4.7.0

func (in ProjectSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type ProjectStatus

type ProjectStatus struct {
	// Quotas holds the quota status
	// +optional
	Quotas *QuotaStatus `json:"quotas,omitempty"`

	// Conditions holds several conditions the project might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
}

func (*ProjectStatus) DeepCopy

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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

func (ProjectStatus) OpenAPIModelName added in v4.7.0

func (in ProjectStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type QuotaStatus

type QuotaStatus struct {
	// Project is the quota status for the whole project
	// +optional
	Project *QuotaStatusProject `json:"project,omitempty"`

	// User is the quota status for each user / team. An example status
	// could look like this:
	// status:
	//   quotas:
	//     user:
	//       limit:
	//         pods: "10"
	//         spaces: "5"
	//       users:
	//         admin:
	//           used:
	//             spaces: "3"  # <- calculated in our apiserver
	//             pods: "8"    # <- the sum calculated from clusters
	//       clusters:
	//         cluster-1:  # <- populated by agent from cluster-1
	//           users:
	//             admin:
	//               pods: "3"
	//         cluster-2:
	//           users:
	//             admin:
	//               pods: "5"
	// +optional
	User *QuotaStatusUser `json:"user,omitempty"`
}

func (*QuotaStatus) DeepCopy

func (in *QuotaStatus) DeepCopy() *QuotaStatus

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

func (*QuotaStatus) DeepCopyInto

func (in *QuotaStatus) DeepCopyInto(out *QuotaStatus)

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

func (QuotaStatus) OpenAPIModelName added in v4.7.0

func (in QuotaStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type QuotaStatusProject

type QuotaStatusProject struct {
	// Limit is the amount limited, copied from spec.quotas.project
	// +optional
	Limit map[string]string `json:"limit,omitempty"`

	// Used is the amount currently used across all clusters
	// +optional
	Used map[string]string `json:"used,omitempty"`

	// Clusters holds the used amount per cluster. Maps cluster name to used resources
	// +optional
	Clusters map[string]QuotaStatusProjectCluster `json:"clusters,omitempty"`
}

func (*QuotaStatusProject) DeepCopy

func (in *QuotaStatusProject) DeepCopy() *QuotaStatusProject

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

func (*QuotaStatusProject) DeepCopyInto

func (in *QuotaStatusProject) DeepCopyInto(out *QuotaStatusProject)

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

func (QuotaStatusProject) OpenAPIModelName added in v4.7.0

func (in QuotaStatusProject) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type QuotaStatusProjectCluster

type QuotaStatusProjectCluster struct {
	// Used is the amount currently used. Maps resource name, such as pods, to their
	// used amount.
	// +optional
	Used map[string]string `json:"used,omitempty"`
}

func (*QuotaStatusProjectCluster) DeepCopy

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

func (*QuotaStatusProjectCluster) DeepCopyInto

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

func (QuotaStatusProjectCluster) OpenAPIModelName added in v4.7.0

func (in QuotaStatusProjectCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type QuotaStatusUser

type QuotaStatusUser struct {
	// Limit is the amount limited per user / team
	// +optional
	Limit map[string]string `json:"limit,omitempty"`

	// Used is the used amount per user / team
	// +optional
	Used QuotaStatusUserUsed `json:"used,omitempty"`

	// Clusters holds the used amount per cluster. Maps cluster name to used resources
	// +optional
	Clusters map[string]QuotaStatusUserUsed `json:"clusters,omitempty"`
}

func (*QuotaStatusUser) DeepCopy

func (in *QuotaStatusUser) DeepCopy() *QuotaStatusUser

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

func (*QuotaStatusUser) DeepCopyInto

func (in *QuotaStatusUser) DeepCopyInto(out *QuotaStatusUser)

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

func (QuotaStatusUser) OpenAPIModelName added in v4.7.0

func (in QuotaStatusUser) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type QuotaStatusUserUsed

type QuotaStatusUserUsed struct {
	// Users is a mapping of users to used resources
	// +optional
	Users map[string]map[string]string `json:"users,omitempty"`

	// Teams is a mapping of teams to used resources
	// +optional
	Teams map[string]map[string]string `json:"teams,omitempty"`
}

func (*QuotaStatusUserUsed) DeepCopy

func (in *QuotaStatusUserUsed) DeepCopy() *QuotaStatusUserUsed

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

func (*QuotaStatusUserUsed) DeepCopyInto

func (in *QuotaStatusUserUsed) DeepCopyInto(out *QuotaStatusUserUsed)

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

func (QuotaStatusUserUsed) OpenAPIModelName added in v4.7.0

func (in QuotaStatusUserUsed) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Quotas

type Quotas struct {
	// Project holds the quotas for the whole project
	// +optional
	Project map[string]string `json:"project,omitempty"`

	// User holds the quotas per user / team
	User map[string]string `json:"user,omitempty"`
}

func (*Quotas) DeepCopy

func (in *Quotas) DeepCopy() *Quotas

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

func (*Quotas) DeepCopyInto

func (in *Quotas) DeepCopyInto(out *Quotas)

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

func (Quotas) OpenAPIModelName added in v4.7.0

func (in Quotas) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type RancherIntegrationSpec

type RancherIntegrationSpec struct {
	// Enabled indicates if the Rancher Project Integration is enabled for this project.
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// ProjectRef defines references to rancher project, required for syncMembers and syncVirtualClusters.syncMembers
	// +optional
	ProjectRef RancherProjectRef `json:"projectRef,omitempty"`

	// ImportVirtualClusters defines settings to import virtual clusters to Rancher on creation
	// +optional
	ImportVirtualClusters ImportVirtualClustersSpec `json:"importVirtualClusters,omitempty"`

	// SyncMembers defines settings to sync Rancher project members to the loft project
	// +optional
	SyncMembers SyncMembersSpec `json:"syncMembers,omitempty"`
}

func (*RancherIntegrationSpec) DeepCopy

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

func (*RancherIntegrationSpec) DeepCopyInto

func (in *RancherIntegrationSpec) DeepCopyInto(out *RancherIntegrationSpec)

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

func (RancherIntegrationSpec) OpenAPIModelName added in v4.7.0

func (in RancherIntegrationSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type RancherProjectRef

type RancherProjectRef struct {
	// Cluster defines the Rancher cluster ID
	// Needs to be the same id within Loft
	Cluster string `json:"cluster,omitempty"`

	// Project defines the Rancher project ID
	Project string `json:"project,omitempty"`
}

func (*RancherProjectRef) DeepCopy

func (in *RancherProjectRef) DeepCopy() *RancherProjectRef

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

func (*RancherProjectRef) DeepCopyInto

func (in *RancherProjectRef) DeepCopyInto(out *RancherProjectRef)

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

func (RancherProjectRef) OpenAPIModelName added in v4.7.0

func (in RancherProjectRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type RecommendedApp

type RecommendedApp string

RecommendedApp describes where an app can be displayed as recommended app

const (
	// RecommendedAppCluster indicates that an app should be displayed as recommended app in the cluster view
	RecommendedAppCluster RecommendedApp = "cluster"
	// RecommendedAppSpace indicates that an app should be displayed as recommended app in the space view
	RecommendedAppSpace RecommendedApp = "space"
	// RecommendedAppVirtualCluster indicates that an app should be displayed as recommended app in the virtual cluster view
	RecommendedAppVirtualCluster RecommendedApp = "virtualcluster"
)

Describe the status of a release NOTE: Make sure to update cmd/helm/status.go when adding or modifying any of these statuses.

func (RecommendedApp) String

func (x RecommendedApp) String() string

type RequestTarget

type RequestTarget string

RequestTarget defines the target of an incoming request

const (
	// RequestTargetManagement specifies a loft management api request
	RequestTargetManagement RequestTarget = "Management"
	// RequestTargetCluster specifies a connected kubernetes cluster request
	RequestTargetCluster RequestTarget = "Cluster"
	// RequestTargetProjectSpace specifies a project space cluster request
	RequestTargetProjectSpace RequestTarget = "ProjectSpace"
	// RequestTargetProjectVirtualCluster specifies a project virtual kubernetes cluster request
	RequestTargetProjectVirtualCluster RequestTarget = "ProjectVirtualCluster"
)

Valid request targets

type RequirePreset added in v4.2.0

type RequirePreset struct {
	// If true, all users within the project will not be allowed to create a new instance without a preset.
	// By default, all users are allowed to create a new instance without a preset.
	// +optional
	Enabled bool `json:"disabled,omitempty"`
}

func (*RequirePreset) DeepCopy added in v4.2.0

func (in *RequirePreset) DeepCopy() *RequirePreset

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

func (*RequirePreset) DeepCopyInto added in v4.2.0

func (in *RequirePreset) DeepCopyInto(out *RequirePreset)

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

func (RequirePreset) OpenAPIModelName added in v4.7.0

func (in RequirePreset) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type RequireTemplate

type RequireTemplate struct {
	// If true, all users within the project will be allowed to create a new instance without a template.
	// By default, only admins are allowed to create a new instance without a template.
	// +optional
	Disabled bool `json:"disabled,omitempty"`
}

func (*RequireTemplate) DeepCopy

func (in *RequireTemplate) DeepCopy() *RequireTemplate

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

func (*RequireTemplate) DeepCopyInto

func (in *RequireTemplate) DeepCopyInto(out *RequireTemplate)

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

func (RequireTemplate) OpenAPIModelName added in v4.7.0

func (in RequireTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SSOIdentity added in v4.3.0

type SSOIdentity struct {
	// The subject of the user
	// +optional
	UserID string `json:"userId,omitempty"`

	// The username
	// +optional
	Username string `json:"username,omitempty"`

	// The preferred username / display name
	// +optional
	PreferredUsername string `json:"preferredUsername,omitempty"`

	// The user email
	// +optional
	Email string `json:"email,omitempty"`

	// If the user email was verified
	// +optional
	EmailVerified bool `json:"emailVerified,omitempty"`

	// ExtraClaims are claims that are not otherwise contained in this struct but may be provided by the OIDC
	// provider. Only extra claims that are allowed by the auth config are included.
	// +optional
	ExtraClaims map[string]string `json:"extraClaims,omitempty"`

	// The groups from the identity provider
	// +optional
	Groups []string `json:"groups,omitempty"`

	// Connector is the name of the connector this access key was created from
	// +optional
	Connector string `json:"connector,omitempty"`

	// ConnectorData holds data used by the connector for subsequent requests after initial
	// authentication, such as access tokens for upstream providers.
	//
	// This data is never shared with end users, OAuth clients, or through the API.
	// +optional
	ConnectorData []byte `json:"connectorData,omitempty"`
}

func (*SSOIdentity) DeepCopy added in v4.3.0

func (in *SSOIdentity) DeepCopy() *SSOIdentity

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

func (*SSOIdentity) DeepCopyInto added in v4.3.0

func (in *SSOIdentity) DeepCopyInto(out *SSOIdentity)

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

func (SSOIdentity) OpenAPIModelName added in v4.7.0

func (in SSOIdentity) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SecretRef

type SecretRef struct {
	// +optional
	SecretName string `json:"secretName,omitempty"`
	// +optional
	SecretNamespace string `json:"secretNamespace,omitempty"`
	// +optional
	Key string `json:"key,omitempty"`
}

SecretRef is the reference to a secret containing the user password

func (*SecretRef) DeepCopy

func (in *SecretRef) DeepCopy() *SecretRef

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

func (*SecretRef) DeepCopyInto

func (in *SecretRef) DeepCopyInto(out *SecretRef)

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

func (SecretRef) OpenAPIModelName added in v4.7.0

func (in SecretRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SharedSecret

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

	Spec   SharedSecretSpec   `json:"spec,omitempty"`
	Status SharedSecretStatus `json:"status,omitempty"`
}

SharedSecret holds the secret information +k8s:openapi-gen=true

func (*SharedSecret) DeepCopy

func (in *SharedSecret) DeepCopy() *SharedSecret

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

func (*SharedSecret) DeepCopyInto

func (in *SharedSecret) DeepCopyInto(out *SharedSecret)

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

func (*SharedSecret) DeepCopyObject

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

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

func (*SharedSecret) GetAccess

func (a *SharedSecret) GetAccess() []Access

func (*SharedSecret) GetConditions

func (a *SharedSecret) GetConditions() agentstoragev1.Conditions

GetConditions implements conditions.Setter

func (*SharedSecret) GetOwner

func (a *SharedSecret) GetOwner() *UserOrTeam

func (SharedSecret) OpenAPIModelName added in v4.7.0

func (in SharedSecret) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*SharedSecret) SetAccess

func (a *SharedSecret) SetAccess(access []Access)

func (*SharedSecret) SetConditions

func (a *SharedSecret) SetConditions(conditions agentstoragev1.Conditions)

SetConditions implements conditions.Setter

func (*SharedSecret) SetOwner

func (a *SharedSecret) SetOwner(userOrTeam *UserOrTeam)

type SharedSecretList

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

SharedSecretList contains a list of SharedSecret

func (*SharedSecretList) DeepCopy

func (in *SharedSecretList) DeepCopy() *SharedSecretList

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

func (*SharedSecretList) DeepCopyInto

func (in *SharedSecretList) DeepCopyInto(out *SharedSecretList)

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

func (*SharedSecretList) DeepCopyObject

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

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

func (SharedSecretList) OpenAPIModelName added in v4.7.0

func (in SharedSecretList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SharedSecretSpec

type SharedSecretSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a shared secret
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Data contains the secret data. Each key must consist of alphanumeric
	// characters, '-', '_' or '.'. The serialized form of the secret data is a
	// base64 encoded string, representing the arbitrary (possibly non-string)
	// data value here. Described in https://tools.ietf.org/html/rfc4648#section-4
	// +optional
	Data map[string][]byte `json:"data,omitempty"`

	// Access holds the access rights for users and teams which will be transformed
	// to Roles and RoleBindings
	// +optional
	Access []Access `json:"access,omitempty"`
}

SharedSecretSpec holds the specification

func (*SharedSecretSpec) DeepCopy

func (in *SharedSecretSpec) DeepCopy() *SharedSecretSpec

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

func (*SharedSecretSpec) DeepCopyInto

func (in *SharedSecretSpec) DeepCopyInto(out *SharedSecretSpec)

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

func (SharedSecretSpec) OpenAPIModelName added in v4.7.0

func (in SharedSecretSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SharedSecretStatus

type SharedSecretStatus struct {
	// Conditions holds several conditions the project might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
}

SharedSecretStatus holds the status

func (*SharedSecretStatus) DeepCopy

func (in *SharedSecretStatus) DeepCopy() *SharedSecretStatus

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

func (*SharedSecretStatus) DeepCopyInto

func (in *SharedSecretStatus) DeepCopyInto(out *SharedSecretStatus)

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

func (SharedSecretStatus) OpenAPIModelName added in v4.7.0

func (in SharedSecretStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceInstance

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

	Spec   SpaceInstanceSpec   `json:"spec,omitempty"`
	Status SpaceInstanceStatus `json:"status,omitempty"`
}

SpaceInstance +k8s:openapi-gen=true

func (*SpaceInstance) DeepCopy

func (in *SpaceInstance) DeepCopy() *SpaceInstance

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

func (*SpaceInstance) DeepCopyInto

func (in *SpaceInstance) DeepCopyInto(out *SpaceInstance)

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

func (*SpaceInstance) DeepCopyObject

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

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

func (*SpaceInstance) GetAccess

func (a *SpaceInstance) GetAccess() []Access

func (*SpaceInstance) GetConditions

func (a *SpaceInstance) GetConditions() agentstoragev1.Conditions

func (*SpaceInstance) GetOwner

func (a *SpaceInstance) GetOwner() *UserOrTeam

func (SpaceInstance) OpenAPIModelName added in v4.7.0

func (in SpaceInstance) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*SpaceInstance) SetAccess

func (a *SpaceInstance) SetAccess(access []Access)

func (*SpaceInstance) SetConditions

func (a *SpaceInstance) SetConditions(conditions agentstoragev1.Conditions)

func (*SpaceInstance) SetOwner

func (a *SpaceInstance) SetOwner(userOrTeam *UserOrTeam)

type SpaceInstanceList

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

SpaceInstanceList contains a list of SpaceInstance objects

func (*SpaceInstanceList) DeepCopy

func (in *SpaceInstanceList) DeepCopy() *SpaceInstanceList

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

func (*SpaceInstanceList) DeepCopyInto

func (in *SpaceInstanceList) DeepCopyInto(out *SpaceInstanceList)

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

func (*SpaceInstanceList) DeepCopyObject

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

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

func (SpaceInstanceList) OpenAPIModelName added in v4.7.0

func (in SpaceInstanceList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceInstanceSpec

type SpaceInstanceSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a space instance
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// TemplateRef holds the space template reference
	// +optional
	TemplateRef *TemplateRef `json:"templateRef,omitempty"`

	// Template is the inline template to use for space creation. This is mutually
	// exclusive with templateRef.
	// +optional
	Template *SpaceTemplateDefinition `json:"template,omitempty"`

	// ClusterRef is the reference to the connected cluster holding
	// this space
	// +optional
	ClusterRef ClusterRef `json:"clusterRef,omitempty"`

	// Parameters are values to pass to the template.
	// The values should be encoded as YAML string where each parameter is represented as a top-level field key.
	// +optional
	Parameters string `json:"parameters,omitempty"`

	// ExtraAccessRules defines extra rules which users and teams should have which access to the virtual
	// cluster.
	// +optional
	ExtraAccessRules []InstanceAccessRule `json:"extraAccessRules,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`
}

func (*SpaceInstanceSpec) DeepCopy

func (in *SpaceInstanceSpec) DeepCopy() *SpaceInstanceSpec

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

func (*SpaceInstanceSpec) DeepCopyInto

func (in *SpaceInstanceSpec) DeepCopyInto(out *SpaceInstanceSpec)

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

func (SpaceInstanceSpec) OpenAPIModelName added in v4.7.0

func (in SpaceInstanceSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceInstanceStatus

type SpaceInstanceStatus struct {
	// Phase describes the current phase the space instance is in
	// +optional
	Phase InstancePhase `json:"phase,omitempty"`

	// Reason describes the reason in machine-readable form
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human-readable form
	// +optional
	Message string `json:"message,omitempty"`

	// Conditions holds several conditions the virtual cluster might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`

	// SpaceObjects are the objects that were applied within the virtual cluster space
	// +optional
	SpaceObjects *ObjectsStatus `json:"spaceObjects,omitempty"`

	// Space is the template rendered with all the parameters
	// +optional
	Space *SpaceTemplateDefinition `json:"space,omitempty"`

	// IgnoreReconciliation tells the controller to ignore reconciliation for this instance -- this
	// is primarily used when migrating virtual cluster instances from project to project; this
	// prevents a situation where there are two virtual cluster instances representing the same
	// virtual cluster which could cause issues with concurrent reconciliations of the same object.
	// Once the virtual cluster instance has been cloned and placed into the new project, this
	// (the "old") virtual cluster instance can safely be deleted.
	IgnoreReconciliation bool `json:"ignoreReconciliation,omitempty"`
}

func (*SpaceInstanceStatus) DeepCopy

func (in *SpaceInstanceStatus) DeepCopy() *SpaceInstanceStatus

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

func (*SpaceInstanceStatus) DeepCopyInto

func (in *SpaceInstanceStatus) DeepCopyInto(out *SpaceInstanceStatus)

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

func (SpaceInstanceStatus) OpenAPIModelName added in v4.7.0

func (in SpaceInstanceStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceInstanceTemplateDefinition

type SpaceInstanceTemplateDefinition struct {
	// The space instance metadata
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	TemplateMetadata `json:"metadata,omitempty"`
}

SpaceInstanceTemplateDefinition holds the space instance template

func (*SpaceInstanceTemplateDefinition) DeepCopy

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

func (*SpaceInstanceTemplateDefinition) DeepCopyInto

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

func (SpaceInstanceTemplateDefinition) OpenAPIModelName added in v4.7.0

func (in SpaceInstanceTemplateDefinition) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceTemplate

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

	Spec   SpaceTemplateSpec   `json:"spec,omitempty"`
	Status SpaceTemplateStatus `json:"status,omitempty"`
}

SpaceTemplate holds the space template information +k8s:openapi-gen=true

func (*SpaceTemplate) DeepCopy

func (in *SpaceTemplate) DeepCopy() *SpaceTemplate

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

func (*SpaceTemplate) DeepCopyInto

func (in *SpaceTemplate) DeepCopyInto(out *SpaceTemplate)

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

func (*SpaceTemplate) DeepCopyObject

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

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

func (*SpaceTemplate) GetAccess

func (a *SpaceTemplate) GetAccess() []Access

func (*SpaceTemplate) GetOwner

func (a *SpaceTemplate) GetOwner() *UserOrTeam

func (*SpaceTemplate) GetVersions

func (a *SpaceTemplate) GetVersions() []VersionAccessor

func (SpaceTemplate) OpenAPIModelName added in v4.7.0

func (in SpaceTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*SpaceTemplate) SetAccess

func (a *SpaceTemplate) SetAccess(access []Access)

func (*SpaceTemplate) SetOwner

func (a *SpaceTemplate) SetOwner(userOrTeam *UserOrTeam)

type SpaceTemplateDefinition

type SpaceTemplateDefinition struct {
	// The space metadata
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	TemplateMetadata `json:"metadata,omitempty"`

	// InstanceTemplate holds the space instance template
	// +optional
	InstanceTemplate SpaceInstanceTemplateDefinition `json:"instanceTemplate,omitempty"`

	// Objects are Kubernetes style yamls that should get deployed into the virtual cluster
	// +optional
	Objects string `json:"objects,omitempty"`

	// Charts are helm charts that should get deployed
	// +optional
	Charts []TemplateHelmChart `json:"charts,omitempty"`

	// Apps specifies the apps that should get deployed by this template
	// +optional
	Apps []AppReference `json:"apps,omitempty"`

	// The space access
	// +optional
	Access *InstanceAccess `json:"access,omitempty"`
}

func (*SpaceTemplateDefinition) DeepCopy

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

func (*SpaceTemplateDefinition) DeepCopyInto

func (in *SpaceTemplateDefinition) DeepCopyInto(out *SpaceTemplateDefinition)

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

func (SpaceTemplateDefinition) OpenAPIModelName added in v4.7.0

func (in SpaceTemplateDefinition) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceTemplateList

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

SpaceTemplateList contains a list of SpaceTemplate

func (*SpaceTemplateList) DeepCopy

func (in *SpaceTemplateList) DeepCopy() *SpaceTemplateList

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

func (*SpaceTemplateList) DeepCopyInto

func (in *SpaceTemplateList) DeepCopyInto(out *SpaceTemplateList)

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

func (*SpaceTemplateList) DeepCopyObject

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

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

func (SpaceTemplateList) OpenAPIModelName added in v4.7.0

func (in SpaceTemplateList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceTemplateSpec

type SpaceTemplateSpec struct {
	// DisplayName is the name that is shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes the space template
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Template holds the space template
	// +optional
	Template SpaceTemplateDefinition `json:"template,omitempty"`

	// Parameters define additional app parameters that will set helm values
	// +optional
	Parameters []AppParameter `json:"parameters,omitempty"`

	// Versions are different space template versions that can be referenced as well
	// +optional
	Versions []SpaceTemplateVersion `json:"versions,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`
}

SpaceTemplateSpec holds the specification

func (*SpaceTemplateSpec) DeepCopy

func (in *SpaceTemplateSpec) DeepCopy() *SpaceTemplateSpec

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

func (*SpaceTemplateSpec) DeepCopyInto

func (in *SpaceTemplateSpec) DeepCopyInto(out *SpaceTemplateSpec)

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

func (SpaceTemplateSpec) OpenAPIModelName added in v4.7.0

func (in SpaceTemplateSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceTemplateStatus

type SpaceTemplateStatus struct {
}

SpaceTemplateStatus holds the status

func (*SpaceTemplateStatus) DeepCopy

func (in *SpaceTemplateStatus) DeepCopy() *SpaceTemplateStatus

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

func (*SpaceTemplateStatus) DeepCopyInto

func (in *SpaceTemplateStatus) DeepCopyInto(out *SpaceTemplateStatus)

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

func (SpaceTemplateStatus) OpenAPIModelName added in v4.7.0

func (in SpaceTemplateStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SpaceTemplateVersion

type SpaceTemplateVersion struct {
	// Template holds the space template
	// +optional
	Template SpaceTemplateDefinition `json:"template,omitempty"`

	// Parameters define additional app parameters that will set helm values
	// +optional
	Parameters []AppParameter `json:"parameters,omitempty"`

	// Version is the version. Needs to be in X.X.X format.
	// +optional
	Version string `json:"version,omitempty"`
}

func (*SpaceTemplateVersion) DeepCopy

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

func (*SpaceTemplateVersion) DeepCopyInto

func (in *SpaceTemplateVersion) DeepCopyInto(out *SpaceTemplateVersion)

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

func (*SpaceTemplateVersion) GetVersion

func (a *SpaceTemplateVersion) GetVersion() string

func (SpaceTemplateVersion) OpenAPIModelName added in v4.7.0

func (in SpaceTemplateVersion) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Storage added in v4.2.0

type Storage struct {
	// StorageClass the storage class to use when provisioning the metrics backend's persistent volume
	// If set to "-" or "" dynamic provisioning is disabled
	// If set to undefined or null (the default), the cluster's default storage class is used for provisioning
	StorageClass *string `json:"storageClass,omitempty"`

	// Size the size of the metrics backend's persistent volume
	Size string `json:"size,omitempty"`
}

func (*Storage) DeepCopy added in v4.2.0

func (in *Storage) DeepCopy() *Storage

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

func (*Storage) DeepCopyInto added in v4.2.0

func (in *Storage) DeepCopyInto(out *Storage)

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

func (Storage) OpenAPIModelName added in v4.7.0

func (in Storage) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type StreamContainer

type StreamContainer struct {
	// Label selector for pods. The newest matching pod will be used to stream logs from
	// +optional
	Selector metav1.LabelSelector `json:"selector" protobuf:"bytes,2,opt,name=selector"`

	// Container is the container name to use
	// +optional
	Container string `json:"container,omitempty"`
}

func (*StreamContainer) DeepCopy

func (in *StreamContainer) DeepCopy() *StreamContainer

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

func (*StreamContainer) DeepCopyInto

func (in *StreamContainer) DeepCopyInto(out *StreamContainer)

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

func (StreamContainer) OpenAPIModelName added in v4.7.0

func (in StreamContainer) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type SyncMembersSpec

type SyncMembersSpec struct {
	// Enabled indicates whether to sync rancher project members to the loft project.
	Enabled bool `json:"enabled,omitempty"`

	// RoleMapping indicates an optional role mapping from a rancher role to a loft role. Map to an empty role to exclude users and groups with that role from
	// being synced.
	// +optional
	RoleMapping map[string]string `json:"roleMapping,omitempty"`
}

func (*SyncMembersSpec) DeepCopy

func (in *SyncMembersSpec) DeepCopy() *SyncMembersSpec

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

func (*SyncMembersSpec) DeepCopyInto

func (in *SyncMembersSpec) DeepCopyInto(out *SyncMembersSpec)

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

func (SyncMembersSpec) OpenAPIModelName added in v4.7.0

func (in SyncMembersSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Target

type Target struct {
	// SpaceInstance defines a space instance as target
	// +optional
	SpaceInstance *TargetInstance `json:"spaceInstance,omitempty"`

	// VirtualClusterInstance defines a virtual cluster instance as target
	// +optional
	VirtualClusterInstance *TargetInstance `json:"virtualClusterInstance,omitempty"`

	// Cluster defines a connected cluster as target
	// +optional
	Cluster *TargetCluster `json:"cluster,omitempty"`
}

func (*Target) DeepCopy

func (in *Target) DeepCopy() *Target

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

func (*Target) DeepCopyInto

func (in *Target) DeepCopyInto(out *Target)

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

func (Target) OpenAPIModelName added in v4.7.0

func (in Target) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TargetCluster

type TargetCluster struct {
	// Cluster is the cluster where the task should get executed
	// +optional
	Cluster string `json:"cluster,omitempty"`

	// Namespace is the namespace where the task should get executed
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

func (*TargetCluster) DeepCopy

func (in *TargetCluster) DeepCopy() *TargetCluster

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

func (*TargetCluster) DeepCopyInto

func (in *TargetCluster) DeepCopyInto(out *TargetCluster)

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

func (TargetCluster) OpenAPIModelName added in v4.7.0

func (in TargetCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TargetInstance

type TargetInstance struct {
	// Name is the name of the instance
	// +optional
	Name string `json:"name,omitempty"`

	// Project where the instance is in
	// +optional
	Project string `json:"project,omitempty"`
}

func (*TargetInstance) DeepCopy

func (in *TargetInstance) DeepCopy() *TargetInstance

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

func (*TargetInstance) DeepCopyInto

func (in *TargetInstance) DeepCopyInto(out *TargetInstance)

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

func (TargetInstance) OpenAPIModelName added in v4.7.0

func (in TargetInstance) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TargetVirtualCluster

type TargetVirtualCluster struct {
	// Cluster is the cluster where the virtual cluster lies
	// +optional
	Cluster string `json:"cluster,omitempty"`

	// Namespace is the namespace where the virtual cluster is located
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// Name of the virtual cluster
	// +optional
	Name string `json:"name,omitempty"`
}

func (*TargetVirtualCluster) DeepCopy

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

func (*TargetVirtualCluster) DeepCopyInto

func (in *TargetVirtualCluster) DeepCopyInto(out *TargetVirtualCluster)

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

func (TargetVirtualCluster) OpenAPIModelName added in v4.7.0

func (in TargetVirtualCluster) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Task

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

	Spec   TaskSpec   `json:"spec,omitempty"`
	Status TaskStatus `json:"status,omitempty"`
}

+k8s:openapi-gen=true

func (*Task) DeepCopy

func (in *Task) DeepCopy() *Task

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

func (*Task) DeepCopyInto

func (in *Task) DeepCopyInto(out *Task)

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

func (*Task) DeepCopyObject

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

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

func (*Task) GetAccess

func (a *Task) GetAccess() []Access

func (*Task) GetConditions

func (a *Task) GetConditions() agentstoragev1.Conditions

GetConditions returns the set of conditions for this object.

func (*Task) GetOwner

func (a *Task) GetOwner() *UserOrTeam

func (Task) OpenAPIModelName added in v4.7.0

func (in Task) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*Task) SetAccess

func (a *Task) SetAccess(access []Access)

func (*Task) SetConditions

func (a *Task) SetConditions(conditions agentstoragev1.Conditions)

SetConditions sets the conditions on this object.

func (*Task) SetOwner

func (a *Task) SetOwner(userOrTeam *UserOrTeam)

type TaskDefinition

type TaskDefinition struct {
	// AppTask is an app task
	// +optional
	AppTask *AppTask `json:"appTask,omitempty"`

	// HelmTask executes a helm command
	// +optional
	HelmTask *HelmTask `json:"helm,omitempty"`
}

func (*TaskDefinition) DeepCopy

func (in *TaskDefinition) DeepCopy() *TaskDefinition

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

func (*TaskDefinition) DeepCopyInto

func (in *TaskDefinition) DeepCopyInto(out *TaskDefinition)

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

func (TaskDefinition) OpenAPIModelName added in v4.7.0

func (in TaskDefinition) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TaskList

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

TaskList contains a list of Task

func (*TaskList) DeepCopy

func (in *TaskList) DeepCopy() *TaskList

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

func (*TaskList) DeepCopyInto

func (in *TaskList) DeepCopyInto(out *TaskList)

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

func (*TaskList) DeepCopyObject

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

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

func (TaskList) OpenAPIModelName added in v4.7.0

func (in TaskList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TaskSpec

type TaskSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// Scope defines the scope of the access key.
	// +optional
	Scope *AccessKeyScope `json:"scope,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Target where this task should get executed
	// +optional
	Target Target `json:"target,omitempty"`

	// Task defines the task to execute
	// +optional
	Task TaskDefinition `json:"task,omitempty"`
}

func (*TaskSpec) DeepCopy

func (in *TaskSpec) DeepCopy() *TaskSpec

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

func (*TaskSpec) DeepCopyInto

func (in *TaskSpec) DeepCopyInto(out *TaskSpec)

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

func (TaskSpec) OpenAPIModelName added in v4.7.0

func (in TaskSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TaskStatus

type TaskStatus struct {
	// Started determines if the task was started
	// +optional
	Started bool `json:"started,omitempty"`

	// Conditions holds several conditions the virtual cluster might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`

	// PodPhase describes the phase this task is in
	// +optional
	PodPhase corev1.PodPhase `json:"podPhase,omitempty"`

	// ObservedGeneration is the latest generation observed by the controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// DEPRECATED: This is not set anymore after migrating to runners
	// ContainerState describes the container state of the task
	// +optional
	ContainerState *corev1.ContainerStatus `json:"containerState,omitempty"`
}

func (*TaskStatus) DeepCopy

func (in *TaskStatus) DeepCopy() *TaskStatus

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

func (*TaskStatus) DeepCopyInto

func (in *TaskStatus) DeepCopyInto(out *TaskStatus)

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

func (TaskStatus) OpenAPIModelName added in v4.7.0

func (in TaskStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type Team

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

	Spec   TeamSpec   `json:"spec,omitempty"`
	Status TeamStatus `json:"status,omitempty"`
}

User holds the user information +k8s:openapi-gen=true

func (*Team) DeepCopy

func (in *Team) DeepCopy() *Team

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

func (*Team) DeepCopyInto

func (in *Team) DeepCopyInto(out *Team)

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

func (*Team) DeepCopyObject

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

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

func (*Team) GetAccess

func (a *Team) GetAccess() []Access

func (*Team) GetOwner

func (a *Team) GetOwner() *UserOrTeam

func (Team) OpenAPIModelName added in v4.7.0

func (in Team) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*Team) SetAccess

func (a *Team) SetAccess(access []Access)

func (*Team) SetOwner

func (a *Team) SetOwner(userOrTeam *UserOrTeam)

type TeamList

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

TeamList contains a list of Team

func (*TeamList) DeepCopy

func (in *TeamList) DeepCopy() *TeamList

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

func (*TeamList) DeepCopyInto

func (in *TeamList) DeepCopyInto(out *TeamList)

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

func (*TeamList) DeepCopyObject

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

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

func (TeamList) OpenAPIModelName added in v4.7.0

func (in TeamList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TeamSpec

type TeamSpec struct {
	// The display name shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a cluster access object
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// The username of the team that will be used for identification and docker registry namespace
	// +optional
	Username string `json:"username,omitempty"`

	// The loft users that belong to a team
	// +optional
	Users []string `json:"users,omitempty"`

	// The groups defined in a token that belong to a team
	// +optional
	Groups []string `json:"groups,omitempty"`

	// ImagePullSecrets holds secret references to image pull
	// secrets the team has access to.
	// +optional
	ImagePullSecrets []*KindSecretRef `json:"imagePullSecrets,omitempty"`

	// ClusterRoles define the cluster roles that the users should have assigned in the cluster.
	// +optional
	ClusterRoles []ClusterRoleRef `json:"clusterRoles,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`
}

func (*TeamSpec) DeepCopy

func (in *TeamSpec) DeepCopy() *TeamSpec

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

func (*TeamSpec) DeepCopyInto

func (in *TeamSpec) DeepCopyInto(out *TeamSpec)

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

func (TeamSpec) OpenAPIModelName added in v4.7.0

func (in TeamSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TeamStatus

type TeamStatus struct {
}

func (*TeamStatus) DeepCopy

func (in *TeamStatus) DeepCopy() *TeamStatus

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

func (*TeamStatus) DeepCopyInto

func (in *TeamStatus) DeepCopyInto(out *TeamStatus)

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

func (TeamStatus) OpenAPIModelName added in v4.7.0

func (in TeamStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TemplateHelmChart

type TemplateHelmChart struct {
	clusterv1.Chart `json:",inline"`

	// ReleaseName is the preferred release name of the app
	// +optional
	ReleaseName string `json:"releaseName,omitempty"`

	// ReleaseNamespace is the preferred release namespace of the app
	// +optional
	ReleaseNamespace string `json:"releaseNamespace,omitempty"`

	// Values are the values that should get passed to the chart
	// +optional
	Values string `json:"values,omitempty"`

	// Wait determines if Loft should wait during deploy for the app to become ready
	// +optional
	Wait bool `json:"wait,omitempty"`

	// Timeout is the time to wait for any individual Kubernetes operation (like Jobs for hooks) (default 5m0s)
	// +optional
	Timeout string `json:"timeout,omitempty"`
}

func (*TemplateHelmChart) DeepCopy

func (in *TemplateHelmChart) DeepCopy() *TemplateHelmChart

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

func (*TemplateHelmChart) DeepCopyInto

func (in *TemplateHelmChart) DeepCopyInto(out *TemplateHelmChart)

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

func (TemplateHelmChart) OpenAPIModelName added in v4.7.0

func (in TemplateHelmChart) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TemplateMetadata

type TemplateMetadata struct {
	// Labels are labels on the object
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations are annotations on the object
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
}

func (*TemplateMetadata) DeepCopy

func (in *TemplateMetadata) DeepCopy() *TemplateMetadata

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

func (*TemplateMetadata) DeepCopyInto

func (in *TemplateMetadata) DeepCopyInto(out *TemplateMetadata)

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

func (TemplateMetadata) OpenAPIModelName added in v4.7.0

func (in TemplateMetadata) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TemplateRef

type TemplateRef struct {
	// Name holds the name of the template to reference.
	// +optional
	Name string `json:"name,omitempty"`

	// Version holds the template version to use. Version is expected to
	// be in semantic versioning format. Alternatively, you can also exchange
	// major, minor or patch with an 'x' to tell Loft to automatically select
	// the latest major, minor or patch version.
	// +optional
	Version string `json:"version,omitempty"`

	// SyncOnce tells the controller to sync the instance once with the template.
	// This is useful if you want to sync an instance after a template was changed.
	// To automatically sync an instance with a template, use 'x.x.x' as version
	// instead.
	// +optional
	SyncOnce bool `json:"syncOnce,omitempty"`
}

func (*TemplateRef) DeepCopy

func (in *TemplateRef) DeepCopy() *TemplateRef

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

func (*TemplateRef) DeepCopyInto

func (in *TemplateRef) DeepCopyInto(out *TemplateRef)

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

func (TemplateRef) OpenAPIModelName added in v4.7.0

func (in TemplateRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TerraformNodeEnvironmentTemplate added in v4.5.0

type TerraformNodeEnvironmentTemplate struct {
	// Deprecated: Use Infrastructure and Kubernetes instead.
	TerraformTemplate `json:",inline"`

	// Infrastructure is the infrastructure template to use for this node environment.
	Infrastructure *TerraformTemplate `json:"infrastructure,omitempty"`

	// Kubernetes is the kubernetes template to use for this node environment.
	Kubernetes *TerraformTemplate `json:"kubernetes,omitempty"`
}

func (*TerraformNodeEnvironmentTemplate) DeepCopy added in v4.5.0

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

func (*TerraformNodeEnvironmentTemplate) DeepCopyInto added in v4.5.0

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

func (TerraformNodeEnvironmentTemplate) OpenAPIModelName added in v4.7.0

func (in TerraformNodeEnvironmentTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TerraformNodeTypeSpec added in v4.4.0

type TerraformNodeTypeSpec struct {
	NamedNodeTypeSpec `json:",inline"`

	// NodeTemplate is the template to use for this node type.
	NodeTemplate *TerraformTemplate `json:"nodeTemplate,omitempty"`

	// MaxCapacity is the maximum number of nodes that can be created for this NodeType.
	MaxCapacity int `json:"maxCapacity,omitempty"`
}

func (*TerraformNodeTypeSpec) DeepCopy added in v4.4.0

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

func (*TerraformNodeTypeSpec) DeepCopyInto added in v4.4.0

func (in *TerraformNodeTypeSpec) DeepCopyInto(out *TerraformNodeTypeSpec)

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

func (TerraformNodeTypeSpec) OpenAPIModelName added in v4.7.0

func (in TerraformNodeTypeSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TerraformTemplate added in v4.4.0

type TerraformTemplate struct {
	// Inline is the inline template to use for this node type.
	Inline string `json:"inline,omitempty"`

	// Git is the git repository to use for this node type.
	Git *TerraformTemplateSourceGit `json:"git,omitempty"`

	// Timeout is the timeout to use for the terraform operations. Defaults to 60m.
	Timeout string `json:"timeout,omitempty"`
}

func (*TerraformTemplate) DeepCopy added in v4.4.0

func (in *TerraformTemplate) DeepCopy() *TerraformTemplate

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

func (*TerraformTemplate) DeepCopyInto added in v4.4.0

func (in *TerraformTemplate) DeepCopyInto(out *TerraformTemplate)

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

func (TerraformTemplate) OpenAPIModelName added in v4.7.0

func (in TerraformTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type TerraformTemplateSourceGit added in v4.4.0

type TerraformTemplateSourceGit struct {
	// Repository is the repository to clone
	Repository string `json:"repository,omitempty"`

	// Branch is the branch to use
	Branch string `json:"branch,omitempty"`

	// Commit is the commit SHA to checkout
	Commit string `json:"commit,omitempty"`

	// Tag is the tag reference to checkout
	Tag string `json:"tag,omitempty"`

	// SubPath is the subpath in the repo to use
	SubPath string `json:"subPath,omitempty"`

	// Credentials is the reference to a secret containing the username and password for the git repository.
	Credentials *SecretRef `json:"credentials,omitempty"`

	// FetchInterval is the interval to use for refetching the git repository. Defaults to 5m. Refetching only checks for remote changes but does not do a complete repull.
	FetchInterval string `json:"fetchInterval,omitempty"`

	// ExtraEnv is the extra environment variables to use for the clone
	ExtraEnv []string `json:"extraEnv,omitempty"`
}

func (*TerraformTemplateSourceGit) DeepCopy added in v4.4.0

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

func (*TerraformTemplateSourceGit) DeepCopyInto added in v4.4.0

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

func (TerraformTemplateSourceGit) OpenAPIModelName added in v4.7.0

func (in TerraformTemplateSourceGit) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type User

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

	Spec   UserSpec   `json:"spec,omitempty"`
	Status UserStatus `json:"status,omitempty"`
}

User holds the user information +k8s:openapi-gen=true

func (*User) DeepCopy

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject

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

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

func (*User) GetAccess

func (a *User) GetAccess() []Access

func (*User) GetOwner

func (a *User) GetOwner() *UserOrTeam

func (User) OpenAPIModelName added in v4.7.0

func (in User) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*User) SetAccess

func (a *User) SetAccess(access []Access)

func (*User) SetOwner

func (a *User) SetOwner(userOrTeam *UserOrTeam)

type UserList

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

UserList contains a list of User

func (*UserList) DeepCopy

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject

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

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

func (UserList) OpenAPIModelName added in v4.7.0

func (in UserList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type UserOrTeam

type UserOrTeam struct {
	// User specifies a Loft user.
	// +optional
	User string `json:"user,omitempty"`

	// Team specifies a Loft team.
	// +optional
	Team string `json:"team,omitempty"`
}

func (*UserOrTeam) DeepCopy

func (in *UserOrTeam) DeepCopy() *UserOrTeam

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

func (*UserOrTeam) DeepCopyInto

func (in *UserOrTeam) DeepCopyInto(out *UserOrTeam)

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

func (UserOrTeam) OpenAPIModelName added in v4.7.0

func (in UserOrTeam) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type UserOrTeamEntity

type UserOrTeamEntity struct {
	// User describes an user
	// +optional
	User *EntityInfo `json:"user,omitempty"`

	// Team describes a team
	// +optional
	Team *EntityInfo `json:"team,omitempty"`
}

func (*UserOrTeamEntity) DeepCopy

func (in *UserOrTeamEntity) DeepCopy() *UserOrTeamEntity

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

func (*UserOrTeamEntity) DeepCopyInto

func (in *UserOrTeamEntity) DeepCopyInto(out *UserOrTeamEntity)

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

func (UserOrTeamEntity) OpenAPIModelName added in v4.7.0

func (in UserOrTeamEntity) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type UserSpec

type UserSpec struct {
	// The display name shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a cluster access object
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// The username that is used to login
	Username string `json:"username,omitempty"`

	// The URL to an icon that should be shown for the user
	// +optional
	Icon string `json:"icon,omitempty"`

	// The users email address
	// +optional
	Email string `json:"email,omitempty"`

	// The user subject as presented by the token
	Subject string `json:"subject,omitempty"`

	// The groups the user has access to
	// +optional
	Groups []string `json:"groups,omitempty"`

	// SSOGroups is used to remember groups that were
	// added from sso.
	// +optional
	SSOGroups []string `json:"ssoGroups,omitempty"`

	// A reference to the user password
	// +optional
	PasswordRef *SecretRef `json:"passwordRef,omitempty"`

	// A reference to the users access keys
	// +optional
	CodesRef *SecretRef `json:"codesRef,omitempty"`

	// ImagePullSecrets holds secret references to image pull
	// secrets the user has access to.
	// +optional
	ImagePullSecrets []*KindSecretRef `json:"imagePullSecrets,omitempty"`

	// TokenGeneration can be used to invalidate all user tokens
	// +optional
	TokenGeneration int64 `json:"tokenGeneration,omitempty"`

	// If disabled is true, an user will not be able to login anymore. All other user resources
	// are unaffected and other users can still interact with this user
	// +optional
	Disabled bool `json:"disabled,omitempty"`

	// ClusterRoles define the cluster roles that the users should have assigned in the cluster.
	// +optional
	ClusterRoles []ClusterRoleRef `json:"clusterRoles,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// ExtraClaims are additional claims that have been added to the user by an admin.
	// +optional
	ExtraClaims map[string]string `json:"extraClaims,omitempty"`
}

func (*UserSpec) DeepCopy

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

func (UserSpec) OpenAPIModelName added in v4.7.0

func (in UserSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type UserStatus

type UserStatus struct {
	// Teams the user is currently part of
	// +optional
	Teams []string `json:"teams,omitempty"`
}

UserStatus holds the status of an user

func (*UserStatus) DeepCopy

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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

func (UserStatus) OpenAPIModelName added in v4.7.0

func (in UserStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VaultAuthSpec

type VaultAuthSpec struct {
	// Token defines the token to use for authentication.
	// +optional
	Token *string `json:"token,omitempty"`

	// TokenSecretRef defines the Kubernetes secret to use for token authentication.
	// Will be used if `token` is not provided.
	//
	// Secret data should contain the `token` key.
	// +optional
	TokenSecretRef *corev1.SecretKeySelector `json:"tokenSecretRef,omitempty"`
}

func (*VaultAuthSpec) DeepCopy

func (in *VaultAuthSpec) DeepCopy() *VaultAuthSpec

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

func (*VaultAuthSpec) DeepCopyInto

func (in *VaultAuthSpec) DeepCopyInto(out *VaultAuthSpec)

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

func (VaultAuthSpec) OpenAPIModelName added in v4.7.0

func (in VaultAuthSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VaultIntegrationSpec

type VaultIntegrationSpec struct {
	// Enabled indicates if the Vault Integration is enabled for the project -- this knob only
	// enables the syncing of secrets to or from Vault, but does not setup Kubernetes authentication
	// methods or Kubernetes secrets engines for vclusters.
	// +optional
	Enabled bool `json:"enabled,omitempty"`

	// Address defines the address of the Vault instance to use for this project.
	// Will default to the `VAULT_ADDR` environment variable if not provided.
	// +optional
	Address string `json:"address,omitempty"`

	// SkipTLSVerify defines if TLS verification should be skipped when connecting to Vault.
	// +optional
	SkipTLSVerify bool `json:"skipTLSVerify,omitempty"`

	// Namespace defines the namespace to use when storing secrets in Vault.
	// +optional
	Namespace string `json:"namespace,omitempty"`

	// Auth defines the authentication method to use for this project.
	// +optional
	Auth *VaultAuthSpec `json:"auth,omitempty"`

	// SyncInterval defines the interval at which to sync secrets from Vault.
	// Defaults to `1m.`
	// See https://pkg.go.dev/time#ParseDuration for supported formats.
	// +optional
	SyncInterval string `json:"syncInterval,omitempty"`
}

func (*VaultIntegrationSpec) DeepCopy

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

func (*VaultIntegrationSpec) DeepCopyInto

func (in *VaultIntegrationSpec) DeepCopyInto(out *VaultIntegrationSpec)

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

func (VaultIntegrationSpec) OpenAPIModelName added in v4.7.0

func (in VaultIntegrationSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VersionAccessor

type VersionAccessor interface {
	GetVersion() string
}

type VersionsAccessor

type VersionsAccessor interface {
	GetVersions() []VersionAccessor
}

type VirtualClusterAccessPoint

type VirtualClusterAccessPoint struct {
	// Ingress defines virtual cluster access via ingress
	// +optional
	Ingress VirtualClusterAccessPointIngressSpec `json:"ingress,omitempty"`
}

func (*VirtualClusterAccessPoint) DeepCopy

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

func (*VirtualClusterAccessPoint) DeepCopyInto

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

func (VirtualClusterAccessPoint) OpenAPIModelName added in v4.7.0

func (in VirtualClusterAccessPoint) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterAccessPointIngressSpec

type VirtualClusterAccessPointIngressSpec struct {
	// Enabled defines if the virtual cluster access point (via ingress) is enabled or not; requires
	// the connected cluster to have the `loft.sh/ingress-suffix` annotation set to define the domain
	// name suffix used for the ingress.
	Enabled bool `json:"enabled,omitempty"`
}

func (*VirtualClusterAccessPointIngressSpec) DeepCopy

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

func (*VirtualClusterAccessPointIngressSpec) DeepCopyInto

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

func (VirtualClusterAccessPointIngressSpec) OpenAPIModelName added in v4.7.0

func (in VirtualClusterAccessPointIngressSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterClusterRef

type VirtualClusterClusterRef struct {
	ClusterRef `json:",inline"`

	// VirtualCluster is the name of the virtual cluster inside the namespace
	// +optional
	VirtualCluster string `json:"virtualCluster,omitempty"`
}

func (*VirtualClusterClusterRef) DeepCopy

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

func (*VirtualClusterClusterRef) DeepCopyInto

func (in *VirtualClusterClusterRef) DeepCopyInto(out *VirtualClusterClusterRef)

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

func (VirtualClusterClusterRef) OpenAPIModelName added in v4.7.0

func (in VirtualClusterClusterRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterCommonSpec

type VirtualClusterCommonSpec struct {
	// Apps specifies the apps that should get deployed by this template
	// +optional
	Apps []AppReference `json:"apps,omitempty"`

	// Charts are helm charts that should get deployed
	// +optional
	Charts []TemplateHelmChart `json:"charts,omitempty"`

	// Objects are Kubernetes style yamls that should get deployed into the virtual cluster
	// +optional
	Objects string `json:"objects,omitempty"`

	// Access defines the access of users and teams to the virtual cluster.
	// +optional
	Access *InstanceAccess `json:"access,omitempty"`

	// Pro defines the pro settings for the virtual cluster
	// +optional
	Pro VirtualClusterProSpec `json:"pro,omitempty"`

	// HelmRelease is the helm release configuration for the virtual cluster.
	// +optional
	HelmRelease VirtualClusterHelmRelease `json:"helmRelease,omitempty"`

	// AccessPoint defines settings to expose the virtual cluster directly via an ingress rather than
	// through the (default) Loft proxy
	// +optional
	AccessPoint VirtualClusterAccessPoint `json:"accessPoint,omitempty"`

	// ForwardToken signals the proxy to pass through the used token to the virtual Kubernetes
	// api server and do a TokenReview there.
	// +optional
	ForwardToken bool `json:"forwardToken,omitempty"`
}

VirtualClusterCommonSpec holds common attributes for virtual clusters and virtual cluster templates

func (*VirtualClusterCommonSpec) DeepCopy

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

func (*VirtualClusterCommonSpec) DeepCopyInto

func (in *VirtualClusterCommonSpec) DeepCopyInto(out *VirtualClusterCommonSpec)

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

func (VirtualClusterCommonSpec) OpenAPIModelName added in v4.7.0

func (in VirtualClusterCommonSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterHelmChart

type VirtualClusterHelmChart struct {
	// the name of the helm chart
	// +optional
	Name string `json:"name,omitempty"`

	// the repo of the helm chart
	// +optional
	Repo string `json:"repo,omitempty"`

	// The username that is required for this repository
	// +optional
	Username string `json:"username,omitempty"`

	// The password that is required for this repository
	// +optional
	Password string `json:"password,omitempty"`

	// the version of the helm chart to use
	// +optional
	Version string `json:"version,omitempty"`

	// InsecureSkipTlsVerify skips the TLS verification for the helm chart
	// +optional
	InsecureSkipTlsVerify bool `json:"insecureSkipTlsVerify,omitempty"`
}

func (*VirtualClusterHelmChart) DeepCopy

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

func (*VirtualClusterHelmChart) DeepCopyInto

func (in *VirtualClusterHelmChart) DeepCopyInto(out *VirtualClusterHelmChart)

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

func (VirtualClusterHelmChart) OpenAPIModelName added in v4.7.0

func (in VirtualClusterHelmChart) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterHelmRelease

type VirtualClusterHelmRelease struct {
	// infos about what chart to deploy
	// +optional
	Chart VirtualClusterHelmChart `json:"chart,omitempty"`

	// the values for the given chart
	// +optional
	Values string `json:"values,omitempty"`
}

func (*VirtualClusterHelmRelease) DeepCopy

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

func (*VirtualClusterHelmRelease) DeepCopyInto

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

func (VirtualClusterHelmRelease) OpenAPIModelName added in v4.7.0

func (in VirtualClusterHelmRelease) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterHelmReleaseStatus

type VirtualClusterHelmReleaseStatus struct {
	// +optional
	Phase string `json:"phase,omitempty"`

	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// +optional
	Reason string `json:"reason,omitempty"`

	// +optional
	Message string `json:"message,omitempty"`

	// the release that was deployed
	// +optional
	Release VirtualClusterHelmRelease `json:"release,omitempty"`
}

func (*VirtualClusterHelmReleaseStatus) DeepCopy

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

func (*VirtualClusterHelmReleaseStatus) DeepCopyInto

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

func (VirtualClusterHelmReleaseStatus) OpenAPIModelName added in v4.7.0

func (in VirtualClusterHelmReleaseStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterInstance

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

	Spec   VirtualClusterInstanceSpec   `json:"spec,omitempty"`
	Status VirtualClusterInstanceStatus `json:"status,omitempty"`
}

VirtualClusterInstance +k8s:openapi-gen=true

func (*VirtualClusterInstance) DeepCopy

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

func (*VirtualClusterInstance) DeepCopyInto

func (in *VirtualClusterInstance) DeepCopyInto(out *VirtualClusterInstance)

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

func (*VirtualClusterInstance) DeepCopyObject

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

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

func (*VirtualClusterInstance) GetAccess

func (a *VirtualClusterInstance) GetAccess() []Access

func (*VirtualClusterInstance) GetConditions

func (*VirtualClusterInstance) GetOwner

func (a *VirtualClusterInstance) GetOwner() *UserOrTeam

func (VirtualClusterInstance) OpenAPIModelName added in v4.7.0

func (in VirtualClusterInstance) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*VirtualClusterInstance) SetAccess

func (a *VirtualClusterInstance) SetAccess(access []Access)

func (*VirtualClusterInstance) SetConditions

func (a *VirtualClusterInstance) SetConditions(conditions agentstoragev1.Conditions)

func (*VirtualClusterInstance) SetOwner

func (a *VirtualClusterInstance) SetOwner(userOrTeam *UserOrTeam)

type VirtualClusterInstanceList

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

VirtualClusterInstanceList contains a list of VirtualClusterInstance objects

func (*VirtualClusterInstanceList) DeepCopy

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

func (*VirtualClusterInstanceList) DeepCopyInto

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

func (*VirtualClusterInstanceList) DeepCopyObject

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

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

func (VirtualClusterInstanceList) OpenAPIModelName added in v4.7.0

func (in VirtualClusterInstanceList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterInstanceSpec

type VirtualClusterInstanceSpec struct {
	// DisplayName is the name that should be displayed in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes a virtual cluster instance
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// TemplateRef holds the virtual cluster template reference
	// +optional
	TemplateRef *TemplateRef `json:"templateRef,omitempty"`

	// Template is the inline template to use for virtual cluster creation. This is mutually
	// exclusive with templateRef.
	// +optional
	Template *VirtualClusterTemplateDefinition `json:"template,omitempty"`

	// ClusterRef is the reference to the connected cluster holding
	// this virtual cluster
	// +optional
	ClusterRef VirtualClusterClusterRef `json:"clusterRef,omitempty"`

	// Parameters are values to pass to the template.
	// The values should be encoded as YAML string where each parameter is represented as a top-level field key.
	// +optional
	Parameters string `json:"parameters,omitempty"`

	// ExtraAccessRules defines extra rules which users and teams should have which access to the virtual
	// cluster.
	// +optional
	ExtraAccessRules []InstanceAccessRule `json:"extraAccessRules,omitempty"`

	// Access to the virtual cluster object itself
	// +optional
	Access []Access `json:"access,omitempty"`

	// NetworkPeer specifies if the cluster is connected via tailscale.
	// +optional
	NetworkPeer bool `json:"networkPeer,omitempty"`

	// External specifies if the virtual cluster is managed by the platform agent or externally.
	// +optional
	External bool `json:"external,omitempty"`

	// Standalone specifies if the virtual cluster is standalone and not hosted in another Kubernetes cluster.
	// +optional
	Standalone bool `json:"standalone,omitempty"`
}

func (*VirtualClusterInstanceSpec) DeepCopy

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

func (*VirtualClusterInstanceSpec) DeepCopyInto

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

func (VirtualClusterInstanceSpec) OpenAPIModelName added in v4.7.0

func (in VirtualClusterInstanceSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterInstanceStatus

type VirtualClusterInstanceStatus struct {
	// Phase describes the current phase the virtual cluster instance is in
	// +optional
	Phase InstancePhase `json:"phase,omitempty"`

	// Reason describes the reason in machine-readable form why the cluster is in the current
	// phase
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human-readable form why the cluster is in the current
	// phase
	// +optional
	Message string `json:"message,omitempty"`

	// ServiceUID is the service uid of the virtual cluster to uniquely identify it.
	// +optional
	ServiceUID string `json:"serviceUID,omitempty"`

	// KubernetesVersion is the Kubernetes version of the virtual cluster.
	// +optional
	KubernetesVersion string `json:"kubernetesVersion,omitempty"`

	// DeployHash is the hash of the last deployed values.
	// +optional
	DeployHash string `json:"deployHash,omitempty"`

	// Conditions holds several conditions the virtual cluster might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`

	// VirtualClusterObjects are the objects that were applied within the virtual cluster itself
	// +optional
	VirtualClusterObjects *ObjectsStatus `json:"virtualClusterObjects,omitempty"`

	// SpaceObjects are the objects that were applied within the virtual cluster space
	// +optional
	SpaceObjects *ObjectsStatus `json:"spaceObjects,omitempty"`

	// VirtualCluster is the template rendered with all the parameters
	// +optional
	VirtualCluster *VirtualClusterTemplateDefinition `json:"virtualCluster,omitempty"`

	// IgnoreReconciliation tells the controller to ignore reconciliation for this instance -- this
	// is primarily used when migrating virtual cluster instances from project to project; this
	// prevents a situation where there are two virtual cluster instances representing the same
	// virtual cluster which could cause issues with concurrent reconciliations of the same object.
	// Once the virtual cluster instance has been cloned and placed into the new project, this
	// (the "old") virtual cluster instance can safely be deleted.
	IgnoreReconciliation bool `json:"ignoreReconciliation,omitempty"`
}

func (*VirtualClusterInstanceStatus) DeepCopy

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

func (*VirtualClusterInstanceStatus) DeepCopyInto

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

func (VirtualClusterInstanceStatus) OpenAPIModelName added in v4.7.0

func (in VirtualClusterInstanceStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterInstanceTemplateDefinition

type VirtualClusterInstanceTemplateDefinition struct {
	// The virtual cluster instance metadata
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	TemplateMetadata `json:"metadata,omitempty"`
}

VirtualClusterInstanceTemplateDefinition holds the virtual cluster instance template

func (*VirtualClusterInstanceTemplateDefinition) DeepCopy

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

func (*VirtualClusterInstanceTemplateDefinition) DeepCopyInto

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

func (VirtualClusterInstanceTemplateDefinition) OpenAPIModelName added in v4.7.0

func (in VirtualClusterInstanceTemplateDefinition) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterPhase

type VirtualClusterPhase string

VirtualClusterPhase describes the phase of a virtual cluster

const (
	VirtualClusterUnknown  VirtualClusterPhase = ""
	VirtualClusterPending  VirtualClusterPhase = "Pending"
	VirtualClusterDeployed VirtualClusterPhase = "Deployed"
	VirtualClusterFailed   VirtualClusterPhase = "Failed"
)

These are the valid admin account types

type VirtualClusterProSpec

type VirtualClusterProSpec struct {
	// Enabled defines if the virtual cluster is a pro cluster or not
	// +optional
	Enabled bool `json:"enabled,omitempty"`
}

func (*VirtualClusterProSpec) DeepCopy

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

func (*VirtualClusterProSpec) DeepCopyInto

func (in *VirtualClusterProSpec) DeepCopyInto(out *VirtualClusterProSpec)

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

func (VirtualClusterProSpec) OpenAPIModelName added in v4.7.0

func (in VirtualClusterProSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterSpaceTemplateDefinition

type VirtualClusterSpaceTemplateDefinition struct {
	// The space metadata
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	TemplateMetadata `json:"metadata,omitempty"`

	// Objects are Kubernetes style yamls that should get deployed into the virtual cluster namespace
	// +optional
	Objects string `json:"objects,omitempty"`

	// Charts are helm charts that should get deployed
	// +optional
	Charts []TemplateHelmChart `json:"charts,omitempty"`

	// Apps specifies the apps that should get deployed by this template
	// +optional
	Apps []AppReference `json:"apps,omitempty"`
}

func (*VirtualClusterSpaceTemplateDefinition) DeepCopy

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

func (*VirtualClusterSpaceTemplateDefinition) DeepCopyInto

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

func (VirtualClusterSpaceTemplateDefinition) OpenAPIModelName added in v4.7.0

func (in VirtualClusterSpaceTemplateDefinition) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterStatus

type VirtualClusterStatus struct {
	// Phase describes the current phase the virtual cluster is in
	// +optional
	Phase VirtualClusterPhase `json:"phase,omitempty"`

	// Reason describes the reason in machine readable form why the cluster is in the current
	// phase
	// +optional
	Reason string `json:"reason,omitempty"`

	// Message describes the reason in human readable form why the cluster is in the current
	// phase
	// +optional
	Message string `json:"message,omitempty"`

	// ControlPlaneReady defines if the virtual cluster control plane is ready.
	// +optional
	ControlPlaneReady bool `json:"controlPlaneReady,omitempty"`

	// Conditions holds several conditions the virtual cluster might be in
	// +optional
	Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`

	// ObservedGeneration is the latest generation observed by the controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// VirtualClusterObjects are the objects that were applied within the virtual cluster itself
	// +optional
	VirtualClusterObjects *ObjectsStatus `json:"virtualClusterObjects,omitempty"`

	// DeployHash saves the latest applied chart hash
	// +optional
	DeployHash string `json:"deployHash,omitempty"`

	// MultiNamespace indicates if this is a multinamespace enabled virtual cluster
	MultiNamespace bool `json:"multiNamespace,omitempty"`

	// DEPRECATED: do not use anymore
	// the status of the helm release that was used to deploy the virtual cluster
	// +optional
	HelmRelease *VirtualClusterHelmReleaseStatus `json:"helmRelease,omitempty"`
}

VirtualClusterStatus holds the status of a virtual cluster

func (*VirtualClusterStatus) DeepCopy

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

func (*VirtualClusterStatus) DeepCopyInto

func (in *VirtualClusterStatus) DeepCopyInto(out *VirtualClusterStatus)

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

func (VirtualClusterStatus) OpenAPIModelName added in v4.7.0

func (in VirtualClusterStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterTemplate

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

	Spec   VirtualClusterTemplateSpec   `json:"spec,omitempty"`
	Status VirtualClusterTemplateStatus `json:"status,omitempty"`
}

VirtualClusterTemplate holds the virtualClusterTemplate information +k8s:openapi-gen=true

func (*VirtualClusterTemplate) DeepCopy

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

func (*VirtualClusterTemplate) DeepCopyInto

func (in *VirtualClusterTemplate) DeepCopyInto(out *VirtualClusterTemplate)

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

func (*VirtualClusterTemplate) DeepCopyObject

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

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

func (*VirtualClusterTemplate) GetAccess

func (a *VirtualClusterTemplate) GetAccess() []Access

func (*VirtualClusterTemplate) GetOwner

func (a *VirtualClusterTemplate) GetOwner() *UserOrTeam

func (*VirtualClusterTemplate) GetVersions

func (a *VirtualClusterTemplate) GetVersions() []VersionAccessor

func (VirtualClusterTemplate) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplate) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

func (*VirtualClusterTemplate) SetAccess

func (a *VirtualClusterTemplate) SetAccess(access []Access)

func (*VirtualClusterTemplate) SetOwner

func (a *VirtualClusterTemplate) SetOwner(userOrTeam *UserOrTeam)

type VirtualClusterTemplateDefinition

type VirtualClusterTemplateDefinition struct {
	// The virtual cluster metadata
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	TemplateMetadata `json:"metadata,omitempty"`

	// InstanceTemplate holds the virtual cluster instance template
	// +optional
	InstanceTemplate VirtualClusterInstanceTemplateDefinition `json:"instanceTemplate,omitempty"`

	// VirtualClusterCommonSpec defines virtual cluster spec that is common between the virtual
	// cluster templates, and virtual cluster
	VirtualClusterCommonSpec `json:",inline"`

	// SpaceTemplate holds the space template
	// +optional
	SpaceTemplate VirtualClusterSpaceTemplateDefinition `json:"spaceTemplate,omitempty"`
}

func (*VirtualClusterTemplateDefinition) DeepCopy

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

func (*VirtualClusterTemplateDefinition) DeepCopyInto

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

func (VirtualClusterTemplateDefinition) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplateDefinition) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterTemplateList

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

VirtualClusterTemplateList contains a list of VirtualClusterTemplate

func (*VirtualClusterTemplateList) DeepCopy

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

func (*VirtualClusterTemplateList) DeepCopyInto

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

func (*VirtualClusterTemplateList) DeepCopyObject

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

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

func (VirtualClusterTemplateList) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplateList) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterTemplateSpaceTemplateRef

type VirtualClusterTemplateSpaceTemplateRef struct {
	// Name of the space template
	// +optional
	Name string `json:"name,omitempty"`
}

func (*VirtualClusterTemplateSpaceTemplateRef) DeepCopy

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

func (*VirtualClusterTemplateSpaceTemplateRef) DeepCopyInto

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

func (VirtualClusterTemplateSpaceTemplateRef) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplateSpaceTemplateRef) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterTemplateSpec

type VirtualClusterTemplateSpec struct {
	// DisplayName is the name that is shown in the UI
	// +optional
	DisplayName string `json:"displayName,omitempty"`

	// Description describes the virtual cluster template
	// +optional
	Description string `json:"description,omitempty"`

	// Owner holds the owner of this object
	// +optional
	Owner *UserOrTeam `json:"owner,omitempty"`

	// Template holds the virtual cluster template
	// +optional
	Template VirtualClusterTemplateDefinition `json:"template,omitempty"`

	// Parameters define additional app parameters that will set helm values
	// +optional
	Parameters []AppParameter `json:"parameters,omitempty"`

	// Versions are different versions of the template that can be referenced as well
	// +optional
	Versions []VirtualClusterTemplateVersion `json:"versions,omitempty"`

	// Access holds the access rights for users and teams
	// +optional
	Access []Access `json:"access,omitempty"`

	// DEPRECATED: SpaceTemplate to use to create the virtual cluster space if it does not exist
	// +optional
	SpaceTemplateRef *VirtualClusterTemplateSpaceTemplateRef `json:"spaceTemplateRef,omitempty"`
}

VirtualClusterTemplateSpec holds the specification

func (*VirtualClusterTemplateSpec) DeepCopy

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

func (*VirtualClusterTemplateSpec) DeepCopyInto

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

func (VirtualClusterTemplateSpec) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplateSpec) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterTemplateStatus

type VirtualClusterTemplateStatus struct {
}

VirtualClusterTemplateStatus holds the status

func (*VirtualClusterTemplateStatus) DeepCopy

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

func (*VirtualClusterTemplateStatus) DeepCopyInto

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

func (VirtualClusterTemplateStatus) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplateStatus) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

type VirtualClusterTemplateVersion

type VirtualClusterTemplateVersion struct {
	// Template holds the space template
	// +optional
	Template VirtualClusterTemplateDefinition `json:"template,omitempty"`

	// Parameters define additional app parameters that will set helm values
	// +optional
	Parameters []AppParameter `json:"parameters,omitempty"`

	// Version is the version. Needs to be in X.X.X format.
	// +optional
	Version string `json:"version,omitempty"`
}

func (*VirtualClusterTemplateVersion) DeepCopy

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

func (*VirtualClusterTemplateVersion) DeepCopyInto

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

func (*VirtualClusterTemplateVersion) GetVersion

func (a *VirtualClusterTemplateVersion) GetVersion() string

func (VirtualClusterTemplateVersion) OpenAPIModelName added in v4.7.0

func (in VirtualClusterTemplateVersion) OpenAPIModelName() string

OpenAPIModelName returns the OpenAPI model name for this type.

Jump to

Keyboard shortcuts

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