Documentation
¶
Overview ¶
+k8s:openapi-gen=true +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
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- func Resource(resource string) schema.GroupResource
- func SetObjectDefaults_DevPodWorkspaceInstance(in *DevPodWorkspaceInstance)
- func SetObjectDefaults_DevPodWorkspaceInstanceList(in *DevPodWorkspaceInstanceList)
- func SetObjectDefaults_DevPodWorkspaceTemplate(in *DevPodWorkspaceTemplate)
- func SetObjectDefaults_DevPodWorkspaceTemplateList(in *DevPodWorkspaceTemplateList)
- type Access
- type AccessAccessor
- type AccessKey
- type AccessKeyIdentity
- type AccessKeyList
- type AccessKeyOIDC
- type AccessKeyOIDCProvider
- type AccessKeyScope
- type AccessKeyScopeCluster
- type AccessKeyScopeProject
- type AccessKeyScopeRole
- type AccessKeyScopeRoleName
- type AccessKeyScopeRule
- type AccessKeyScopeSpace
- type AccessKeyScopeVirtualCluster
- type AccessKeySpec
- type AccessKeyStatus
- type AccessKeyType
- type AccessKeyVirtualCluster
- type AllowedCluster
- type AllowedClusterAccountTemplate
- type AllowedRunner
- type AllowedTemplate
- type App
- type AppConfig
- type AppList
- type AppParameter
- type AppReference
- type AppSpec
- type AppStatus
- type AppTask
- type AppVersion
- type ArgoIntegrationSpec
- type ArgoProjectPolicyRule
- type ArgoProjectRole
- type ArgoProjectSpec
- type ArgoProjectSpecMetadata
- type ArgoSSOSpec
- type Chart
- type ChartStatus
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (a *Cluster) GetAccess() []Access
- func (a *Cluster) GetConditions() agentstoragev1.Conditions
- func (a *Cluster) GetOwner() *UserOrTeam
- func (a *Cluster) SetAccess(access []Access)
- func (a *Cluster) SetConditions(conditions agentstoragev1.Conditions)
- func (a *Cluster) SetOwner(userOrTeam *UserOrTeam)
- type ClusterAccess
- func (in *ClusterAccess) DeepCopy() *ClusterAccess
- func (in *ClusterAccess) DeepCopyInto(out *ClusterAccess)
- func (in *ClusterAccess) DeepCopyObject() runtime.Object
- func (a *ClusterAccess) GetAccess() []Access
- func (a *ClusterAccess) GetOwner() *UserOrTeam
- func (a *ClusterAccess) SetAccess(access []Access)
- func (a *ClusterAccess) SetOwner(userOrTeam *UserOrTeam)
- type ClusterAccessList
- type ClusterAccessSpec
- type ClusterAccessStatus
- type ClusterList
- type ClusterRef
- type ClusterRoleRef
- type ClusterRoleTemplate
- func (in *ClusterRoleTemplate) DeepCopy() *ClusterRoleTemplate
- func (in *ClusterRoleTemplate) DeepCopyInto(out *ClusterRoleTemplate)
- func (in *ClusterRoleTemplate) DeepCopyObject() runtime.Object
- func (a *ClusterRoleTemplate) GetAccess() []Access
- func (a *ClusterRoleTemplate) GetOwner() *UserOrTeam
- func (a *ClusterRoleTemplate) SetAccess(access []Access)
- func (a *ClusterRoleTemplate) SetOwner(userOrTeam *UserOrTeam)
- type ClusterRoleTemplateList
- type ClusterRoleTemplateSpec
- type ClusterRoleTemplateStatus
- type ClusterRoleTemplateTemplate
- type ClusterSpec
- type ClusterStatus
- type ClusterStatusPhase
- type CredentialForwarding
- type DevPodCommandDeleteOptions
- type DevPodCommandStatusOptions
- type DevPodCommandStopOptions
- type DevPodCommandUpOptions
- type DevPodEnvironmentTemplate
- func (in *DevPodEnvironmentTemplate) DeepCopy() *DevPodEnvironmentTemplate
- func (in *DevPodEnvironmentTemplate) DeepCopyInto(out *DevPodEnvironmentTemplate)
- func (in *DevPodEnvironmentTemplate) DeepCopyObject() runtime.Object
- func (a *DevPodEnvironmentTemplate) GetAccess() []Access
- func (a *DevPodEnvironmentTemplate) GetOwner() *UserOrTeam
- func (a *DevPodEnvironmentTemplate) GetVersions() []VersionAccessor
- func (a *DevPodEnvironmentTemplate) SetAccess(access []Access)
- func (a *DevPodEnvironmentTemplate) SetOwner(userOrTeam *UserOrTeam)
- type DevPodEnvironmentTemplateDefinition
- type DevPodEnvironmentTemplateList
- type DevPodEnvironmentTemplateSpec
- type DevPodEnvironmentTemplateStatus
- type DevPodEnvironmentTemplateVersion
- type DevPodProjectSpec
- type DevPodProviderOption
- type DevPodProviderOptionFrom
- type DevPodProviderSource
- type DevPodWorkspaceContainer
- type DevPodWorkspaceInstance
- func (in *DevPodWorkspaceInstance) DeepCopy() *DevPodWorkspaceInstance
- func (in *DevPodWorkspaceInstance) DeepCopyInto(out *DevPodWorkspaceInstance)
- func (in *DevPodWorkspaceInstance) DeepCopyObject() runtime.Object
- func (a *DevPodWorkspaceInstance) GetAccess() []Access
- func (a *DevPodWorkspaceInstance) GetConditions() agentstoragev1.Conditions
- func (a *DevPodWorkspaceInstance) GetOwner() *UserOrTeam
- func (a *DevPodWorkspaceInstance) SetAccess(access []Access)
- func (a *DevPodWorkspaceInstance) SetConditions(conditions agentstoragev1.Conditions)
- func (a *DevPodWorkspaceInstance) SetOwner(userOrTeam *UserOrTeam)
- type DevPodWorkspaceInstanceContainerResource
- type DevPodWorkspaceInstanceEvent
- type DevPodWorkspaceInstanceKubernetesStatus
- type DevPodWorkspaceInstanceList
- type DevPodWorkspaceInstancePersistentVolumeClaimStatus
- type DevPodWorkspaceInstancePodStatus
- type DevPodWorkspaceInstanceSpec
- type DevPodWorkspaceInstanceStatus
- type DevPodWorkspaceInstanceTemplateDefinition
- type DevPodWorkspaceKubernetesSpec
- type DevPodWorkspacePodTemplate
- type DevPodWorkspacePodTemplateSpec
- type DevPodWorkspacePreset
- func (in *DevPodWorkspacePreset) DeepCopy() *DevPodWorkspacePreset
- func (in *DevPodWorkspacePreset) DeepCopyInto(out *DevPodWorkspacePreset)
- func (in *DevPodWorkspacePreset) DeepCopyObject() runtime.Object
- func (a *DevPodWorkspacePreset) GetAccess() []Access
- func (a *DevPodWorkspacePreset) GetOwner() *UserOrTeam
- func (a *DevPodWorkspacePreset) SetAccess(access []Access)
- func (a *DevPodWorkspacePreset) SetOwner(userOrTeam *UserOrTeam)
- type DevPodWorkspacePresetList
- type DevPodWorkspacePresetSource
- type DevPodWorkspacePresetSpec
- type DevPodWorkspacePresetStatus
- type DevPodWorkspacePresetVersion
- type DevPodWorkspaceProvider
- type DevPodWorkspaceResourceRequirements
- type DevPodWorkspaceTemplate
- func (in *DevPodWorkspaceTemplate) DeepCopy() *DevPodWorkspaceTemplate
- func (in *DevPodWorkspaceTemplate) DeepCopyInto(out *DevPodWorkspaceTemplate)
- func (in *DevPodWorkspaceTemplate) DeepCopyObject() runtime.Object
- func (a *DevPodWorkspaceTemplate) GetAccess() []Access
- func (a *DevPodWorkspaceTemplate) GetOwner() *UserOrTeam
- func (a *DevPodWorkspaceTemplate) GetVersions() []VersionAccessor
- func (a *DevPodWorkspaceTemplate) SetAccess(access []Access)
- func (a *DevPodWorkspaceTemplate) SetOwner(userOrTeam *UserOrTeam)
- type DevPodWorkspaceTemplateDefinition
- type DevPodWorkspaceTemplateList
- type DevPodWorkspaceTemplateSpec
- type DevPodWorkspaceTemplateStatus
- type DevPodWorkspaceTemplateVersion
- type DevPodWorkspaceVolumeClaimTemplate
- type DockerCredentialForwarding
- type EntityInfo
- type EnvironmentRef
- type GitCloneStrategy
- type GitCredentialForwarding
- type GitEnvironmentTemplate
- type GitProjectCredentials
- type GitProjectSpec
- type GroupResources
- type HelmChart
- type HelmChartRepository
- type HelmConfiguration
- type HelmTask
- type HelmTaskRelease
- type HelmTaskType
- type ImportVirtualClustersSpec
- type InstanceAccess
- type InstanceAccessRule
- type InstanceDeployedAppPhase
- type InstanceDeployedAppStatus
- type InstancePhase
- type KindSecretRef
- type LocalClusterAccessSpec
- type LocalClusterAccessTemplate
- type LocalClusterRoleTemplate
- type LocalClusterRoleTemplateSpec
- type Member
- type Metrics
- type NamespacePattern
- type NetworkPeer
- type NetworkPeerList
- type NetworkPeerSpec
- type NetworkPeerStatus
- type ObjectsStatus
- type OpenCost
- type PodSelector
- type PresetRef
- type Project
- func (in *Project) DeepCopy() *Project
- func (in *Project) DeepCopyInto(out *Project)
- func (in *Project) DeepCopyObject() runtime.Object
- func (a *Project) GetAccess() []Access
- func (a *Project) GetConditions() agentstoragev1.Conditions
- func (a *Project) GetOwner() *UserOrTeam
- func (a *Project) SetAccess(access []Access)
- func (a *Project) SetConditions(conditions agentstoragev1.Conditions)
- func (a *Project) SetOwner(userOrTeam *UserOrTeam)
- type ProjectList
- type ProjectSpec
- type ProjectStatus
- type QuotaStatus
- type QuotaStatusProject
- type QuotaStatusProjectCluster
- type QuotaStatusUser
- type QuotaStatusUserUsed
- type Quotas
- type RancherIntegrationSpec
- type RancherProjectRef
- type RecommendedApp
- type RequestTarget
- type RequirePreset
- type RequireTemplate
- type RunnerRef
- type SecretRef
- type SharedSecret
- func (in *SharedSecret) DeepCopy() *SharedSecret
- func (in *SharedSecret) DeepCopyInto(out *SharedSecret)
- func (in *SharedSecret) DeepCopyObject() runtime.Object
- func (a *SharedSecret) GetAccess() []Access
- func (a *SharedSecret) GetConditions() agentstoragev1.Conditions
- func (a *SharedSecret) GetOwner() *UserOrTeam
- func (a *SharedSecret) SetAccess(access []Access)
- func (a *SharedSecret) SetConditions(conditions agentstoragev1.Conditions)
- func (a *SharedSecret) SetOwner(userOrTeam *UserOrTeam)
- type SharedSecretList
- type SharedSecretSpec
- type SharedSecretStatus
- type SpaceInstance
- func (in *SpaceInstance) DeepCopy() *SpaceInstance
- func (in *SpaceInstance) DeepCopyInto(out *SpaceInstance)
- func (in *SpaceInstance) DeepCopyObject() runtime.Object
- func (a *SpaceInstance) GetAccess() []Access
- func (a *SpaceInstance) GetConditions() agentstoragev1.Conditions
- func (a *SpaceInstance) GetOwner() *UserOrTeam
- func (a *SpaceInstance) SetAccess(access []Access)
- func (a *SpaceInstance) SetConditions(conditions agentstoragev1.Conditions)
- func (a *SpaceInstance) SetOwner(userOrTeam *UserOrTeam)
- type SpaceInstanceList
- type SpaceInstanceSpec
- type SpaceInstanceStatus
- type SpaceInstanceTemplateDefinition
- type SpaceTemplate
- func (in *SpaceTemplate) DeepCopy() *SpaceTemplate
- func (in *SpaceTemplate) DeepCopyInto(out *SpaceTemplate)
- func (in *SpaceTemplate) DeepCopyObject() runtime.Object
- func (a *SpaceTemplate) GetAccess() []Access
- func (a *SpaceTemplate) GetOwner() *UserOrTeam
- func (a *SpaceTemplate) GetVersions() []VersionAccessor
- func (a *SpaceTemplate) SetAccess(access []Access)
- func (a *SpaceTemplate) SetOwner(userOrTeam *UserOrTeam)
- type SpaceTemplateDefinition
- type SpaceTemplateList
- type SpaceTemplateSpec
- type SpaceTemplateStatus
- type SpaceTemplateVersion
- type Storage
- type StreamContainer
- type SyncMembersSpec
- type Target
- type TargetCluster
- type TargetInstance
- type TargetVirtualCluster
- type Task
- func (in *Task) DeepCopy() *Task
- func (in *Task) DeepCopyInto(out *Task)
- func (in *Task) DeepCopyObject() runtime.Object
- func (a *Task) GetAccess() []Access
- func (a *Task) GetConditions() agentstoragev1.Conditions
- func (a *Task) GetOwner() *UserOrTeam
- func (a *Task) SetAccess(access []Access)
- func (a *Task) SetConditions(conditions agentstoragev1.Conditions)
- func (a *Task) SetOwner(userOrTeam *UserOrTeam)
- type TaskDefinition
- type TaskList
- type TaskSpec
- type TaskStatus
- type Team
- type TeamList
- type TeamSpec
- type TeamStatus
- type TemplateHelmChart
- type TemplateMetadata
- type TemplateRef
- type User
- type UserList
- type UserOrTeam
- type UserOrTeamEntity
- type UserSpec
- type UserStatus
- type VaultAuthSpec
- type VaultIntegrationSpec
- type VersionAccessor
- type VersionsAccessor
- type VirtualClusterAccessPoint
- type VirtualClusterAccessPointIngressSpec
- type VirtualClusterClusterRef
- type VirtualClusterCommonSpec
- type VirtualClusterHelmChart
- type VirtualClusterHelmRelease
- type VirtualClusterHelmReleaseStatus
- type VirtualClusterInstance
- func (in *VirtualClusterInstance) DeepCopy() *VirtualClusterInstance
- func (in *VirtualClusterInstance) DeepCopyInto(out *VirtualClusterInstance)
- func (in *VirtualClusterInstance) DeepCopyObject() runtime.Object
- func (a *VirtualClusterInstance) GetAccess() []Access
- func (a *VirtualClusterInstance) GetConditions() agentstoragev1.Conditions
- func (a *VirtualClusterInstance) GetOwner() *UserOrTeam
- func (a *VirtualClusterInstance) SetAccess(access []Access)
- func (a *VirtualClusterInstance) SetConditions(conditions agentstoragev1.Conditions)
- func (a *VirtualClusterInstance) SetOwner(userOrTeam *UserOrTeam)
- type VirtualClusterInstanceList
- type VirtualClusterInstanceSpec
- type VirtualClusterInstanceStatus
- type VirtualClusterInstanceTemplateDefinition
- type VirtualClusterPhase
- type VirtualClusterProSpec
- type VirtualClusterSpaceTemplateDefinition
- type VirtualClusterStatus
- type VirtualClusterTemplate
- func (in *VirtualClusterTemplate) DeepCopy() *VirtualClusterTemplate
- func (in *VirtualClusterTemplate) DeepCopyInto(out *VirtualClusterTemplate)
- func (in *VirtualClusterTemplate) DeepCopyObject() runtime.Object
- func (a *VirtualClusterTemplate) GetAccess() []Access
- func (a *VirtualClusterTemplate) GetOwner() *UserOrTeam
- func (a *VirtualClusterTemplate) GetVersions() []VersionAccessor
- func (a *VirtualClusterTemplate) SetAccess(access []Access)
- func (a *VirtualClusterTemplate) SetOwner(userOrTeam *UserOrTeam)
- type VirtualClusterTemplateDefinition
- type VirtualClusterTemplateList
- type VirtualClusterTemplateSpaceTemplateRef
- type VirtualClusterTemplateSpec
- type VirtualClusterTemplateStatus
- type VirtualClusterTemplateVersion
- type WorkspaceRef
- type WorkspaceResolvedTarget
- type WorkspaceStatus
- type WorkspaceStatusResult
- type WorkspaceTarget
- type WorkspaceTargetName
- type WorkspaceTargetNamespace
Constants ¶
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" 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" )
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" )
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" )
const ( RancherIntegrationSynced agentstoragev1.ConditionType = "RancherIntegrationSynced" RancherLastAppliedHashAnnotation = "loft.sh/rancher-integration-last-applied-hash" )
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" InstanceVirtualClusterAppsAndObjectsSynced agentstoragev1.ConditionType = "VirtualClusterAppsAndObjectsSynced" )
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 ¶
var ( DevPodWorkspaceConditions = []agentstoragev1.ConditionType{ InstanceScheduled, InstanceTemplateResolved, } // DevPodWorkspaceIDLabel holds the actual workspace id of the devpod workspace DevPodWorkspaceIDLabel = "loft.sh/workspace-id" // DevPodWorkspaceUIDLabel holds the actual workspace uid of the devpod workspace DevPodWorkspaceUIDLabel = "loft.sh/workspace-uid" // DevPodKubernetesProviderWorkspaceUIDLabel holds the actual workspace uid of the devpod workspace on resources // created by the DevPod Kubernetes provider. DevPodKubernetesProviderWorkspaceUIDLabel = "devpod.sh/workspace-uid" // DevPodWorkspacePictureAnnotation holds the workspace picture url of the devpod workspace DevPodWorkspacePictureAnnotation = "loft.sh/workspace-picture" // DevPodWorkspaceSourceAnnotation holds the workspace source of the devpod workspace DevPodWorkspaceSourceAnnotation = "loft.sh/workspace-source" // DevPodClientsAnnotation holds the active clients for a workspace networpeer DevPodClientsAnnotation = "loft.sh/devpod-clients" )
var ( DevPodPlatformOptions = "DEVPOD_PLATFORM_OPTIONS" DevPodFlagsUp = "DEVPOD_FLAGS_UP" DevPodFlagsDelete = "DEVPOD_FLAGS_DELETE" DevPodFlagsStop = "DEVPOD_FLAGS_STOP" )
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 )
var ( SpaceTemplateKind = "SpaceTemplate" VirtualClusterTemplateKind = "VirtualClusterTemplate" DevPodWorkspaceTemplateKind = "DevPodWorkspaceTemplate" DevPodWorkspacePresetKind = "DevPodWorkspacePreset" )
var ( InstanceDeployedAppDeployed = "Deployed" InstanceDeployedAppFailed = "Failed" )
var AllowedWorkspaceStatus = []WorkspaceStatus{ WorkspaceStatusNotFound, WorkspaceStatusStopped, WorkspaceStatusBusy, WorkspaceStatusRunning, }
var ( SpaceConditions = []agentstoragev1.ConditionType{ InstanceScheduled, InstanceTemplateResolved, InstanceSpaceSynced, InstanceSpaceReady, } )
Functions ¶
func RegisterDefaults ¶
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
func SetObjectDefaults_DevPodWorkspaceInstance ¶ added in v4.3.0
func SetObjectDefaults_DevPodWorkspaceInstance(in *DevPodWorkspaceInstance)
func SetObjectDefaults_DevPodWorkspaceInstanceList ¶ added in v4.3.0
func SetObjectDefaults_DevPodWorkspaceInstanceList(in *DevPodWorkspaceInstanceList)
func SetObjectDefaults_DevPodWorkspaceTemplate ¶ added in v4.3.0
func SetObjectDefaults_DevPodWorkspaceTemplate(in *DevPodWorkspaceTemplate)
func SetObjectDefaults_DevPodWorkspaceTemplateList ¶ added in v4.3.0
func SetObjectDefaults_DevPodWorkspaceTemplateList(in *DevPodWorkspaceTemplateList)
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Access.
func (*Access) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessKey.
func (*AccessKey) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AccessKey) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AccessKeyIdentity ¶
type AccessKeyIdentity 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"`
// 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 (*AccessKeyIdentity) DeepCopy ¶
func (in *AccessKeyIdentity) DeepCopy() *AccessKeyIdentity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessKeyIdentity.
func (*AccessKeyIdentity) DeepCopyInto ¶
func (in *AccessKeyIdentity) DeepCopyInto(out *AccessKeyIdentity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
func (in *AccessKeyOIDCProvider) DeepCopy() *AccessKeyOIDCProvider
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.
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 (a AccessKeyScope) GetRole(name AccessKeyScopeRoleName) AccessKeyScopeRole
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 ¶
func (in *AccessKeyScopeCluster) DeepCopy() *AccessKeyScopeCluster
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.
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 ¶
func (in *AccessKeyScopeProject) DeepCopy() *AccessKeyScopeProject
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.
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.
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.
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.
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 ¶
func (in *AccessKeyScopeVirtualCluster) DeepCopy() *AccessKeyScopeVirtualCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccessKeyScopeVirtualCluster.
func (*AccessKeyScopeVirtualCluster) DeepCopyInto ¶
func (in *AccessKeyScopeVirtualCluster) DeepCopyInto(out *AccessKeyScopeVirtualCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 *AccessKeyIdentity `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.
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.
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 ¶
func (in *AccessKeyVirtualCluster) DeepCopy() *AccessKeyVirtualCluster
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.
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.
type AllowedClusterAccountTemplate ¶
type AllowedClusterAccountTemplate struct {
// Name is the name of a cluster account template
// +optional
Name string `json:"name,omitempty"`
}
func (*AllowedClusterAccountTemplate) DeepCopy ¶
func (in *AllowedClusterAccountTemplate) DeepCopy() *AllowedClusterAccountTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedClusterAccountTemplate.
func (*AllowedClusterAccountTemplate) DeepCopyInto ¶
func (in *AllowedClusterAccountTemplate) DeepCopyInto(out *AllowedClusterAccountTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new App.
func (*App) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*App) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*App) GetOwner ¶
func (a *App) GetOwner() *UserOrTeam
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppConfig.
func (*AppConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppList.
func (*AppList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AppList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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.
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"`
// 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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppSpec.
func (*AppSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppStatus ¶
type AppStatus struct {
}
AppStatus holds the status
func (*AppStatus) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppStatus.
func (*AppStatus) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppTask.
func (*AppTask) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
func (in *ArgoProjectPolicyRule) DeepCopy() *ArgoProjectPolicyRule
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.
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.
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.
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 ¶
func (in *ArgoProjectSpecMetadata) DeepCopy() *ArgoProjectSpecMetadata
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.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Chart.
func (*Chart) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) GetConditions ¶ added in v4.2.0
func (a *Cluster) GetConditions() agentstoragev1.Conditions
func (*Cluster) GetOwner ¶
func (a *Cluster) GetOwner() *UserOrTeam
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 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) 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.
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.
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.
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.
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.
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.
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) 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 ¶
func (in *ClusterRoleTemplateList) DeepCopy() *ClusterRoleTemplateList
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.
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 ¶
func (in *ClusterRoleTemplateSpec) DeepCopy() *ClusterRoleTemplateSpec
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.
type ClusterRoleTemplateStatus ¶
type ClusterRoleTemplateStatus struct {
}
ClusterRoleTemplateStatus holds the status of a user access
func (*ClusterRoleTemplateStatus) DeepCopy ¶
func (in *ClusterRoleTemplateStatus) DeepCopy() *ClusterRoleTemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRoleTemplateStatus.
func (*ClusterRoleTemplateStatus) DeepCopyInto ¶
func (in *ClusterRoleTemplateStatus) DeepCopyInto(out *ClusterRoleTemplateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *ClusterRoleTemplateTemplate) DeepCopy() *ClusterRoleTemplateTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRoleTemplateTemplate.
func (*ClusterRoleTemplateTemplate) DeepCopyInto ¶
func (in *ClusterRoleTemplateTemplate) DeepCopyInto(out *ClusterRoleTemplateTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 CredentialForwarding ¶
type CredentialForwarding struct {
// Docker specifies controls for how workspaces created by this template forward docker credentials
// +optional
Docker *DockerCredentialForwarding `json:"docker,omitempty"`
// Git specifies controls for how workspaces created by this template forward git credentials
// +optional
Git *GitCredentialForwarding `json:"git,omitempty"`
}
func (*CredentialForwarding) DeepCopy ¶
func (in *CredentialForwarding) DeepCopy() *CredentialForwarding
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialForwarding.
func (*CredentialForwarding) DeepCopyInto ¶
func (in *CredentialForwarding) DeepCopyInto(out *CredentialForwarding)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodCommandDeleteOptions ¶
type DevPodCommandDeleteOptions struct {
IgnoreNotFound bool `json:"ignoreNotFound,omitempty"`
Force bool `json:"force,omitempty"`
GracePeriod string `json:"gracePeriod,omitempty"`
}
func (*DevPodCommandDeleteOptions) DeepCopy ¶
func (in *DevPodCommandDeleteOptions) DeepCopy() *DevPodCommandDeleteOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodCommandDeleteOptions.
func (*DevPodCommandDeleteOptions) DeepCopyInto ¶
func (in *DevPodCommandDeleteOptions) DeepCopyInto(out *DevPodCommandDeleteOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodCommandStatusOptions ¶
type DevPodCommandStatusOptions struct {
ContainerStatus bool `json:"containerStatus,omitempty"`
}
func (*DevPodCommandStatusOptions) DeepCopy ¶
func (in *DevPodCommandStatusOptions) DeepCopy() *DevPodCommandStatusOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodCommandStatusOptions.
func (*DevPodCommandStatusOptions) DeepCopyInto ¶
func (in *DevPodCommandStatusOptions) DeepCopyInto(out *DevPodCommandStatusOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodCommandStopOptions ¶
type DevPodCommandStopOptions struct{}
func (*DevPodCommandStopOptions) DeepCopy ¶
func (in *DevPodCommandStopOptions) DeepCopy() *DevPodCommandStopOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodCommandStopOptions.
func (*DevPodCommandStopOptions) DeepCopyInto ¶
func (in *DevPodCommandStopOptions) DeepCopyInto(out *DevPodCommandStopOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodCommandUpOptions ¶
type DevPodCommandUpOptions struct {
// up options
ID string `json:"id,omitempty"`
Source string `json:"source,omitempty"`
IDE string `json:"ide,omitempty"`
IDEOptions []string `json:"ideOptions,omitempty"`
PrebuildRepositories []string `json:"prebuildRepositories,omitempty"`
DevContainerPath string `json:"devContainerPath,omitempty"`
WorkspaceEnv []string `json:"workspaceEnv,omitempty"`
Recreate bool `json:"recreate,omitempty"`
Proxy bool `json:"proxy,omitempty"`
DisableDaemon bool `json:"disableDaemon,omitempty"`
DaemonInterval string `json:"daemonInterval,omitempty"`
// build options
Repository string `json:"repository,omitempty"`
SkipPush bool `json:"skipPush,omitempty"`
Platform []string `json:"platform,omitempty"`
// TESTING
ForceBuild bool `json:"forceBuild,omitempty"`
ForceInternalBuildKit bool `json:"forceInternalBuildKit,omitempty"`
}
func (*DevPodCommandUpOptions) DeepCopy ¶
func (in *DevPodCommandUpOptions) DeepCopy() *DevPodCommandUpOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodCommandUpOptions.
func (*DevPodCommandUpOptions) DeepCopyInto ¶
func (in *DevPodCommandUpOptions) DeepCopyInto(out *DevPodCommandUpOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodEnvironmentTemplate ¶
type DevPodEnvironmentTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DevPodEnvironmentTemplateSpec `json:"spec,omitempty"`
Status DevPodEnvironmentTemplateStatus `json:"status,omitempty"`
}
DevPodWorkspaceEnvironmentSource +k8s:openapi-gen=true
func (*DevPodEnvironmentTemplate) DeepCopy ¶
func (in *DevPodEnvironmentTemplate) DeepCopy() *DevPodEnvironmentTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodEnvironmentTemplate.
func (*DevPodEnvironmentTemplate) DeepCopyInto ¶
func (in *DevPodEnvironmentTemplate) DeepCopyInto(out *DevPodEnvironmentTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodEnvironmentTemplate) DeepCopyObject ¶
func (in *DevPodEnvironmentTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DevPodEnvironmentTemplate) GetAccess ¶
func (a *DevPodEnvironmentTemplate) GetAccess() []Access
func (*DevPodEnvironmentTemplate) GetOwner ¶
func (a *DevPodEnvironmentTemplate) GetOwner() *UserOrTeam
func (*DevPodEnvironmentTemplate) GetVersions ¶ added in v4.2.0
func (a *DevPodEnvironmentTemplate) GetVersions() []VersionAccessor
func (*DevPodEnvironmentTemplate) SetAccess ¶
func (a *DevPodEnvironmentTemplate) SetAccess(access []Access)
func (*DevPodEnvironmentTemplate) SetOwner ¶
func (a *DevPodEnvironmentTemplate) SetOwner(userOrTeam *UserOrTeam)
type DevPodEnvironmentTemplateDefinition ¶ added in v4.2.0
type DevPodEnvironmentTemplateDefinition struct {
// Git holds configuration for git environment spec source
// +optional
Git *GitEnvironmentTemplate `json:"git,omitempty"`
// Inline holds an inline devcontainer.json definition
// +optional
Inline string `json:"inline,omitempty"`
}
func (*DevPodEnvironmentTemplateDefinition) DeepCopy ¶ added in v4.2.0
func (in *DevPodEnvironmentTemplateDefinition) DeepCopy() *DevPodEnvironmentTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodEnvironmentTemplateDefinition.
func (*DevPodEnvironmentTemplateDefinition) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodEnvironmentTemplateDefinition) DeepCopyInto(out *DevPodEnvironmentTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodEnvironmentTemplateList ¶
type DevPodEnvironmentTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DevPodEnvironmentTemplate `json:"items"`
}
DevPodEnvironmentTemplateList contains a list of DevPodEnvironmentTemplate objects
func (*DevPodEnvironmentTemplateList) DeepCopy ¶
func (in *DevPodEnvironmentTemplateList) DeepCopy() *DevPodEnvironmentTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodEnvironmentTemplateList.
func (*DevPodEnvironmentTemplateList) DeepCopyInto ¶
func (in *DevPodEnvironmentTemplateList) DeepCopyInto(out *DevPodEnvironmentTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodEnvironmentTemplateList) DeepCopyObject ¶
func (in *DevPodEnvironmentTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DevPodEnvironmentTemplateSpec ¶
type DevPodEnvironmentTemplateSpec struct {
// DisplayName is the name that should be displayed in the UI
// +optional
DisplayName string `json:"displayName,omitempty"`
// Description describes the environment template
// +optional
Description string `json:"description,omitempty"`
// Owner holds the owner of this object
// +optional
Owner *UserOrTeam `json:"owner,omitempty"`
// Access to the DevPod machine instance object itself
// +optional
Access []Access `json:"access,omitempty"`
// Template is the inline template to use for DevPod environments
// +optional
Template *DevPodEnvironmentTemplateDefinition `json:"template,omitempty"`
// Versions are different versions of the template that can be referenced as well
// +optional
Versions []DevPodEnvironmentTemplateVersion `json:"versions,omitempty"`
}
func (*DevPodEnvironmentTemplateSpec) DeepCopy ¶
func (in *DevPodEnvironmentTemplateSpec) DeepCopy() *DevPodEnvironmentTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodEnvironmentTemplateSpec.
func (*DevPodEnvironmentTemplateSpec) DeepCopyInto ¶
func (in *DevPodEnvironmentTemplateSpec) DeepCopyInto(out *DevPodEnvironmentTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodEnvironmentTemplateStatus ¶ added in v4.2.0
type DevPodEnvironmentTemplateStatus struct {
}
DevPodEnvironmentTemplateStatus holds the status
func (*DevPodEnvironmentTemplateStatus) DeepCopy ¶ added in v4.2.0
func (in *DevPodEnvironmentTemplateStatus) DeepCopy() *DevPodEnvironmentTemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodEnvironmentTemplateStatus.
func (*DevPodEnvironmentTemplateStatus) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodEnvironmentTemplateStatus) DeepCopyInto(out *DevPodEnvironmentTemplateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodEnvironmentTemplateVersion ¶
type DevPodEnvironmentTemplateVersion struct {
// Template holds the environment template definition
// +optional
Template DevPodEnvironmentTemplateDefinition `json:"template,omitempty"`
// Version is the version. Needs to be in X.X.X format.
// +optional
Version string `json:"version,omitempty"`
}
func (*DevPodEnvironmentTemplateVersion) DeepCopy ¶
func (in *DevPodEnvironmentTemplateVersion) DeepCopy() *DevPodEnvironmentTemplateVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodEnvironmentTemplateVersion.
func (*DevPodEnvironmentTemplateVersion) DeepCopyInto ¶
func (in *DevPodEnvironmentTemplateVersion) DeepCopyInto(out *DevPodEnvironmentTemplateVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodEnvironmentTemplateVersion) GetVersion ¶ added in v4.2.0
func (a *DevPodEnvironmentTemplateVersion) GetVersion() string
type DevPodProjectSpec ¶
type DevPodProjectSpec struct {
// Git defines additional git related settings like credentials
// +optional
Git *GitProjectSpec `json:"git,omitempty"`
// FallbackImage defines an image all workspace will fall back to if no devcontainer.json could be detected
// +optional
FallbackImage string `json:"fallbackImage,omitempty"`
// RegistryPattern specifies a template pattern to use for building images on the fly.
// Requires the platform pods to be authenticated against the registry.
// +optional
RegistryPattern string `json:"registryPattern,omitempty"`
}
func (*DevPodProjectSpec) DeepCopy ¶
func (in *DevPodProjectSpec) DeepCopy() *DevPodProjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodProjectSpec.
func (*DevPodProjectSpec) DeepCopyInto ¶
func (in *DevPodProjectSpec) DeepCopyInto(out *DevPodProjectSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodProviderOption ¶
type DevPodProviderOption struct {
// Value of this option.
// +optional
Value string `json:"value,omitempty"`
// ValueFrom specifies a secret where this value should be taken from.
// +optional
ValueFrom *DevPodProviderOptionFrom `json:"valueFrom,omitempty"`
}
func (*DevPodProviderOption) DeepCopy ¶
func (in *DevPodProviderOption) DeepCopy() *DevPodProviderOption
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodProviderOption.
func (*DevPodProviderOption) DeepCopyInto ¶
func (in *DevPodProviderOption) DeepCopyInto(out *DevPodProviderOption)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodProviderOptionFrom ¶
type DevPodProviderOptionFrom struct {
// ProjectSecretRef is the project secret to use for this value.
// +optional
ProjectSecretRef *corev1.SecretKeySelector `json:"projectSecretRef,omitempty"`
// +optional
SharedSecretRef *corev1.SecretKeySelector `json:"sharedSecretRef,omitempty"`
}
func (*DevPodProviderOptionFrom) DeepCopy ¶
func (in *DevPodProviderOptionFrom) DeepCopy() *DevPodProviderOptionFrom
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodProviderOptionFrom.
func (*DevPodProviderOptionFrom) DeepCopyInto ¶
func (in *DevPodProviderOptionFrom) DeepCopyInto(out *DevPodProviderOptionFrom)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodProviderSource ¶
type DevPodProviderSource struct {
// Github source for the provider
Github string `json:"github,omitempty"`
// File source for the provider
File string `json:"file,omitempty"`
// URL where the provider was downloaded from
URL string `json:"url,omitempty"`
}
func (*DevPodProviderSource) DeepCopy ¶
func (in *DevPodProviderSource) DeepCopy() *DevPodProviderSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodProviderSource.
func (*DevPodProviderSource) DeepCopyInto ¶
func (in *DevPodProviderSource) DeepCopyInto(out *DevPodProviderSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceContainer ¶ added in v4.3.0
type DevPodWorkspaceContainer struct {
// Name of the container specified as a DNS_LABEL.
Name string `json:"name"`
// Container image name.
// +optional
Image string `json:"image,omitempty"`
// Entrypoint array. Not executed within a shell.
// +optional
// +listType=atomic
Command []string `json:"command,omitempty"`
// Arguments to the entrypoint.
// +optional
// +listType=atomic
Args []string `json:"args,omitempty"`
// Container's working directory.
// +optional
WorkingDir string `json:"workingDir,omitempty"`
// List of ports to expose from the container. Not specifying a port here
// +optional
Ports []corev1.ContainerPort `json:"ports,omitempty"`
// +optional
// +listType=atomic
EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`
// List of environment variables to set in the container.
// +optional
Env []corev1.EnvVar `json:"env,omitempty"`
// Compute Resources required by this container.
// +optional
Resources DevPodWorkspaceResourceRequirements `json:"resources,omitempty"`
// Resources resize policy for the container.
// +optional
// +listType=atomic
ResizePolicy []corev1.ContainerResizePolicy `json:"resizePolicy,omitempty"`
// RestartPolicy defines the restart behavior of individual containers in a pod.
// +optional
RestartPolicy *corev1.ContainerRestartPolicy `json:"restartPolicy,omitempty"`
// Pod volumes to mount into the container's filesystem.
// +optional
VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
// volumeDevices is the list of block devices to be used by the container.
// +optional
VolumeDevices []corev1.VolumeDevice `json:"volumeDevices,omitempty"`
// Periodic probe of container liveness.
// +optional
LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"`
// Periodic probe of container service readiness.
// +optional
ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"`
// StartupProbe indicates that the Pod has successfully initialized.
// +optional
StartupProbe *corev1.Probe `json:"startupProbe,omitempty"`
// Actions that the management system should take in response to container lifecycle events.
// +optional
Lifecycle *corev1.Lifecycle `json:"lifecycle,omitempty"`
// Optional: Path at which the file to which the container's termination message
// +optional
TerminationMessagePath string `json:"terminationMessagePath,omitempty"`
// Indicate how the termination message should be populated. File will use the contents of
// +optional
TerminationMessagePolicy corev1.TerminationMessagePolicy `json:"terminationMessagePolicy,omitempty"`
// Image pull policy.
// +optional
ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
// SecurityContext defines the security options the container should be run with.
// +optional
SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"`
// Whether this container should allocate a buffer for stdin in the container runtime.
// +optional
Stdin bool `json:"stdin,omitempty"`
// StdinOnce default is false
// +optional
StdinOnce bool `json:"stdinOnce,omitempty"`
// TTY default is false.
// +optional
TTY bool `json:"tty,omitempty"`
}
// DevPodWorkspacePodResourceRequirements is a less restrictive corev1.Container.
func (*DevPodWorkspaceContainer) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceContainer) DeepCopy() *DevPodWorkspaceContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceContainer.
func (*DevPodWorkspaceContainer) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceContainer) DeepCopyInto(out *DevPodWorkspaceContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstance ¶
type DevPodWorkspaceInstance struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DevPodWorkspaceInstanceSpec `json:"spec,omitempty"`
Status DevPodWorkspaceInstanceStatus `json:"status,omitempty"`
}
DevPodWorkspaceInstance +k8s:openapi-gen=true
func (*DevPodWorkspaceInstance) DeepCopy ¶
func (in *DevPodWorkspaceInstance) DeepCopy() *DevPodWorkspaceInstance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstance.
func (*DevPodWorkspaceInstance) DeepCopyInto ¶
func (in *DevPodWorkspaceInstance) DeepCopyInto(out *DevPodWorkspaceInstance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspaceInstance) DeepCopyObject ¶
func (in *DevPodWorkspaceInstance) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DevPodWorkspaceInstance) GetAccess ¶
func (a *DevPodWorkspaceInstance) GetAccess() []Access
func (*DevPodWorkspaceInstance) GetConditions ¶
func (a *DevPodWorkspaceInstance) GetConditions() agentstoragev1.Conditions
func (*DevPodWorkspaceInstance) GetOwner ¶
func (a *DevPodWorkspaceInstance) GetOwner() *UserOrTeam
func (*DevPodWorkspaceInstance) SetAccess ¶
func (a *DevPodWorkspaceInstance) SetAccess(access []Access)
func (*DevPodWorkspaceInstance) SetConditions ¶
func (a *DevPodWorkspaceInstance) SetConditions(conditions agentstoragev1.Conditions)
func (*DevPodWorkspaceInstance) SetOwner ¶
func (a *DevPodWorkspaceInstance) SetOwner(userOrTeam *UserOrTeam)
type DevPodWorkspaceInstanceContainerResource ¶ added in v4.3.0
type DevPodWorkspaceInstanceContainerResource struct {
// Name is the name of the container
// +optional
Name string `json:"name,omitempty"`
// Resources is the resources of the container
// +optional
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
}
func (*DevPodWorkspaceInstanceContainerResource) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceInstanceContainerResource) DeepCopy() *DevPodWorkspaceInstanceContainerResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceContainerResource.
func (*DevPodWorkspaceInstanceContainerResource) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceInstanceContainerResource) DeepCopyInto(out *DevPodWorkspaceInstanceContainerResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstanceEvent ¶ added in v4.3.0
type DevPodWorkspaceInstanceEvent struct {
// This should be a short, machine understandable string that gives the reason
// for the transition into the object's current status.
// TODO: provide exact specification for format.
// +optional
Reason string `json:"reason,omitempty" protobuf:"bytes,3,opt,name=reason"`
// A human-readable description of the status of this operation.
// TODO: decide on maximum length.
// +optional
Message string `json:"message,omitempty" protobuf:"bytes,4,opt,name=message"`
// The time at which the most recent occurrence of this event was recorded.
// +optional
LastTimestamp metav1.Time `json:"lastTimestamp,omitempty" protobuf:"bytes,7,opt,name=lastTimestamp"`
// Type of this event (Normal, Warning), new types could be added in the future
// +optional
Type string `json:"type,omitempty" protobuf:"bytes,9,opt,name=type"`
}
func (*DevPodWorkspaceInstanceEvent) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceInstanceEvent) DeepCopy() *DevPodWorkspaceInstanceEvent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceEvent.
func (*DevPodWorkspaceInstanceEvent) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceInstanceEvent) DeepCopyInto(out *DevPodWorkspaceInstanceEvent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstanceKubernetesStatus ¶ added in v4.3.0
type DevPodWorkspaceInstanceKubernetesStatus struct {
// Last time the condition transitioned from one status to another.
// +required
LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
// PodStatus is the status of the pod that is running the workspace
// +optional
PodStatus *DevPodWorkspaceInstancePodStatus `json:"podStatus,omitempty"`
// PersistentVolumeClaimStatus is the pvc that is used to store the workspace
// +optional
PersistentVolumeClaimStatus *DevPodWorkspaceInstancePersistentVolumeClaimStatus `json:"persistentVolumeClaimStatus,omitempty"`
}
func (*DevPodWorkspaceInstanceKubernetesStatus) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceInstanceKubernetesStatus) DeepCopy() *DevPodWorkspaceInstanceKubernetesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceKubernetesStatus.
func (*DevPodWorkspaceInstanceKubernetesStatus) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceInstanceKubernetesStatus) DeepCopyInto(out *DevPodWorkspaceInstanceKubernetesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstanceList ¶
type DevPodWorkspaceInstanceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DevPodWorkspaceInstance `json:"items"`
}
DevPodWorkspaceInstanceList contains a list of DevPodWorkspaceInstance objects
func (*DevPodWorkspaceInstanceList) DeepCopy ¶
func (in *DevPodWorkspaceInstanceList) DeepCopy() *DevPodWorkspaceInstanceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceList.
func (*DevPodWorkspaceInstanceList) DeepCopyInto ¶
func (in *DevPodWorkspaceInstanceList) DeepCopyInto(out *DevPodWorkspaceInstanceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspaceInstanceList) DeepCopyObject ¶
func (in *DevPodWorkspaceInstanceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DevPodWorkspaceInstancePersistentVolumeClaimStatus ¶ added in v4.3.0
type DevPodWorkspaceInstancePersistentVolumeClaimStatus struct {
// phase represents the current phase of PersistentVolumeClaim.
// +optional
Phase corev1.PersistentVolumeClaimPhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase,casttype=PersistentVolumeClaimPhase"`
// capacity represents the actual resources of the underlying volume.
// +optional
Capacity corev1.ResourceList `json:"capacity,omitempty" protobuf:"bytes,3,rep,name=capacity,casttype=ResourceList,castkey=ResourceName"`
// conditions is the current Condition of persistent volume claim. If underlying persistent volume is being
// resized then the Condition will be set to 'Resizing'.
// +optional
// +patchMergeKey=type
// +patchStrategy=merge
// +listType=map
// +listMapKey=type
Conditions []corev1.PersistentVolumeClaimCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,4,rep,name=conditions"`
// Events are the events of the pod that is running the workspace. This will only be filled if the persistent volume claim is not bound.
// +optional
Events []DevPodWorkspaceInstanceEvent `json:"events,omitempty"`
}
func (*DevPodWorkspaceInstancePersistentVolumeClaimStatus) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceInstancePersistentVolumeClaimStatus) DeepCopy() *DevPodWorkspaceInstancePersistentVolumeClaimStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstancePersistentVolumeClaimStatus.
func (*DevPodWorkspaceInstancePersistentVolumeClaimStatus) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceInstancePersistentVolumeClaimStatus) DeepCopyInto(out *DevPodWorkspaceInstancePersistentVolumeClaimStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstancePodStatus ¶ added in v4.3.0
type DevPodWorkspaceInstancePodStatus struct {
// The phase of a Pod is a simple, high-level summary of where the Pod is in its lifecycle.
// The conditions array, the reason and message fields, and the individual container status
// arrays contain more detail about the pod's status.
// There are five possible phase values:
//
// Pending: The pod has been accepted by the Kubernetes system, but one or more of the
// container images has not been created. This includes time before being scheduled as
// well as time spent downloading images over the network, which could take a while.
// Running: The pod has been bound to a node, and all of the containers have been created.
// At least one container is still running, or is in the process of starting or restarting.
// Succeeded: All containers in the pod have terminated in success, and will not be restarted.
// Failed: All containers in the pod have terminated, and at least one container has
// terminated in failure. The container either exited with non-zero status or was terminated
// by the system.
// Unknown: For some reason the state of the pod could not be obtained, typically due to an
// error in communicating with the host of the pod.
//
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-phase
// +optional
Phase corev1.PodPhase `json:"phase,omitempty" protobuf:"bytes,1,opt,name=phase,casttype=PodPhase"`
// Current service state of pod.
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-conditions
// +optional
// +patchMergeKey=type
// +patchStrategy=merge
// +listType=map
// +listMapKey=type
Conditions []corev1.PodCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,2,rep,name=conditions"`
// A human readable message indicating details about why the pod is in this condition.
// +optional
Message string `json:"message,omitempty" protobuf:"bytes,3,opt,name=message"`
// A brief CamelCase message indicating details about why the pod is in this state.
// e.g. 'Evicted'
// +optional
Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"`
// Statuses of init containers in this pod. The most recent successful non-restartable
// init container will have ready = true, the most recently started container will have
// startTime set.
// Each init container in the pod should have at most one status in this list,
// and all statuses should be for containers in the pod.
// However this is not enforced.
// If a status for a non-existent container is present in the list, or the list has duplicate names,
// the behavior of various Kubernetes components is not defined and those statuses might be
// ignored.
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-and-container-status
// +listType=atomic
InitContainerStatuses []corev1.ContainerStatus `json:"initContainerStatuses,omitempty" protobuf:"bytes,10,rep,name=initContainerStatuses"`
// Statuses of containers in this pod.
// Each container in the pod should have at most one status in this list,
// and all statuses should be for containers in the pod.
// However this is not enforced.
// If a status for a non-existent container is present in the list, or the list has duplicate names,
// the behavior of various Kubernetes components is not defined and those statuses might be
// ignored.
// More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#pod-and-container-status
// +optional
// +listType=atomic
ContainerStatuses []corev1.ContainerStatus `json:"containerStatuses,omitempty" protobuf:"bytes,8,rep,name=containerStatuses"`
// NodeName is the name of the node that is running the workspace
// +optional
NodeName string `json:"nodeName,omitempty"`
// Events are the events of the pod that is running the workspace. This will only be filled if the pod is not running.
// +optional
Events []DevPodWorkspaceInstanceEvent `json:"events,omitempty"`
// ContainerResources are the resources of the containers that are running the workspace
// +optional
ContainerResources []DevPodWorkspaceInstanceContainerResource `json:"containerResources,omitempty"`
// ContainerMetrics are the metrics of the pod that is running the workspace
// +optional
ContainerMetrics []metricsv1beta1.ContainerMetrics `json:"containerMetrics,omitempty"`
}
func (*DevPodWorkspaceInstancePodStatus) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceInstancePodStatus) DeepCopy() *DevPodWorkspaceInstancePodStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstancePodStatus.
func (*DevPodWorkspaceInstancePodStatus) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceInstancePodStatus) DeepCopyInto(out *DevPodWorkspaceInstancePodStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstanceSpec ¶
type DevPodWorkspaceInstanceSpec struct {
// DisplayName is the name that should be displayed in the UI
// +optional
DisplayName string `json:"displayName,omitempty"`
// Description describes a DevPod machine instance
// +optional
Description string `json:"description,omitempty"`
// Owner holds the owner of this object
// +optional
Owner *UserOrTeam `json:"owner,omitempty"`
// PresetRef holds the DevPodWorkspacePreset template reference
// +optional
PresetRef *PresetRef `json:"presetRef,omitempty"`
// TemplateRef holds the DevPod machine template reference
// +optional
TemplateRef *TemplateRef `json:"templateRef,omitempty"`
// EnvironmentRef is the reference to DevPodEnvironmentTemplate that should be used
// +optional
EnvironmentRef *EnvironmentRef `json:"environmentRef,omitempty"`
// Template is the inline template to use for DevPod machine creation. This is mutually
// exclusive with templateRef.
// +optional
Template *DevPodWorkspaceTemplateDefinition `json:"template,omitempty"`
// Target is the reference to the cluster holding this workspace
// +optional
Target WorkspaceTarget `json:"target,omitempty"`
// Deprecated: Use TargetRef instead
// RunnerRef is the reference to the runner holding this workspace
// +optional
RunnerRef RunnerRef `json:"runnerRef,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"`
// Access to the DevPod machine instance object itself
// +optional
Access []Access `json:"access,omitempty"`
// PreventWakeUpOnConnection is used to prevent workspace that uses sleep mode from waking up on incomming ssh connection.
// +optional
PreventWakeUpOnConnection bool `json:"preventWakeUpOnConnection,omitempty"`
}
func (*DevPodWorkspaceInstanceSpec) DeepCopy ¶
func (in *DevPodWorkspaceInstanceSpec) DeepCopy() *DevPodWorkspaceInstanceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceSpec.
func (*DevPodWorkspaceInstanceSpec) DeepCopyInto ¶
func (in *DevPodWorkspaceInstanceSpec) DeepCopyInto(out *DevPodWorkspaceInstanceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstanceStatus ¶
type DevPodWorkspaceInstanceStatus struct {
// ResolvedTarget is the resolved target of the workspace
// +optional
ResolvedTarget WorkspaceResolvedTarget `json:"resolvedTarget,omitempty"`
// LastWorkspaceStatus is the last workspace status reported by the runner.
// +optional
LastWorkspaceStatus WorkspaceStatus `json:"lastWorkspaceStatus,omitempty"`
// Phase describes the current phase the DevPod machine 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 DevPod machine is in the current
// phase
// +optional
Message string `json:"message,omitempty"`
// Conditions holds several conditions the DevPod machine might be in
// +optional
Conditions agentstoragev1.Conditions `json:"conditions,omitempty"`
// Instance is the template rendered with all the parameters
// +optional
Instance *DevPodWorkspaceTemplateDefinition `json:"instance,omitempty"`
// IgnoreReconciliation ignores reconciliation for this object
// +optional
IgnoreReconciliation bool `json:"ignoreReconciliation,omitempty"`
// Kubernetes is the status of the workspace on kubernetes
// +optional
Kubernetes *DevPodWorkspaceInstanceKubernetesStatus `json:"kubernetes,omitempty"`
}
func (*DevPodWorkspaceInstanceStatus) DeepCopy ¶
func (in *DevPodWorkspaceInstanceStatus) DeepCopy() *DevPodWorkspaceInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceStatus.
func (*DevPodWorkspaceInstanceStatus) DeepCopyInto ¶
func (in *DevPodWorkspaceInstanceStatus) DeepCopyInto(out *DevPodWorkspaceInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceInstanceTemplateDefinition ¶
type DevPodWorkspaceInstanceTemplateDefinition struct {
// The workspace instance metadata
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
TemplateMetadata `json:"metadata,omitempty"`
}
func (*DevPodWorkspaceInstanceTemplateDefinition) DeepCopy ¶
func (in *DevPodWorkspaceInstanceTemplateDefinition) DeepCopy() *DevPodWorkspaceInstanceTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceInstanceTemplateDefinition.
func (*DevPodWorkspaceInstanceTemplateDefinition) DeepCopyInto ¶
func (in *DevPodWorkspaceInstanceTemplateDefinition) DeepCopyInto(out *DevPodWorkspaceInstanceTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceKubernetesSpec ¶ added in v4.3.0
type DevPodWorkspaceKubernetesSpec struct {
// Pod holds the definition for workspace pod.
//
// Defaults will be applied for fields that aren't specified.
// +optional
Pod *DevPodWorkspacePodTemplate `json:"pod,omitempty"`
// VolumeClaim holds the definition for the main workspace persistent volume.
// This volume is guaranteed to exist for the lifespan of the workspace.
//
// Defaults will be applied for fields that aren't specified.
// +optional
VolumeClaim *DevPodWorkspaceVolumeClaimTemplate `json:"volumeClaim,omitempty"`
// PodTimeout specifies a maximum duration to wait for the workspace pod to start up before failing.
// Default: 10m
// +optional
PodTimeout string `json:"podTimeout,omitempty"`
// NodeArchitecture specifies the node architecture the workspace image will be built for.
// Only necessary if you need to build workspace images on the fly in the kubernetes cluster and your cluster is mixed architecture.
// +optional
NodeArchitecure string `json:"nodeArchitecture,omitempty"`
// SpaceTemplateRef is a reference to the space that should get created for this DevPod.
// If this is specified, the kubernetes provider will be selected automatically.
// +optional
SpaceTemplateRef *TemplateRef `json:"spaceTemplateRef,omitempty"`
// SpaceTemplate is the inline template for a space that should get created for this DevPod.
// If this is specified, the kubernetes provider will be selected automatically.
// +optional
SpaceTemplate *SpaceTemplateDefinition `json:"spaceTemplate,omitempty"`
// VirtualClusterTemplateRef is a reference to the virtual cluster that should get created for this DevPod.
// If this is specified, the kubernetes provider will be selected automatically.
// +optional
VirtualClusterTemplateRef *TemplateRef `json:"virtualClusterTemplateRef,omitempty"`
// VirtualClusterTemplate is the inline template for a virtual cluster that should get created for this DevPod.
// If this is specified, the kubernetes provider will be selected automatically.
// +optional
VirtualClusterTemplate *VirtualClusterTemplateDefinition `json:"virtualClusterTemplate,omitempty"`
}
func (*DevPodWorkspaceKubernetesSpec) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceKubernetesSpec) DeepCopy() *DevPodWorkspaceKubernetesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceKubernetesSpec.
func (*DevPodWorkspaceKubernetesSpec) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceKubernetesSpec) DeepCopyInto(out *DevPodWorkspaceKubernetesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspacePodTemplate ¶ added in v4.3.0
type DevPodWorkspacePodTemplate struct {
// The pods metadata
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
TemplateMetadata `json:"metadata,omitempty"`
Spec DevPodWorkspacePodTemplateSpec `json:"spec,omitempty"`
}
DevPodWorkspacePodTemplate is a less restrictive PodTemplate
func (*DevPodWorkspacePodTemplate) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspacePodTemplate) DeepCopy() *DevPodWorkspacePodTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePodTemplate.
func (*DevPodWorkspacePodTemplate) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspacePodTemplate) DeepCopyInto(out *DevPodWorkspacePodTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspacePodTemplateSpec ¶ added in v4.3.0
type DevPodWorkspacePodTemplateSpec struct {
// List of volumes that can be mounted by containers belonging to the pod.
// +optional
Volumes []corev1.Volume `json:"volumes,omitempty"`
// List of initialization containers belonging to the pod.
// +optional
InitContainers []DevPodWorkspaceContainer `json:"initContainers,omitempty"`
// List of containers belonging to the pod.
// +optional
Containers []DevPodWorkspaceContainer `json:"containers,omitempty"`
// Restart policy for all containers within the pod.
// +optional
RestartPolicy corev1.RestartPolicy `json:"restartPolicy,omitempty"`
// Optional duration in seconds the pod needs to terminate gracefully. May be decreased in delete request.
// +optional
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
// Optional duration in seconds the pod may be active on the node relative to
// +optional
ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty"`
// Set DNS policy for the pod.
// +optional
DNSPolicy corev1.DNSPolicy `json:"dnsPolicy,omitempty"`
// NodeSelector is a selector which must be true for the pod to fit on a node.
// +optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// ServiceAccountName is the name of the ServiceAccount to use to run this pod.
// +optional
ServiceAccountName string `json:"serviceAccountName,omitempty"`
// AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.
// +optional
AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty"`
// NodeName indicates in which node this pod is scheduled.
// +optional
NodeName string `json:"nodeName,omitempty"`
// Host networking requested for this pod. Use the host's network namespace.
// +optional
HostNetwork bool `json:"hostNetwork,omitempty"`
// Use the host's pid namespace.
// +optional
HostPID bool `json:"hostPID,omitempty"`
// Use the host's ipc namespace.
// +optional
HostIPC bool `json:"hostIPC,omitempty"`
// +optional
ShareProcessNamespace *bool `json:"shareProcessNamespace,omitempty"`
// SecurityContext holds pod-level security attributes and common container settings.
// +optional
SecurityContext *corev1.PodSecurityContext `json:"securityContext,omitempty"`
// ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec.
// +optional
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
// Specifies the hostname of the Pod
// +optional
Hostname string `json:"hostname,omitempty"`
// If specified, the fully qualified Pod hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>".
// +optional
Subdomain string `json:"subdomain,omitempty"`
// If specified, the pod's scheduling constraints
// +optional
Affinity *corev1.Affinity `json:"affinity,omitempty"`
// If specified, the pod will be dispatched by specified scheduler.
// If not specified, the pod will be dispatched by default scheduler.
// +optional
SchedulerName string `json:"schedulerName,omitempty"`
// If specified, the pod's tolerations.
// +optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts
// +optional
HostAliases []corev1.HostAlias `json:"hostAliases,omitempty"`
// If specified, indicates the pod's priority.
// +optional
PriorityClassName string `json:"priorityClassName,omitempty"`
// +optional
Priority *int32 `json:"priority,omitempty"`
// Specifies the DNS parameters of a pod.
// +optional
DNSConfig *corev1.PodDNSConfig `json:"dnsConfig,omitempty"`
// If specified, all readiness gates will be evaluated for pod readiness.
// +optional
ReadinessGates []corev1.PodReadinessGate `json:"readinessGates,omitempty"`
// RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used to run this pod
// +optional
RuntimeClassName *string `json:"runtimeClassName,omitempty"`
// EnableServiceLinks indicates whether information about services should be injected into pod's
// environment variables, matching the syntax of Docker links.
// +optional
EnableServiceLinks *bool `json:"enableServiceLinks,omitempty"`
// PreemptionPolicy is the Policy for preempting pods with lower priority.
// +optional
PreemptionPolicy *corev1.PreemptionPolicy `json:"preemptionPolicy,omitempty"`
// Overhead represents the resource overhead associated with running a pod for a given RuntimeClass.
// +optional
Overhead corev1.ResourceList `json:"overhead,omitempty"`
// TopologySpreadConstraints describes how a group of pods ought to spread across topology domains.
// +optional
TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
// If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default).
// In Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname).
// In Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters to FQDN.
// +optional
SetHostnameAsFQDN *bool `json:"setHostnameAsFQDN,omitempty"`
// Specifies the OS of the containers in the pod.
// +optional
OS *corev1.PodOS `json:"os,omitempty"`
// Use the host's user namespace.
// +optional
HostUsers *bool `json:"hostUsers,omitempty"`
// SchedulingGates is an opaque list of values that if specified will block scheduling the pod.
// If schedulingGates is not empty, the pod will stay in the SchedulingGated state and the
// scheduler will not attempt to schedule the pod.
// +optional
SchedulingGates []corev1.PodSchedulingGate `json:"schedulingGates,omitempty"`
// ResourceClaims defines which ResourceClaims must be allocated
// and reserved before the Pod is allowed to start. The resources
// will be made available to those containers which consume them
// by name.
// +optional
ResourceClaims []corev1.PodResourceClaim `json:"resourceClaims,omitempty"`
// Resources is the total amount of CPU and Memory resources required by all
// containers in the pod. It supports specifying Requests and Limits for
// "cpu" and "memory" resource names only. ResourceClaims are not supported.
// +optional
Resources *DevPodWorkspaceResourceRequirements `json:"resources,omitempty"`
}
DevPodWorkspacePodTemplateSpec is a less restrictive PodSpec
func (*DevPodWorkspacePodTemplateSpec) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspacePodTemplateSpec) DeepCopy() *DevPodWorkspacePodTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePodTemplateSpec.
func (*DevPodWorkspacePodTemplateSpec) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspacePodTemplateSpec) DeepCopyInto(out *DevPodWorkspacePodTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspacePreset ¶ added in v4.2.0
type DevPodWorkspacePreset struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DevPodWorkspacePresetSpec `json:"spec,omitempty"`
Status DevPodWorkspacePresetStatus `json:"status,omitempty"`
}
DevPodWorkspacePreset +k8s:openapi-gen=true
func (*DevPodWorkspacePreset) DeepCopy ¶ added in v4.2.0
func (in *DevPodWorkspacePreset) DeepCopy() *DevPodWorkspacePreset
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePreset.
func (*DevPodWorkspacePreset) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodWorkspacePreset) DeepCopyInto(out *DevPodWorkspacePreset)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspacePreset) DeepCopyObject ¶ added in v4.2.0
func (in *DevPodWorkspacePreset) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DevPodWorkspacePreset) GetAccess ¶ added in v4.2.0
func (a *DevPodWorkspacePreset) GetAccess() []Access
func (*DevPodWorkspacePreset) GetOwner ¶ added in v4.2.0
func (a *DevPodWorkspacePreset) GetOwner() *UserOrTeam
func (*DevPodWorkspacePreset) SetAccess ¶ added in v4.2.0
func (a *DevPodWorkspacePreset) SetAccess(access []Access)
func (*DevPodWorkspacePreset) SetOwner ¶ added in v4.2.0
func (a *DevPodWorkspacePreset) SetOwner(userOrTeam *UserOrTeam)
type DevPodWorkspacePresetList ¶ added in v4.2.0
type DevPodWorkspacePresetList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DevPodWorkspacePreset `json:"items"`
}
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object DevPodWorkspacePresetList contains a list of DevPodWorkspacePreset objects
func (*DevPodWorkspacePresetList) DeepCopy ¶ added in v4.2.0
func (in *DevPodWorkspacePresetList) DeepCopy() *DevPodWorkspacePresetList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePresetList.
func (*DevPodWorkspacePresetList) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodWorkspacePresetList) DeepCopyInto(out *DevPodWorkspacePresetList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspacePresetList) DeepCopyObject ¶ added in v4.2.0
func (in *DevPodWorkspacePresetList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DevPodWorkspacePresetSource ¶ added in v4.2.0
type DevPodWorkspacePresetSource struct {
// Git stores path to git repo to use as workspace source
// +optional
Git string `json:"git,omitempty"`
// Image stores container image to use as workspace source
// +optional
Image string `json:"image,omitempty"`
}
func (*DevPodWorkspacePresetSource) DeepCopy ¶ added in v4.2.0
func (in *DevPodWorkspacePresetSource) DeepCopy() *DevPodWorkspacePresetSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePresetSource.
func (*DevPodWorkspacePresetSource) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodWorkspacePresetSource) DeepCopyInto(out *DevPodWorkspacePresetSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspacePresetSpec ¶ added in v4.2.0
type DevPodWorkspacePresetSpec struct {
// DisplayName is the name that should be displayed in the UI
// +optional
DisplayName string `json:"displayName,omitempty"`
// Source stores inline path of project source
Source *DevPodWorkspacePresetSource `json:"source"`
// InfrastructureRef stores reference to DevPodWorkspaceTemplate to use
InfrastructureRef *TemplateRef `json:"infrastructureRef"`
// EnvironmentRef stores reference to DevPodEnvironmentTemplate
// +optional
EnvironmentRef *EnvironmentRef `json:"environmentRef,omitempty"`
// UseProjectGitCredentials specifies if the project git credentials should be used instead of local ones for this environment
// +optional
UseProjectGitCredentials bool `json:"useProjectGitCredentials,omitempty"`
// Owner holds the owner of this object
// +optional
Owner *UserOrTeam `json:"owner,omitempty"`
// Access to the DevPod machine instance object itself
// +optional
Access []Access `json:"access,omitempty"`
// Versions are different versions of the template that can be referenced as well
// +optional
Versions []DevPodWorkspacePresetVersion `json:"versions,omitempty"`
}
func (*DevPodWorkspacePresetSpec) DeepCopy ¶ added in v4.2.0
func (in *DevPodWorkspacePresetSpec) DeepCopy() *DevPodWorkspacePresetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePresetSpec.
func (*DevPodWorkspacePresetSpec) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodWorkspacePresetSpec) DeepCopyInto(out *DevPodWorkspacePresetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspacePresetStatus ¶ added in v4.2.0
type DevPodWorkspacePresetStatus struct {
}
DevPodWorkspacePresetStatus holds the status
func (*DevPodWorkspacePresetStatus) DeepCopy ¶ added in v4.2.0
func (in *DevPodWorkspacePresetStatus) DeepCopy() *DevPodWorkspacePresetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePresetStatus.
func (*DevPodWorkspacePresetStatus) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodWorkspacePresetStatus) DeepCopyInto(out *DevPodWorkspacePresetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspacePresetVersion ¶ added in v4.2.0
type DevPodWorkspacePresetVersion struct {
// Version is the version. Needs to be in X.X.X format.
// +optional
Version string `json:"version,omitempty"`
// Source stores inline path of project source
// +optional
Source *DevPodWorkspacePresetSource `json:"source,omitempty"`
// InfrastructureRef stores reference to DevPodWorkspaceTemplate to use
// +optional
InfrastructureRef *TemplateRef `json:"infrastructureRef,omitempty"`
// EnvironmentRef stores reference to DevPodEnvironmentTemplate
// +optional
EnvironmentRef *EnvironmentRef `json:"environmentRef,omitempty"`
}
func (*DevPodWorkspacePresetVersion) DeepCopy ¶ added in v4.2.0
func (in *DevPodWorkspacePresetVersion) DeepCopy() *DevPodWorkspacePresetVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspacePresetVersion.
func (*DevPodWorkspacePresetVersion) DeepCopyInto ¶ added in v4.2.0
func (in *DevPodWorkspacePresetVersion) DeepCopyInto(out *DevPodWorkspacePresetVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceProvider ¶
type DevPodWorkspaceProvider struct {
// Name is the name of the provider. This can also be an url.
// +optional
Name string `json:"name,omitempty"`
// Options are the provider option values
// +optional
Options map[string]DevPodProviderOption `json:"options,omitempty"`
// Env are environment options to set when using the provider.
// +optional
Env map[string]DevPodProviderOption `json:"env,omitempty"`
}
func (*DevPodWorkspaceProvider) DeepCopy ¶
func (in *DevPodWorkspaceProvider) DeepCopy() *DevPodWorkspaceProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceProvider.
func (*DevPodWorkspaceProvider) DeepCopyInto ¶
func (in *DevPodWorkspaceProvider) DeepCopyInto(out *DevPodWorkspaceProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceResourceRequirements ¶ added in v4.3.0
type DevPodWorkspaceResourceRequirements struct {
// Limits describes the maximum amount of compute resources allowed.
// +optional
Limits map[corev1.ResourceName]string `json:"limits,omitempty"`
// Requests describes the minimum amount of compute resources required.
// +optional
Requests map[corev1.ResourceName]string `json:"requests,omitempty"`
// Claims lists the names of resources, defined in spec.resourceClaims,
// that are used by this container.
// +optional
Claims []corev1.ResourceClaim `json:"claims,omitempty"`
}
DevPodWorkspacePodResourceRequirements are less restrictive corev1.ResourceRequirements.
func (*DevPodWorkspaceResourceRequirements) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceResourceRequirements) DeepCopy() *DevPodWorkspaceResourceRequirements
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceResourceRequirements.
func (*DevPodWorkspaceResourceRequirements) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceResourceRequirements) DeepCopyInto(out *DevPodWorkspaceResourceRequirements)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceTemplate ¶
type DevPodWorkspaceTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DevPodWorkspaceTemplateSpec `json:"spec,omitempty"`
Status DevPodWorkspaceTemplateStatus `json:"status,omitempty"`
}
DevPodWorkspaceTemplate holds the DevPodWorkspaceTemplate information +k8s:openapi-gen=true
func (*DevPodWorkspaceTemplate) DeepCopy ¶
func (in *DevPodWorkspaceTemplate) DeepCopy() *DevPodWorkspaceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceTemplate.
func (*DevPodWorkspaceTemplate) DeepCopyInto ¶
func (in *DevPodWorkspaceTemplate) DeepCopyInto(out *DevPodWorkspaceTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspaceTemplate) DeepCopyObject ¶
func (in *DevPodWorkspaceTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DevPodWorkspaceTemplate) GetAccess ¶
func (a *DevPodWorkspaceTemplate) GetAccess() []Access
func (*DevPodWorkspaceTemplate) GetOwner ¶
func (a *DevPodWorkspaceTemplate) GetOwner() *UserOrTeam
func (*DevPodWorkspaceTemplate) GetVersions ¶
func (a *DevPodWorkspaceTemplate) GetVersions() []VersionAccessor
func (*DevPodWorkspaceTemplate) SetAccess ¶
func (a *DevPodWorkspaceTemplate) SetAccess(access []Access)
func (*DevPodWorkspaceTemplate) SetOwner ¶
func (a *DevPodWorkspaceTemplate) SetOwner(userOrTeam *UserOrTeam)
type DevPodWorkspaceTemplateDefinition ¶
type DevPodWorkspaceTemplateDefinition struct {
// Kubernetes holds the definition for kubernetes based workspaces
Kubernetes *DevPodWorkspaceKubernetesSpec `json:"kubernetes,omitempty"`
// WorkspaceEnv are environment variables that should be available within the created workspace.
// +optional
WorkspaceEnv map[string]DevPodProviderOption `json:"workspaceEnv,omitempty"`
// InstanceTemplate holds the workspace instance template
// +optional
InstanceTemplate DevPodWorkspaceInstanceTemplateDefinition `json:"instanceTemplate,omitempty"`
// CredentialForwarding specifies controls for how workspaces created by this template forward credentials into the workspace
// +optional
CredentialForwarding *CredentialForwarding `json:"credentialForwarding,omitempty"`
// Provider holds the legacy VM provider configuration
//
// Deprecated: use fields on template instead
// +optional
Provider *DevPodWorkspaceProvider `json:"provider,omitempty"`
}
func (*DevPodWorkspaceTemplateDefinition) DeepCopy ¶
func (in *DevPodWorkspaceTemplateDefinition) DeepCopy() *DevPodWorkspaceTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceTemplateDefinition.
func (*DevPodWorkspaceTemplateDefinition) DeepCopyInto ¶
func (in *DevPodWorkspaceTemplateDefinition) DeepCopyInto(out *DevPodWorkspaceTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceTemplateList ¶
type DevPodWorkspaceTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DevPodWorkspaceTemplate `json:"items"`
}
DevPodWorkspaceTemplateList contains a list of DevPodWorkspaceTemplate
func (*DevPodWorkspaceTemplateList) DeepCopy ¶
func (in *DevPodWorkspaceTemplateList) DeepCopy() *DevPodWorkspaceTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceTemplateList.
func (*DevPodWorkspaceTemplateList) DeepCopyInto ¶
func (in *DevPodWorkspaceTemplateList) DeepCopyInto(out *DevPodWorkspaceTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspaceTemplateList) DeepCopyObject ¶
func (in *DevPodWorkspaceTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DevPodWorkspaceTemplateSpec ¶
type DevPodWorkspaceTemplateSpec 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"`
// Parameters define additional app parameters that will set provider values
// +optional
Parameters []AppParameter `json:"parameters,omitempty"`
// Template holds the DevPod workspace template
Template DevPodWorkspaceTemplateDefinition `json:"template,omitempty"`
// Versions are different versions of the template that can be referenced as well
// +optional
Versions []DevPodWorkspaceTemplateVersion `json:"versions,omitempty"`
// Access holds the access rights for users and teams
// +optional
Access []Access `json:"access,omitempty"`
}
DevPodWorkspaceTemplateSpec holds the specification
func (*DevPodWorkspaceTemplateSpec) DeepCopy ¶
func (in *DevPodWorkspaceTemplateSpec) DeepCopy() *DevPodWorkspaceTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceTemplateSpec.
func (*DevPodWorkspaceTemplateSpec) DeepCopyInto ¶
func (in *DevPodWorkspaceTemplateSpec) DeepCopyInto(out *DevPodWorkspaceTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceTemplateStatus ¶
type DevPodWorkspaceTemplateStatus struct {
}
DevPodWorkspaceTemplateStatus holds the status
func (*DevPodWorkspaceTemplateStatus) DeepCopy ¶
func (in *DevPodWorkspaceTemplateStatus) DeepCopy() *DevPodWorkspaceTemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceTemplateStatus.
func (*DevPodWorkspaceTemplateStatus) DeepCopyInto ¶
func (in *DevPodWorkspaceTemplateStatus) DeepCopyInto(out *DevPodWorkspaceTemplateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevPodWorkspaceTemplateVersion ¶
type DevPodWorkspaceTemplateVersion struct {
// Template holds the DevPod template
// +optional
Template DevPodWorkspaceTemplateDefinition `json:"template,omitempty"`
// Parameters define additional app parameters that will set provider 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 (*DevPodWorkspaceTemplateVersion) DeepCopy ¶
func (in *DevPodWorkspaceTemplateVersion) DeepCopy() *DevPodWorkspaceTemplateVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceTemplateVersion.
func (*DevPodWorkspaceTemplateVersion) DeepCopyInto ¶
func (in *DevPodWorkspaceTemplateVersion) DeepCopyInto(out *DevPodWorkspaceTemplateVersion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DevPodWorkspaceTemplateVersion) GetVersion ¶
func (a *DevPodWorkspaceTemplateVersion) GetVersion() string
type DevPodWorkspaceVolumeClaimTemplate ¶ added in v4.3.0
type DevPodWorkspaceVolumeClaimTemplate struct {
// The pods metadata
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
TemplateMetadata `json:"metadata,omitempty"`
Spec corev1.PersistentVolumeClaimSpec `json:"spec,omitempty"`
}
func (*DevPodWorkspaceVolumeClaimTemplate) DeepCopy ¶ added in v4.3.0
func (in *DevPodWorkspaceVolumeClaimTemplate) DeepCopy() *DevPodWorkspaceVolumeClaimTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodWorkspaceVolumeClaimTemplate.
func (*DevPodWorkspaceVolumeClaimTemplate) DeepCopyInto ¶ added in v4.3.0
func (in *DevPodWorkspaceVolumeClaimTemplate) DeepCopyInto(out *DevPodWorkspaceVolumeClaimTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DockerCredentialForwarding ¶
type DockerCredentialForwarding struct {
// Disabled prevents all workspaces created by this template from forwarding credentials into the workspace
// +optional
Disabled bool `json:"disabled,omitempty"`
}
func (*DockerCredentialForwarding) DeepCopy ¶
func (in *DockerCredentialForwarding) DeepCopy() *DockerCredentialForwarding
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DockerCredentialForwarding.
func (*DockerCredentialForwarding) DeepCopyInto ¶
func (in *DockerCredentialForwarding) DeepCopyInto(out *DockerCredentialForwarding)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
type EnvironmentRef ¶
type EnvironmentRef struct {
// Name is the name of DevPodEnvironmentTemplate this references
Name string `json:"name"`
// Version is the version of DevPodEnvironmentTemplate this references
// +optional
Version string `json:"version,omitempty"`
}
func (*EnvironmentRef) DeepCopy ¶
func (in *EnvironmentRef) DeepCopy() *EnvironmentRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvironmentRef.
func (*EnvironmentRef) DeepCopyInto ¶
func (in *EnvironmentRef) DeepCopyInto(out *EnvironmentRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitCloneStrategy ¶
type GitCloneStrategy string
+enum
const ( FullCloneStrategy GitCloneStrategy = "" BloblessCloneStrategy GitCloneStrategy = "blobless" TreelessCloneStrategy GitCloneStrategy = "treeless" ShallowCloneStrategy GitCloneStrategy = "shallow" )
WARN: Need to match https://github.com/loft-sh/devpod/pkg/git/clone.go
type GitCredentialForwarding ¶
type GitCredentialForwarding struct {
// Disabled prevents all workspaces created by this template from forwarding credentials into the workspace
// +optional
Disabled bool `json:"disabled,omitempty"`
}
func (*GitCredentialForwarding) DeepCopy ¶
func (in *GitCredentialForwarding) DeepCopy() *GitCredentialForwarding
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCredentialForwarding.
func (*GitCredentialForwarding) DeepCopyInto ¶
func (in *GitCredentialForwarding) DeepCopyInto(out *GitCredentialForwarding)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitEnvironmentTemplate ¶
type GitEnvironmentTemplate struct {
// Repository stores repository URL for Git environment spec source
Repository string `json:"repository"`
// Revision stores revision to checkout in repository
// +optional
Revision string `json:"revision,omitempty"`
// SubPath stores subpath within Repositor where environment spec is
// +optional
SubPath string `json:"subpath,omitempty"`
// UseProjectGitCredentials specifies if the project git credentials should be used instead of local ones for this environment
// +optional
UseProjectGitCredentials bool `json:"useProjectGitCredentials,omitempty"`
}
GitEnvironmentTemplate stores configuration of Git environment template source
func (*GitEnvironmentTemplate) DeepCopy ¶
func (in *GitEnvironmentTemplate) DeepCopy() *GitEnvironmentTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitEnvironmentTemplate.
func (*GitEnvironmentTemplate) DeepCopyInto ¶
func (in *GitEnvironmentTemplate) DeepCopyInto(out *GitEnvironmentTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitProjectCredentials ¶ added in v4.3.0
type GitProjectCredentials struct {
// Token defines the credentials to use for authentication,
// this is a base64 encoded string.
// +optional
Token string `json:"token,omitempty"`
// TokenSecretRef defines the project secret to use as credentials for authentication.
// Will be used if `Token` is not provided.
// +optional
TokenProjectSecretRef *corev1.SecretKeySelector `json:"tokenSecretRef,omitempty"`
}
func (*GitProjectCredentials) DeepCopy ¶ added in v4.3.0
func (in *GitProjectCredentials) DeepCopy() *GitProjectCredentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitProjectCredentials.
func (*GitProjectCredentials) DeepCopyInto ¶ added in v4.3.0
func (in *GitProjectCredentials) DeepCopyInto(out *GitProjectCredentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitProjectSpec ¶
type GitProjectSpec struct {
// HTTP defines additional http related settings like credentials, to be
// specified as base64 encoded strings.
// +optional
HTTP *GitProjectCredentials `json:"http,omitempty"`
// SSH defines additional ssh related settings like private keys, to be
// specified as base64 encoded strings.
// +optional
SSH *GitProjectCredentials `json:"ssh,omitempty"`
}
func (*GitProjectSpec) DeepCopy ¶
func (in *GitProjectSpec) DeepCopy() *GitProjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitProjectSpec.
func (*GitProjectSpec) DeepCopyInto ¶
func (in *GitProjectSpec) DeepCopyInto(out *GitProjectSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmChart.
func (*HelmChart) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmTask.
func (*HelmTask) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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 ¶
func (in *ImportVirtualClustersSpec) DeepCopy() *ImportVirtualClustersSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImportVirtualClustersSpec.
func (*ImportVirtualClustersSpec) DeepCopyInto ¶
func (in *ImportVirtualClustersSpec) DeepCopyInto(out *ImportVirtualClustersSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
func (in *InstanceDeployedAppStatus) DeepCopy() *InstanceDeployedAppStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceDeployedAppStatus.
func (*InstanceDeployedAppStatus) DeepCopyInto ¶
func (in *InstanceDeployedAppStatus) DeepCopyInto(out *InstanceDeployedAppStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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 ¶
func (in *LocalClusterAccessSpec) DeepCopy() *LocalClusterAccessSpec
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.
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 ¶
func (in *LocalClusterAccessTemplate) DeepCopy() *LocalClusterAccessTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalClusterAccessTemplate.
func (*LocalClusterAccessTemplate) DeepCopyInto ¶
func (in *LocalClusterAccessTemplate) DeepCopyInto(out *LocalClusterAccessTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *LocalClusterRoleTemplate) DeepCopy() *LocalClusterRoleTemplate
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.
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 ¶
func (in *LocalClusterRoleTemplateSpec) DeepCopy() *LocalClusterRoleTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalClusterRoleTemplateSpec.
func (*LocalClusterRoleTemplateSpec) DeepCopyInto ¶
func (in *LocalClusterRoleTemplateSpec) DeepCopyInto(out *LocalClusterRoleTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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,omitempty"`
}
func (*Member) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Member.
func (*Member) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Metrics.
func (*Metrics) DeepCopyInto ¶ added in v4.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"`
// DevPodWorkspace holds the namespace pattern to use for DevPod workspaces
// +optional
DevPodWorkspace string `json:"devPodWorkspace,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.
type NetworkPeer ¶
type NetworkPeer struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,inline"`
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.
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.
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.
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.
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.
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
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenCost.
func (*OpenCost) DeepCopyInto ¶ added in v4.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
type PresetRef ¶ added in v4.2.0
type PresetRef struct {
// Name is the name of DevPodWorkspacePreset
Name string `json:"name"`
// Version holds the preset 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"`
}
func (*PresetRef) DeepCopy ¶ added in v4.2.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PresetRef.
func (*PresetRef) DeepCopyInto ¶ added in v4.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Project.
func (*Project) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Project) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Project) GetConditions ¶
func (a *Project) GetConditions() agentstoragev1.Conditions
func (*Project) GetOwner ¶
func (a *Project) GetOwner() *UserOrTeam
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.
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
// DevPod environments.
// +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"`
// DevPod holds DevPod specific configuration for project
// +optional
DevPod *DevPodProjectSpec `json:"devPod,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.
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.
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.
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.
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 ¶
func (in *QuotaStatusProjectCluster) DeepCopy() *QuotaStatusProjectCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QuotaStatusProjectCluster.
func (*QuotaStatusProjectCluster) DeepCopyInto ¶
func (in *QuotaStatusProjectCluster) DeepCopyInto(out *QuotaStatusProjectCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Quotas.
func (*Quotas) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *RancherIntegrationSpec) DeepCopy() *RancherIntegrationSpec
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.
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.
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.
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.
type RunnerRef ¶
type RunnerRef struct {
// Runner is the connected runner the workspace will be created in
// +optional
Runner string `json:"runner,omitempty"`
}
func (*RunnerRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerRef.
func (*RunnerRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretRef.
func (*SecretRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SharedSecret ¶
type SharedSecret struct {
}
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) 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 {
}
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.
type SharedSecretSpec ¶
type SharedSecretSpec struct {
// +optional
DisplayName string `json:"displayName,omitempty"`
// +optional
Description string `json:"description,omitempty"`
// +optional
Owner *UserOrTeam `json:"owner,omitempty"`
// 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"`
// 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.
type SharedSecretStatus ¶
type SharedSecretStatus struct {
// +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.
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) 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.
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.
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.
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 ¶
func (in *SpaceInstanceTemplateDefinition) DeepCopy() *SpaceInstanceTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceInstanceTemplateDefinition.
func (*SpaceInstanceTemplateDefinition) DeepCopyInto ¶
func (in *SpaceInstanceTemplateDefinition) DeepCopyInto(out *SpaceInstanceTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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) 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 ¶
func (in *SpaceTemplateDefinition) DeepCopy() *SpaceTemplateDefinition
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.
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.
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.
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.
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 ¶
func (in *SpaceTemplateVersion) DeepCopy() *SpaceTemplateVersion
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
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
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶ added in v4.2.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Target.
func (*Target) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
func (in *TargetVirtualCluster) DeepCopy() *TargetVirtualCluster
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Task.
func (*Task) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Task) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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) 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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskList.
func (*TaskList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TaskList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TaskSpec.
func (*TaskSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Team.
func (*Team) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Team) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Team) GetOwner ¶
func (a *Team) GetOwner() *UserOrTeam
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TeamList.
func (*TeamList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TeamList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TeamSpec.
func (*TeamSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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.
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.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new User.
func (*User) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*User) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*User) GetOwner ¶
func (a *User) GetOwner() *UserOrTeam
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserList.
func (*UserList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*UserList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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.
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.
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"`
}
func (*UserSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserSpec.
func (*UserSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
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.
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 ¶
func (in *VaultIntegrationSpec) DeepCopy() *VaultIntegrationSpec
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.
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 ¶
func (in *VirtualClusterAccessPoint) DeepCopy() *VirtualClusterAccessPoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterAccessPoint.
func (*VirtualClusterAccessPoint) DeepCopyInto ¶
func (in *VirtualClusterAccessPoint) DeepCopyInto(out *VirtualClusterAccessPoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterAccessPointIngressSpec) DeepCopy() *VirtualClusterAccessPointIngressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterAccessPointIngressSpec.
func (*VirtualClusterAccessPointIngressSpec) DeepCopyInto ¶
func (in *VirtualClusterAccessPointIngressSpec) DeepCopyInto(out *VirtualClusterAccessPointIngressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterClusterRef) DeepCopy() *VirtualClusterClusterRef
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.
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 ¶
func (in *VirtualClusterCommonSpec) DeepCopy() *VirtualClusterCommonSpec
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.
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"`
}
func (*VirtualClusterHelmChart) DeepCopy ¶
func (in *VirtualClusterHelmChart) DeepCopy() *VirtualClusterHelmChart
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.
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 ¶
func (in *VirtualClusterHelmRelease) DeepCopy() *VirtualClusterHelmRelease
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterHelmRelease.
func (*VirtualClusterHelmRelease) DeepCopyInto ¶
func (in *VirtualClusterHelmRelease) DeepCopyInto(out *VirtualClusterHelmRelease)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterHelmReleaseStatus) DeepCopy() *VirtualClusterHelmReleaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterHelmReleaseStatus.
func (*VirtualClusterHelmReleaseStatus) DeepCopyInto ¶
func (in *VirtualClusterHelmReleaseStatus) DeepCopyInto(out *VirtualClusterHelmReleaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterInstance) DeepCopy() *VirtualClusterInstance
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 (a *VirtualClusterInstance) GetConditions() agentstoragev1.Conditions
func (*VirtualClusterInstance) GetOwner ¶
func (a *VirtualClusterInstance) GetOwner() *UserOrTeam
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 ¶
func (in *VirtualClusterInstanceList) DeepCopy() *VirtualClusterInstanceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterInstanceList.
func (*VirtualClusterInstanceList) DeepCopyInto ¶
func (in *VirtualClusterInstanceList) DeepCopyInto(out *VirtualClusterInstanceList)
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.
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"`
}
func (*VirtualClusterInstanceSpec) DeepCopy ¶
func (in *VirtualClusterInstanceSpec) DeepCopy() *VirtualClusterInstanceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterInstanceSpec.
func (*VirtualClusterInstanceSpec) DeepCopyInto ¶
func (in *VirtualClusterInstanceSpec) DeepCopyInto(out *VirtualClusterInstanceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"`
// 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 ¶
func (in *VirtualClusterInstanceStatus) DeepCopy() *VirtualClusterInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterInstanceStatus.
func (*VirtualClusterInstanceStatus) DeepCopyInto ¶
func (in *VirtualClusterInstanceStatus) DeepCopyInto(out *VirtualClusterInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterInstanceTemplateDefinition) DeepCopy() *VirtualClusterInstanceTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterInstanceTemplateDefinition.
func (*VirtualClusterInstanceTemplateDefinition) DeepCopyInto ¶
func (in *VirtualClusterInstanceTemplateDefinition) DeepCopyInto(out *VirtualClusterInstanceTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterProSpec) DeepCopy() *VirtualClusterProSpec
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.
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 ¶
func (in *VirtualClusterSpaceTemplateDefinition) DeepCopy() *VirtualClusterSpaceTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterSpaceTemplateDefinition.
func (*VirtualClusterSpaceTemplateDefinition) DeepCopyInto ¶
func (in *VirtualClusterSpaceTemplateDefinition) DeepCopyInto(out *VirtualClusterSpaceTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterStatus) DeepCopy() *VirtualClusterStatus
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.
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 ¶
func (in *VirtualClusterTemplate) DeepCopy() *VirtualClusterTemplate
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) 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 ¶
func (in *VirtualClusterTemplateDefinition) DeepCopy() *VirtualClusterTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterTemplateDefinition.
func (*VirtualClusterTemplateDefinition) DeepCopyInto ¶
func (in *VirtualClusterTemplateDefinition) DeepCopyInto(out *VirtualClusterTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterTemplateList) DeepCopy() *VirtualClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterTemplateList.
func (*VirtualClusterTemplateList) DeepCopyInto ¶
func (in *VirtualClusterTemplateList) DeepCopyInto(out *VirtualClusterTemplateList)
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.
type VirtualClusterTemplateSpaceTemplateRef ¶
type VirtualClusterTemplateSpaceTemplateRef struct {
// Name of the space template
// +optional
Name string `json:"name,omitempty"`
}
func (*VirtualClusterTemplateSpaceTemplateRef) DeepCopy ¶
func (in *VirtualClusterTemplateSpaceTemplateRef) DeepCopy() *VirtualClusterTemplateSpaceTemplateRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterTemplateSpaceTemplateRef.
func (*VirtualClusterTemplateSpaceTemplateRef) DeepCopyInto ¶
func (in *VirtualClusterTemplateSpaceTemplateRef) DeepCopyInto(out *VirtualClusterTemplateSpaceTemplateRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterTemplateSpec) DeepCopy() *VirtualClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterTemplateSpec.
func (*VirtualClusterTemplateSpec) DeepCopyInto ¶
func (in *VirtualClusterTemplateSpec) DeepCopyInto(out *VirtualClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualClusterTemplateStatus ¶
type VirtualClusterTemplateStatus struct {
}
VirtualClusterTemplateStatus holds the status
func (*VirtualClusterTemplateStatus) DeepCopy ¶
func (in *VirtualClusterTemplateStatus) DeepCopy() *VirtualClusterTemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterTemplateStatus.
func (*VirtualClusterTemplateStatus) DeepCopyInto ¶
func (in *VirtualClusterTemplateStatus) DeepCopyInto(out *VirtualClusterTemplateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
func (in *VirtualClusterTemplateVersion) DeepCopy() *VirtualClusterTemplateVersion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterTemplateVersion.
func (*VirtualClusterTemplateVersion) DeepCopyInto ¶
func (in *VirtualClusterTemplateVersion) DeepCopyInto(out *VirtualClusterTemplateVersion)
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
type WorkspaceRef ¶ added in v4.2.0
type WorkspaceRef struct {
// Name is the name of DevPodWorkspaceTemplate this references
Name string `json:"name"`
}
func (*WorkspaceRef) DeepCopy ¶ added in v4.2.0
func (in *WorkspaceRef) DeepCopy() *WorkspaceRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceRef.
func (*WorkspaceRef) DeepCopyInto ¶ added in v4.2.0
func (in *WorkspaceRef) DeepCopyInto(out *WorkspaceRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkspaceResolvedTarget ¶ added in v4.3.0
type WorkspaceResolvedTarget struct {
// Cluster is the reference to the cluster holding this workspace
// +optional
Cluster *WorkspaceTargetNamespace `json:"cluster,omitempty"`
// Cluster is the reference to the virtual cluster holding this workspace
// +optional
VirtualCluster *WorkspaceTargetNamespace `json:"virtualCluster,omitempty"`
// Space is the reference to the space holding this workspace
// +optional
Space *WorkspaceTargetName `json:"space,omitempty"`
}
func (*WorkspaceResolvedTarget) DeepCopy ¶ added in v4.3.0
func (in *WorkspaceResolvedTarget) DeepCopy() *WorkspaceResolvedTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceResolvedTarget.
func (*WorkspaceResolvedTarget) DeepCopyInto ¶ added in v4.3.0
func (in *WorkspaceResolvedTarget) DeepCopyInto(out *WorkspaceResolvedTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (WorkspaceResolvedTarget) Empty ¶ added in v4.3.0
func (w WorkspaceResolvedTarget) Empty() bool
type WorkspaceStatus ¶
type WorkspaceStatus string
var ( WorkspaceStatusNotFound WorkspaceStatus = "NotFound" WorkspaceStatusStopped WorkspaceStatus = "Stopped" WorkspaceStatusBusy WorkspaceStatus = "Busy" WorkspaceStatusRunning WorkspaceStatus = "Running" )
type WorkspaceStatusResult ¶
type WorkspaceStatusResult struct {
ID string `json:"id,omitempty"`
Context string `json:"context,omitempty"`
Provider string `json:"provider,omitempty"`
State string `json:"state,omitempty"`
}
func (*WorkspaceStatusResult) DeepCopy ¶
func (in *WorkspaceStatusResult) DeepCopy() *WorkspaceStatusResult
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceStatusResult.
func (*WorkspaceStatusResult) DeepCopyInto ¶
func (in *WorkspaceStatusResult) DeepCopyInto(out *WorkspaceStatusResult)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkspaceTarget ¶ added in v4.3.0
type WorkspaceTarget struct {
// Cluster is the reference to the cluster holding this workspace
// +optional
Cluster *WorkspaceTargetName `json:"cluster,omitempty"`
// Cluster is the reference to the virtual cluster holding this workspace
// +optional
VirtualCluster *WorkspaceTargetName `json:"virtualCluster,omitempty"`
}
func (*WorkspaceTarget) DeepCopy ¶ added in v4.3.0
func (in *WorkspaceTarget) DeepCopy() *WorkspaceTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceTarget.
func (*WorkspaceTarget) DeepCopyInto ¶ added in v4.3.0
func (in *WorkspaceTarget) DeepCopyInto(out *WorkspaceTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkspaceTargetName ¶ added in v4.3.0
type WorkspaceTargetName struct {
// Name is the name of the target
Name string `json:"name"`
}
func (*WorkspaceTargetName) DeepCopy ¶ added in v4.3.0
func (in *WorkspaceTargetName) DeepCopy() *WorkspaceTargetName
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceTargetName.
func (*WorkspaceTargetName) DeepCopyInto ¶ added in v4.3.0
func (in *WorkspaceTargetName) DeepCopyInto(out *WorkspaceTargetName)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkspaceTargetNamespace ¶ added in v4.3.0
type WorkspaceTargetNamespace struct {
// Name is the name of the object
Name string `json:"name"`
// Namespace is the namespace within the cluster.
// +optional
Namespace string `json:"namespace,omitempty"`
}
func (*WorkspaceTargetNamespace) DeepCopy ¶ added in v4.3.0
func (in *WorkspaceTargetNamespace) DeepCopy() *WorkspaceTargetNamespace
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkspaceTargetNamespace.
func (*WorkspaceTargetNamespace) DeepCopyInto ¶ added in v4.3.0
func (in *WorkspaceTargetNamespace) DeepCopyInto(out *WorkspaceTargetNamespace)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- accesskey_types.go
- app_types.go
- cluster_types.go
- clusteraccess_types.go
- clusterroletemplate_types.go
- devpodenvironmenttemplate_types.go
- devpodworkspaceinstance_types.go
- devpodworkspacepreset_types.go
- devpodworkspacetemplate_types.go
- doc.go
- groupversion_info.go
- networkpeer_types.go
- project_types.go
- sharedsecret_types.go
- spaceinstance_types.go
- spacetemplate_types.go
- task_types.go
- team_types.go
- user_types.go
- virtualclusterinstance_types.go
- virtualclustertemplate_types.go
- zz_generated.deepcopy.go
- zz_generated.defaults.go