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 SetObjectDefaults_Runner(in *Runner)
- func SetObjectDefaults_RunnerList(in *RunnerList)
- type Access
- type AccessAccessor
- type AccessKey
- type AccessKeyIdentity
- type AccessKeyList
- type AccessKeyOIDC
- type AccessKeyOIDCProvider
- type AccessKeyScope
- type AccessKeyScopeCluster
- type AccessKeyScopeProject
- type AccessKeyScopeRule
- type AccessKeyScopeSpace
- type AccessKeyScopeVirtualCluster
- type AccessKeySpec
- type AccessKeyStatus
- type AccessKeyType
- type AccessKeyVirtualCluster
- type AccountClusterStatus
- type AccountClusterStatusPhase
- type AccountClusterTemplateStatus
- type AllowedCluster
- type AllowedClusterAccountTemplate
- type AllowedRunner
- type AllowedTemplate
- type App
- type AppConfig
- type AppList
- type AppParameter
- type AppSpec
- type AppStatus
- type AppTask
- type AppVersion
- type ArgoIntegrationSpec
- type ArgoProjectPolicyRule
- type ArgoProjectRole
- type ArgoProjectSpec
- type ArgoProjectSpecMetadata
- type ArgoSSOSpec
- type AutomaticImport
- type AutomaticImportVirtualClusters
- type Chart
- 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) GetOwner() *UserOrTeam
- func (a *Cluster) SetAccess(access []Access)
- 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 ClusterAccountTemplateClusterStatus
- type ClusterAccountTemplateClusterStatusPhase
- type ClusterAccountTemplateStatusPhase
- type ClusterList
- type ClusterRef
- 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 ConstraintSpaceTemplate
- type DevPodCommandDeleteOptions
- type DevPodCommandStatusOptions
- type DevPodCommandStopOptions
- type DevPodCommandUpOptions
- type DevPodProjectSpec
- type DevPodProviderOption
- type DevPodProviderOptionFrom
- type DevPodProviderSource
- 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 DevPodWorkspaceInstanceList
- type DevPodWorkspaceInstanceSpec
- type DevPodWorkspaceInstanceStatus
- type DevPodWorkspaceProvider
- 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 GitProjectSpec
- type GroupResources
- type HelmChart
- type HelmChartRepository
- type HelmConfiguration
- type HelmTask
- type HelmTaskRelease
- type HelmTaskType
- type ImportVirtualClustersSpec
- type InstanceDeployedAppPhase
- type InstanceDeployedAppStatus
- type InstancePhase
- type KindSecretRef
- type LocalClusterAccessTemplate
- type LocalClusterRoleTemplate
- type LocalClusterRoleTemplateSpec
- type LocalSpaceConstraintSpec
- type LocalSpaceConstraintTemplate
- type Member
- type NamespacePattern
- type NetworkPeer
- type NetworkPeerList
- type NetworkPeerSpec
- type NetworkPeerStatus
- 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 RequireTemplate
- type Runner
- func (in *Runner) DeepCopy() *Runner
- func (in *Runner) DeepCopyInto(out *Runner)
- func (in *Runner) DeepCopyObject() runtime.Object
- func (a *Runner) GetAccess() []Access
- func (a *Runner) GetConditions() agentstoragev1.Conditions
- func (a *Runner) GetOwner() *UserOrTeam
- func (a *Runner) SetAccess(access []Access)
- func (a *Runner) SetConditions(conditions agentstoragev1.Conditions)
- func (a *Runner) SetOwner(userOrTeam *UserOrTeam)
- type RunnerClusterRef
- type RunnerList
- type RunnerPersistentVolumeClaimTemplate
- type RunnerPersistentVolumeClaimTemplateSpec
- type RunnerPodTemplate
- type RunnerPodTemplateSpec
- type RunnerRef
- type RunnerSpec
- type RunnerStatus
- type RunnerStatusPhase
- 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 SpaceConstraint
- func (in *SpaceConstraint) DeepCopy() *SpaceConstraint
- func (in *SpaceConstraint) DeepCopyInto(out *SpaceConstraint)
- func (in *SpaceConstraint) DeepCopyObject() runtime.Object
- func (a *SpaceConstraint) GetAccess() []Access
- func (a *SpaceConstraint) GetOwner() *UserOrTeam
- func (a *SpaceConstraint) SetAccess(access []Access)
- func (a *SpaceConstraint) SetOwner(userOrTeam *UserOrTeam)
- type SpaceConstraintList
- type SpaceConstraintSpec
- type SpaceConstraintStatus
- type SpaceCreationTask
- 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 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 TemplateMetadata
- type TemplateRef
- type User
- type UserClusterAccountTemplate
- type UserClusterAccountTemplateStatus
- type UserList
- type UserOrTeam
- type UserSpec
- type UserStatus
- type VaultAuthSpec
- type VaultIntegrationSpec
- type VersionAccessor
- type VersionsAccessor
- type VirtualClusterClusterRef
- type VirtualClusterCreationTask
- 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 VirtualClusterSpaceTemplateDefinition
- 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 WorkloadVirtualClusterTemplateDefinition
- type WorkspaceStatus
- type WorkspaceStatusResult
Constants ¶
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" InstanceVirtualClusterSynced agentstoragev1.ConditionType = "VirtualClusterSynced" InstanceVirtualClusterReady agentstoragev1.ConditionType = "VirtualClusterReady" InstanceProjectsSecretsSynced agentstoragev1.ConditionType = "ProjectSecretsSynced" InstanceVirtualClusterAppsAndObjectsSynced agentstoragev1.ConditionType = "VirtualClusterAppsAndObjectsSynced" InstanceWorkloadSpaceSynced agentstoragev1.ConditionType = "WorkloadSpaceSynced" InstanceWorkloadSpaceReady agentstoragev1.ConditionType = "WorkloadSpaceReady" InstanceWorkloadVirtualClusterSynced agentstoragev1.ConditionType = "WorkloadVirtualClusterSynced" InstanceWorkloadVirtualClusterTokenSynced agentstoragev1.ConditionType = "WorkloadVirtualClusterTokenSynced" InstanceWorkloadVirtualClusterReady agentstoragev1.ConditionType = "WorkloadVirtualClusterReady" )
const (
RunnerDeployed agentstoragev1.ConditionType = "Deployed"
)
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" // 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" // DevPodWorkspaceRunnerEndpointAnnotation holds the workspace runner endpoint of the devpod workspace DevPodWorkspaceRunnerEndpointAnnotation = "loft.sh/runner-endpoint" )
var ( DevPodFlagsUp = "DEVPOD_FLAGS_UP" DevPodFlagsDelete = "DEVPOD_FLAGS_DELETE" DevPodFlagsStatus = "DEVPOD_FLAGS_STATUS" DevPodFlagsSsh = "DEVPOD_FLAGS_SSH" 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" )
var ( InstanceDeployedAppDeployed = "Deployed" InstanceDeployedAppFailed = "Failed" )
var AllowedWorkspaceStatus = []WorkspaceStatus{ WorkspaceStatusNotFound, WorkspaceStatusStopped, WorkspaceStatusBusy, WorkspaceStatusRunning, }
var ( RunnerConditions = []agentstoragev1.ConditionType{ RunnerDeployed, } )
var ( SpaceConditions = []agentstoragev1.ConditionType{ InstanceScheduled, InstanceTemplateResolved, InstanceSpaceSynced, InstanceSpaceReady, } )
var ( VirtualClusterConditions = []agentstoragev1.ConditionType{ InstanceScheduled, InstanceTemplateResolved, InstanceSpaceSynced, InstanceSpaceReady, InstanceVirtualClusterSynced, InstanceVirtualClusterReady, } )
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 SetObjectDefaults_Runner ¶
func SetObjectDefaults_Runner(in *Runner)
func SetObjectDefaults_RunnerList ¶
func SetObjectDefaults_RunnerList(in *RunnerList)
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 {
// AllowLoftCLI allows certain read-only management requests to
// make sure loft cli works correctly with this specific access key.
// +optional
AllowLoftCLI bool `json:"allowLoftCli,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"`
}
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.
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 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" )
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 AccountClusterStatus ¶
type AccountClusterStatus struct {
// Status holds the status of the account in the target cluster
// +optional
Status AccountClusterStatusPhase `json:"phase,omitempty"`
// Reason describes why loft couldn't sync the account with a machine readable identifier
// +optional
Reason string `json:"reason,omitempty"`
// Message describes why loft couldn't sync the account in human language
// +optional
Message string `json:"message,omitempty"`
// Cluster is the cluster name of the user in the cluster
// +optional
Cluster string `json:"cluster,omitempty"`
// AccountsClusterTemplate status is the status of the account cluster template that was used
// to create the cluster account
// +optional
AccountsClusterTemplate []AccountClusterTemplateStatus `json:"accountsClusterTemplateStatus,omitempty"`
// Accounts is the account name of the user in the cluster
// +optional
Accounts []string `json:"accounts,omitempty"`
}
AccountClusterStatus holds the status of an account in a cluster
func (*AccountClusterStatus) DeepCopy ¶
func (in *AccountClusterStatus) DeepCopy() *AccountClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountClusterStatus.
func (*AccountClusterStatus) DeepCopyInto ¶
func (in *AccountClusterStatus) DeepCopyInto(out *AccountClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AccountClusterStatusPhase ¶
type AccountClusterStatusPhase string
AccountClusterStatusPhase describes the phase of a cluster
const ( AccountClusterStatusPhaseSynced AccountClusterStatusPhase = "Synced" AccountClusterStatusPhaseFailed AccountClusterStatusPhase = "Failed" )
These are the valid admin account types
type AccountClusterTemplateStatus ¶
type AccountClusterTemplateStatus struct {
// Name is the name of the cluster account template
// +optional
Name string `json:"name,omitempty"`
// Account is the name of the account in the cluster
// +optional
Account string `json:"account,omitempty"`
// AccountTemplateHash is the hash of the account template that was applied
// +optional
AccountTemplateHash string `json:"accountTemplateHash,omitempty"`
// OwnsHash is the hash of the owns part of the cluster account template that was
// applied
// +optional
OwnsHash string `json:"ownsHash,omitempty"`
// Last time the condition transitioned from one status to another.
// +optional
LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`
// Status holds the status of the account in the target cluster
// +optional
Status ClusterAccountTemplateStatusPhase `json:"phase,omitempty"`
// Reason describes why loft couldn't sync the account with a machine readable identifier
// +optional
Reason string `json:"reason,omitempty"`
// Message describes why loft couldn't sync the account in human language
// +optional
Message string `json:"message,omitempty"`
}
func (*AccountClusterTemplateStatus) DeepCopy ¶
func (in *AccountClusterTemplateStatus) DeepCopy() *AccountClusterTemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AccountClusterTemplateStatus.
func (*AccountClusterTemplateStatus) DeepCopyInto ¶
func (in *AccountClusterTemplateStatus) DeepCopyInto(out *AccountClusterTemplateStatus)
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 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 agentstoragev1.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 AutomaticImport ¶
type AutomaticImport struct {
// VirtualClusters defines automatic virtual cluster import options.
// +optional
VirtualClusters AutomaticImportVirtualClusters `json:"virtualClusters,omitempty"`
}
func (*AutomaticImport) DeepCopy ¶
func (in *AutomaticImport) DeepCopy() *AutomaticImport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomaticImport.
func (*AutomaticImport) DeepCopyInto ¶
func (in *AutomaticImport) DeepCopyInto(out *AutomaticImport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutomaticImportVirtualClusters ¶
type AutomaticImportVirtualClusters struct {
// Enabled specifies if automatic virtual cluster import should be enabled for this project.
// +optional
Enabled bool `json:"enabled"`
}
func (*AutomaticImportVirtualClusters) DeepCopy ¶
func (in *AutomaticImportVirtualClusters) DeepCopy() *AutomaticImportVirtualClusters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutomaticImportVirtualClusters.
func (*AutomaticImportVirtualClusters) DeepCopyInto ¶
func (in *AutomaticImportVirtualClusters) DeepCopyInto(out *AutomaticImportVirtualClusters)
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 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) GetOwner ¶
func (a *Cluster) GetOwner() *UserOrTeam
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 ClusterAccountTemplateClusterStatus ¶
type ClusterAccountTemplateClusterStatus struct {
// Name of the cluster where the cluster account template was applied
// +optional
Name string `json:"name,omitempty"`
// Status holds the status of the account in the target cluster
// +optional
Status ClusterAccountTemplateClusterStatusPhase `json:"phase,omitempty"`
// Reason describes why loft couldn't sync the account with a machine readable identifier
// +optional
Reason string `json:"reason,omitempty"`
// Message describes why loft couldn't sync the account in human language
// +optional
Message string `json:"message,omitempty"`
}
func (*ClusterAccountTemplateClusterStatus) DeepCopy ¶
func (in *ClusterAccountTemplateClusterStatus) DeepCopy() *ClusterAccountTemplateClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAccountTemplateClusterStatus.
func (*ClusterAccountTemplateClusterStatus) DeepCopyInto ¶
func (in *ClusterAccountTemplateClusterStatus) DeepCopyInto(out *ClusterAccountTemplateClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterAccountTemplateClusterStatusPhase ¶
type ClusterAccountTemplateClusterStatusPhase string
ClusterAccountTemplateClusterStatusPhase describes the phase of a cluster account template
const ( ClusterAccountTemplateClusterStatusPhaseCreated ClusterAccountTemplateClusterStatusPhase = "Created" ClusterAccountTemplateClusterStatusPhaseSkipped ClusterAccountTemplateClusterStatusPhase = "Skipped" ClusterAccountTemplateClusterStatusPhaseFailed ClusterAccountTemplateClusterStatusPhase = "Failed" )
These are the valid account template cluster status
type ClusterAccountTemplateStatusPhase ¶
type ClusterAccountTemplateStatusPhase string
ClusterAccountTemplateStatusPhase describes the phase of a cluster
const ( ClusterAccountTemplateStatusPhaseSynced ClusterAccountTemplateStatusPhase = "Synced" ClusterAccountTemplateStatusPhaseFailed ClusterAccountTemplateStatusPhase = "Failed" ClusterAccountTemplateStatusPhaseFailedAccount ClusterAccountTemplateStatusPhase = "FailedAccount" ClusterAccountTemplateStatusPhaseFailedObjects ClusterAccountTemplateStatusPhase = "FailedObjects" )
These are the valid admin account types
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 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"`
}
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"`
}
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 ConstraintSpaceTemplate ¶
type ConstraintSpaceTemplate struct {
// The enforced metadata of the space to create. Currently, only annotations and labels are supported
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
metav1.ObjectMeta `json:"metadata,omitempty"`
// This defines the cluster role that will be used for the rolebinding when
// creating a new space for the selected subjects
// +optional
ClusterRole *string `json:"clusterRole,omitempty"`
// Objects are Kubernetes style yamls that should get deployed into the space
// +optional
Objects string `json:"objects,omitempty"`
}
ConstraintSpaceTemplate defines properties how many spaces can be owned by the account and how they should be created
func (*ConstraintSpaceTemplate) DeepCopy ¶
func (in *ConstraintSpaceTemplate) DeepCopy() *ConstraintSpaceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConstraintSpaceTemplate.
func (*ConstraintSpaceTemplate) DeepCopyInto ¶
func (in *ConstraintSpaceTemplate) DeepCopyInto(out *ConstraintSpaceTemplate)
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 DevPodProjectSpec ¶ added in v3.4.4
type DevPodProjectSpec struct {
// +optional
Git *GitProjectSpec `json:"git,omitempty"`
}
func (*DevPodProjectSpec) DeepCopy ¶ added in v3.4.4
func (in *DevPodProjectSpec) DeepCopy() *DevPodProjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevPodProjectSpec.
func (*DevPodProjectSpec) DeepCopyInto ¶ added in v3.4.4
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 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 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 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"`
// TemplateRef holds the DevPod machine template reference
// +optional
TemplateRef *TemplateRef `json:"templateRef,omitempty"`
// Template is the inline template to use for DevPod machine creation. This is mutually
// exclusive with templateRef.
// +optional
Template *DevPodWorkspaceTemplateDefinition `json:"template,omitempty"`
// RunnerRef is the reference to the connected 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"`
}
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 {
// 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"`
}
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 DevPodWorkspaceProvider ¶
type DevPodWorkspaceProvider struct {
// Name is the name of the provider. This can also be an url.
Name string `json:"name"`
// 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 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 {
// Provider holds the DevPod provider configuration
Provider DevPodWorkspaceProvider `json:"provider"`
// SpaceTemplate is the space that should get created for this DevPod. If this is specified, the
// Kubernetes provider will be selected automatically.
// +optional
SpaceTemplate *TemplateRef `json:"spaceTemplate,omitempty"`
// VirtualClusterTemplate is the virtual cluster that should get created for this DevPod. If this is specified, the
// Kubernetes provider will be selected automatically.
// +optional
VirtualClusterTemplate *TemplateRef `json:"virtualClusterTemplate,omitempty"`
// WorkspaceEnv are environment variables that should be available within the created workspace.
// +optional
WorkspaceEnv map[string]DevPodProviderOption `json:"workspaceEnv,omitempty"`
// UseProjectGitCredentials specifies if the project git credentials should be used instead of local ones for this workspace
// +optional
UseProjectGitCredentials bool `json:"useProjectGitCredentials,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 GitProjectSpec ¶ added in v3.4.4
type GitProjectSpec struct {
// Token defines the token to use for authentication.
// +optional
Token string `json:"token,omitempty"`
// TokenSecretRef defines the project secret to use for token authentication.
// Will be used if `Token` is not provided.
// +optional
TokenProjectSecretRef *corev1.SecretKeySelector `json:"tokenSecretRef,omitempty"`
}
func (*GitProjectSpec) DeepCopy ¶ added in v3.4.4
func (in *GitProjectSpec) DeepCopy() *GitProjectSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitProjectSpec.
func (*GitProjectSpec) DeepCopyInto ¶ added in v3.4.4
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 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 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 agentstoragev1.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 LocalSpaceConstraintSpec ¶
type LocalSpaceConstraintSpec 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"`
// SpaceTemplate holds the space configuration
// +optional
SpaceTemplate ConstraintSpaceTemplate `json:"spaceTemplate,omitempty"`
// Sync specifies if spaces that were created through this space constraint
// object should get synced with this object.
// +optional
Sync bool `json:"sync,omitempty"`
}
func (*LocalSpaceConstraintSpec) DeepCopy ¶
func (in *LocalSpaceConstraintSpec) DeepCopy() *LocalSpaceConstraintSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalSpaceConstraintSpec.
func (*LocalSpaceConstraintSpec) DeepCopyInto ¶
func (in *LocalSpaceConstraintSpec) DeepCopyInto(out *LocalSpaceConstraintSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalSpaceConstraintTemplate ¶
type LocalSpaceConstraintTemplate struct {
// Metadata is the metadata of the space constraint object
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
Metadata metav1.ObjectMeta `json:"metadata,omitempty"`
// LocalSpaceConstraintSpec holds the spec of the space constraint in the cluster
// +optional
LocalSpaceConstraintSpec LocalSpaceConstraintSpec `json:"spec,omitempty"`
}
func (*LocalSpaceConstraintTemplate) DeepCopy ¶
func (in *LocalSpaceConstraintTemplate) DeepCopy() *LocalSpaceConstraintTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalSpaceConstraintTemplate.
func (*LocalSpaceConstraintTemplate) DeepCopyInto ¶
func (in *LocalSpaceConstraintTemplate) DeepCopyInto(out *LocalSpaceConstraintTemplate)
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 NamespacePattern ¶
type NamespacePattern struct {
// Space holds the namespace pattern to use for space instances
// +optional
Space string `json:"space,omitempty"`
// VirtualCluster holds the namespace pattern to use for virtual cluster instances
// +optional
VirtualCluster string `json:"virtualCluster,omitempty"`
}
func (*NamespacePattern) DeepCopy ¶
func (in *NamespacePattern) DeepCopy() *NamespacePattern
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacePattern.
func (*NamespacePattern) DeepCopyInto ¶
func (in *NamespacePattern) DeepCopyInto(out *NamespacePattern)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 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"`
// 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"`
// AutomaticImport imports vClusters & Namespace automatically
// +optional
AutomaticImport AutomaticImport `json:"automaticImport,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" // RequestTargetVirtualCluster specifies a virtual kubernetes cluster request RequestTargetVirtualCluster RequestTarget = "VirtualCluster" // 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 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 Runner ¶
type Runner struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec RunnerSpec `json:"spec,omitempty"`
Status RunnerStatus `json:"status,omitempty"`
}
Runner holds the runner information +k8s:openapi-gen=true
func (*Runner) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Runner.
func (*Runner) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Runner) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Runner) GetConditions ¶
func (a *Runner) GetConditions() agentstoragev1.Conditions
func (*Runner) GetOwner ¶
func (a *Runner) GetOwner() *UserOrTeam
func (*Runner) SetConditions ¶
func (a *Runner) SetConditions(conditions agentstoragev1.Conditions)
func (*Runner) SetOwner ¶
func (a *Runner) SetOwner(userOrTeam *UserOrTeam)
type RunnerClusterRef ¶
type RunnerClusterRef 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"`
// PersistentVolumeClaimTemplate holds additional options for the persistent volume claim
// +optional
PersistentVolumeClaimTemplate *RunnerPersistentVolumeClaimTemplate `json:"persistentVolumeClaimTemplate,omitempty"`
// PodTemplate holds additional options for the runner pod
// +optional
PodTemplate *RunnerPodTemplate `json:"podTemplate,omitempty"`
}
func (*RunnerClusterRef) DeepCopy ¶
func (in *RunnerClusterRef) DeepCopy() *RunnerClusterRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerClusterRef.
func (*RunnerClusterRef) DeepCopyInto ¶
func (in *RunnerClusterRef) DeepCopyInto(out *RunnerClusterRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerList ¶
type RunnerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Runner `json:"items"`
}
RunnerList contains a list of Runner
func (*RunnerList) DeepCopy ¶
func (in *RunnerList) DeepCopy() *RunnerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerList.
func (*RunnerList) DeepCopyInto ¶
func (in *RunnerList) DeepCopyInto(out *RunnerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RunnerList) DeepCopyObject ¶
func (in *RunnerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RunnerPersistentVolumeClaimTemplate ¶
type RunnerPersistentVolumeClaimTemplate struct {
// Metadata holds the template metadata
// +optional
Metadata TemplateMetadata `json:"metadata,omitempty"`
// Spec holds the template spec
// +optional
Spec RunnerPersistentVolumeClaimTemplateSpec `json:"spec,omitempty"`
}
func (*RunnerPersistentVolumeClaimTemplate) DeepCopy ¶
func (in *RunnerPersistentVolumeClaimTemplate) DeepCopy() *RunnerPersistentVolumeClaimTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerPersistentVolumeClaimTemplate.
func (*RunnerPersistentVolumeClaimTemplate) DeepCopyInto ¶
func (in *RunnerPersistentVolumeClaimTemplate) DeepCopyInto(out *RunnerPersistentVolumeClaimTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerPersistentVolumeClaimTemplateSpec ¶
type RunnerPersistentVolumeClaimTemplateSpec struct {
// accessModes contains the desired access modes the volume should have.
// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
// +optional
AccessModes []corev1.PersistentVolumeAccessMode `json:"accessModes,omitempty"`
// storageClassName is the name of the StorageClass required by the claim.
// More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
// +optional
StorageClassName *string `json:"storageClassName,omitempty"`
// storageSize is the size of the storage to reserve for the pvc
// +optional
StorageSize string `json:"storageSize,omitempty"`
}
func (*RunnerPersistentVolumeClaimTemplateSpec) DeepCopy ¶
func (in *RunnerPersistentVolumeClaimTemplateSpec) DeepCopy() *RunnerPersistentVolumeClaimTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerPersistentVolumeClaimTemplateSpec.
func (*RunnerPersistentVolumeClaimTemplateSpec) DeepCopyInto ¶
func (in *RunnerPersistentVolumeClaimTemplateSpec) DeepCopyInto(out *RunnerPersistentVolumeClaimTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerPodTemplate ¶
type RunnerPodTemplate struct {
// Metadata holds the template metadata
// +optional
Metadata TemplateMetadata `json:"metadata,omitempty"`
// Spec holds the template spec
// +optional
Spec RunnerPodTemplateSpec `json:"spec,omitempty"`
}
func (*RunnerPodTemplate) DeepCopy ¶
func (in *RunnerPodTemplate) DeepCopy() *RunnerPodTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerPodTemplate.
func (*RunnerPodTemplate) DeepCopyInto ¶
func (in *RunnerPodTemplate) DeepCopyInto(out *RunnerPodTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerPodTemplateSpec ¶
type RunnerPodTemplateSpec struct {
// Runner pod image to use other than default
// +optional
Image string `json:"image,omitempty"`
// Resources requirements
// +optional
Resources corev1.ResourceRequirements `json:"resource,omitempty"`
// List of sources to populate environment variables in the container.
// The keys defined within a source must be a C_IDENTIFIER. All invalid keys
// will be reported as an event when the container is starting. When a key exists in multiple
// sources, the value associated with the last source will take precedence.
// Values defined by an Env with a duplicate key will take precedence.
// Cannot be updated.
// +optional
EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"`
// List of environment variables to set in the container.
// Cannot be updated.
// +optional
Env []corev1.EnvVar `json:"env,omitempty"`
// Set the NodeSelector for the Runner Pod
// +optional
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
// Set the Affinity for the Runner Pod
// +optional
Affinity *corev1.Affinity `json:"affinity,omitempty"`
// Set the Tolerations for the Runner Pod
// +optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// Set Volume Mounts for the Runner Pod
// +optional
VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
// Set Volumes for the Runner Pod
// +optional
Volumes []corev1.Volume `json:"volumes,omitempty"`
// Set up Init Containers for the Runner
// +optional
InitContainers []corev1.Container `json:"initContainers,omitempty"`
// Set host aliases for the Runner Pod
// +optional
HostAliases []corev1.HostAlias `json:"hostAliases,omitempty"`
}
func (*RunnerPodTemplateSpec) DeepCopy ¶
func (in *RunnerPodTemplateSpec) DeepCopy() *RunnerPodTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerPodTemplateSpec.
func (*RunnerPodTemplateSpec) DeepCopyInto ¶
func (in *RunnerPodTemplateSpec) DeepCopyInto(out *RunnerPodTemplateSpec)
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 RunnerSpec ¶
type RunnerSpec 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"`
// Endpoint is the hostname used to connect directly to the runner
// +optional
Endpoint string `json:"endpoint,omitempty"`
// If ClusterRef is defined, Loft will schedule the runner on the given
// cluster.
// +optional
ClusterRef *RunnerClusterRef `json:"clusterRef,omitempty"`
// Owner holds the owner of this object
// +optional
Owner *UserOrTeam `json:"owner,omitempty"`
// If unusable is true, no DevPod workspaces can be scheduled on this runner.
// +optional
Unusable bool `json:"unusable,omitempty"`
// Access holds the access rights for users and teams
// +optional
Access []Access `json:"access,omitempty"`
}
func (*RunnerSpec) DeepCopy ¶
func (in *RunnerSpec) DeepCopy() *RunnerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerSpec.
func (*RunnerSpec) DeepCopyInto ¶
func (in *RunnerSpec) DeepCopyInto(out *RunnerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerStatus ¶
type RunnerStatus struct {
// Phase describes the current phase the space instance is in
// +optional
Phase RunnerStatusPhase `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"`
}
func (*RunnerStatus) DeepCopy ¶
func (in *RunnerStatus) DeepCopy() *RunnerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunnerStatus.
func (*RunnerStatus) DeepCopyInto ¶
func (in *RunnerStatus) DeepCopyInto(out *RunnerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RunnerStatusPhase ¶
type RunnerStatusPhase string
RunnerStatusPhase describes the phase of a cluster
const ( RunnerStatusPhaseInitializing RunnerStatusPhase = "" RunnerStatusPhaseInitialized RunnerStatusPhase = "Initialized" RunnerStatusPhaseFailed RunnerStatusPhase = "Failed" )
These are the valid admin account types
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 SpaceConstraint ¶
type SpaceConstraint struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec SpaceConstraintSpec `json:"spec,omitempty"`
Status SpaceConstraintStatus `json:"status,omitempty"`
}
SpaceConstraint holds the global space constraint information +k8s:openapi-gen=true
func (*SpaceConstraint) DeepCopy ¶
func (in *SpaceConstraint) DeepCopy() *SpaceConstraint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceConstraint.
func (*SpaceConstraint) DeepCopyInto ¶
func (in *SpaceConstraint) DeepCopyInto(out *SpaceConstraint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceConstraint) DeepCopyObject ¶
func (in *SpaceConstraint) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*SpaceConstraint) GetAccess ¶
func (a *SpaceConstraint) GetAccess() []Access
func (*SpaceConstraint) GetOwner ¶
func (a *SpaceConstraint) GetOwner() *UserOrTeam
func (*SpaceConstraint) SetAccess ¶
func (a *SpaceConstraint) SetAccess(access []Access)
func (*SpaceConstraint) SetOwner ¶
func (a *SpaceConstraint) SetOwner(userOrTeam *UserOrTeam)
type SpaceConstraintList ¶
type SpaceConstraintList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []SpaceConstraint `json:"items"`
}
SpaceConstraintList contains a list of SpaceConstraint objects
func (*SpaceConstraintList) DeepCopy ¶
func (in *SpaceConstraintList) DeepCopy() *SpaceConstraintList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceConstraintList.
func (*SpaceConstraintList) DeepCopyInto ¶
func (in *SpaceConstraintList) DeepCopyInto(out *SpaceConstraintList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SpaceConstraintList) DeepCopyObject ¶
func (in *SpaceConstraintList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SpaceConstraintSpec ¶
type SpaceConstraintSpec struct {
// DisplayName is the name that should be displayed in the UI
// +optional
DisplayName string `json:"displayName,omitempty"`
// Description describes a space constraint 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"`
// LocalSpaceConstraintTemplate holds the space constraint template
// +omitempty
LocalSpaceConstraintTemplate LocalSpaceConstraintTemplate `json:"localSpaceConstraintTemplate,omitempty"`
}
func (*SpaceConstraintSpec) DeepCopy ¶
func (in *SpaceConstraintSpec) DeepCopy() *SpaceConstraintSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceConstraintSpec.
func (*SpaceConstraintSpec) DeepCopyInto ¶
func (in *SpaceConstraintSpec) DeepCopyInto(out *SpaceConstraintSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceConstraintStatus ¶
type SpaceConstraintStatus struct {
}
SpaceConstraintStatus holds the status of a user access
func (*SpaceConstraintStatus) DeepCopy ¶
func (in *SpaceConstraintStatus) DeepCopy() *SpaceConstraintStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceConstraintStatus.
func (*SpaceConstraintStatus) DeepCopyInto ¶
func (in *SpaceConstraintStatus) DeepCopyInto(out *SpaceConstraintStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpaceCreationTask ¶
type SpaceCreationTask struct {
// Metadata of the space
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
Metadata metav1.ObjectMeta `json:"metadata,omitempty"`
// Objects are objects to put into the space
// +optional
Objects string `json:"objects,omitempty"`
// Owner defines the space owner
// +optional
Owner *UserOrTeam `json:"owner,omitempty"`
// Apps specifies the apps that should get deployed by this template
// +optional
Apps []agentstoragev1.AppReference `json:"apps,omitempty"`
}
func (*SpaceCreationTask) DeepCopy ¶
func (in *SpaceCreationTask) DeepCopy() *SpaceCreationTask
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpaceCreationTask.
func (*SpaceCreationTask) DeepCopyInto ¶
func (in *SpaceCreationTask) DeepCopyInto(out *SpaceCreationTask)
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 []agentstoragev1.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 *agentstoragev1.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 []agentstoragev1.TemplateHelmChart `json:"charts,omitempty"`
// Apps specifies the apps that should get deployed by this template
// +optional
Apps []agentstoragev1.AppReference `json:"apps,omitempty"`
// The space access
// +optional
Access *agentstoragev1.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 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"`
// VirtualCluster defines a virtual cluster as target
// +optional
VirtualCluster *TargetVirtualCluster `json:"virtualCluster,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"`
// SpaceCreationTask creates a new space
// +optional
SpaceCreationTask *SpaceCreationTask `json:"spaceCreation,omitempty"`
// VirtualClusterCreationTask creates a new virtual cluster
// +optional
VirtualClusterCreationTask *VirtualClusterCreationTask `json:"virtualClusterCreation,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"`
// ClusterAccountTemplates that should be applied for the user
// +optional
ClusterAccountTemplates []UserClusterAccountTemplate `json:"clusterAccountTemplates,omitempty"`
// ClusterRoles define the cluster roles that the users should have assigned in the cluster.
// +optional
ClusterRoles []agentstoragev1.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 {
// Clusters holds information about which clusters the user has accounts in
// +optional
Clusters []AccountClusterStatus `json:"clusters,omitempty"`
// ClusterAccountTemplates holds information about which cluster account templates were applied
// DEPRECATED: Use status.clusters instead
// +optional
ClusterAccountTemplates []UserClusterAccountTemplateStatus `json:"clusterAccountTemplates,omitempty"`
}
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 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 UserClusterAccountTemplate ¶
type UserClusterAccountTemplate struct {
// Name of the cluster account template to apply
// +optional
Name string `json:"name,omitempty"`
// Sync defines if Loft should sync changes to the cluster account template
// to the cluster accounts and create new accounts if new clusters match the templates.
// +optional
Sync bool `json:"sync,omitempty"`
// AccountName is the name of the account that should
// be created. Defaults to the user or team kubernetes name.
// +optional
AccountName string `json:"accountName,omitempty"`
}
func (*UserClusterAccountTemplate) DeepCopy ¶
func (in *UserClusterAccountTemplate) DeepCopy() *UserClusterAccountTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserClusterAccountTemplate.
func (*UserClusterAccountTemplate) DeepCopyInto ¶
func (in *UserClusterAccountTemplate) DeepCopyInto(out *UserClusterAccountTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserClusterAccountTemplateStatus ¶
type UserClusterAccountTemplateStatus struct {
// Name of the cluster account template that was applied
// +optional
Name string `json:"name,omitempty"`
// Clusters holds the cluster on which this template was applied
// +optional
Clusters []ClusterAccountTemplateClusterStatus `json:"clusters,omitempty"`
// Status holds the status of the account in the target cluster
// +optional
Status ClusterAccountTemplateStatusPhase `json:"phase,omitempty"`
// Reason describes why loft couldn't sync the account with a machine readable identifier
// +optional
Reason string `json:"reason,omitempty"`
// Message describes why loft couldn't sync the account in human language
// +optional
Message string `json:"message,omitempty"`
}
func (*UserClusterAccountTemplateStatus) DeepCopy ¶
func (in *UserClusterAccountTemplateStatus) DeepCopy() *UserClusterAccountTemplateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserClusterAccountTemplateStatus.
func (*UserClusterAccountTemplateStatus) DeepCopyInto ¶
func (in *UserClusterAccountTemplateStatus) DeepCopyInto(out *UserClusterAccountTemplateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 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"`
// Deprecated: Use the Access Key CRD instead
// A reference to the users access keys
// +optional
AccessKeysRef *SecretRef `json:"accessKeysRef,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"`
// ClusterAccountTemplates that should be applied for the user
// +optional
ClusterAccountTemplates []UserClusterAccountTemplate `json:"clusterAccountTemplates,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 []agentstoragev1.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 {
// Clusters holds information about which clusters the user has accounts in
// +optional
Clusters []AccountClusterStatus `json:"clusters,omitempty"`
// ClusterAccountTemplates holds information about which cluster account templates were applied
// DEPRECATED: Use status.clusters instead
// +optional
ClusterAccountTemplates []UserClusterAccountTemplateStatus `json:"clusterAccountTemplates,omitempty"`
// 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 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 VirtualClusterCreationTask ¶
type VirtualClusterCreationTask struct {
// The virtual cluster metadata
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
Metadata metav1.ObjectMeta `json:"metadata,omitempty"`
// The virtual cluster access
// +optional
Access *agentstoragev1.InstanceAccess `json:"access,omitempty"`
// The helm release configuration for the virtual cluster.
// +optional
HelmRelease agentstoragev1.VirtualClusterHelmRelease `json:"helmRelease,omitempty"`
// Objects is the optional objects configuration for the virtual cluster
// +optional
Objects string `json:"objects,omitempty"`
// Wait defines if the task should wait until the virtual cluster is ready
// +optional
Wait bool `json:"wait,omitempty"`
// Apps specifies the apps that should get deployed by this template
// +optional
Apps []agentstoragev1.AppReference `json:"apps,omitempty"`
// SpaceCreationTask creates a new space if defined for the virtual cluster
// +optional
SpaceCreationTask *SpaceCreationTask `json:"spaceCreation,omitempty"`
}
func (*VirtualClusterCreationTask) DeepCopy ¶
func (in *VirtualClusterCreationTask) DeepCopy() *VirtualClusterCreationTask
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualClusterCreationTask.
func (*VirtualClusterCreationTask) DeepCopyInto ¶
func (in *VirtualClusterCreationTask) DeepCopyInto(out *VirtualClusterCreationTask)
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"`
// WorkloadClusterRef is the reference to the connected cluster holding
// this virtual cluster's workloads.
// +optional
WorkloadClusterRef *VirtualClusterClusterRef `json:"workloadClusterRef,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 []agentstoragev1.InstanceAccessRule `json:"extraAccessRules,omitempty"`
// Access to the virtual cluster object itself
// +optional
Access []Access `json:"access,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"`
// 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 *agentstoragev1.ObjectsStatus `json:"virtualClusterObjects,omitempty"`
// SpaceObjects are the objects that were applied within the virtual cluster space
// +optional
SpaceObjects *agentstoragev1.ObjectsStatus `json:"spaceObjects,omitempty"`
// WorkloadSpaceObjects are the objects that were applied within the virtual cluster workload space
// +optional
WorkloadSpaceObjects *agentstoragev1.ObjectsStatus `json:"workloadSpaceObjects,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 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 []agentstoragev1.TemplateHelmChart `json:"charts,omitempty"`
// Apps specifies the apps that should get deployed by this template
// +optional
Apps []agentstoragev1.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 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
agentstoragev1.VirtualClusterCommonSpec `json:",inline"`
// SpaceTemplate holds the space template
// +optional
SpaceTemplate VirtualClusterSpaceTemplateDefinition `json:"spaceTemplate,omitempty"`
// WorkloadVirtualClusterTemplateDefinition holds the workload cluster specific deployment options. Needs to be non-nil
// in order to deploy the virtual cluster in workload cluster mode.
// +optional
WorkloadVirtualClusterTemplateDefinition *WorkloadVirtualClusterTemplateDefinition `json:"workloadVirtualClusterTemplate,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 WorkloadVirtualClusterTemplateDefinition ¶
type WorkloadVirtualClusterTemplateDefinition struct {
// The virtual cluster metadata
// +kubebuilder:pruning:PreserveUnknownFields
// +optional
TemplateMetadata `json:"metadata,omitempty"`
// HelmRelease is the helm release configuration for the virtual cluster.
// +optional
HelmRelease *agentstoragev1.VirtualClusterHelmRelease `json:"helmRelease,omitempty"`
// SpaceTemplate holds the space template
// +optional
SpaceTemplate VirtualClusterSpaceTemplateDefinition `json:"spaceTemplate,omitempty"`
}
func (*WorkloadVirtualClusterTemplateDefinition) DeepCopy ¶
func (in *WorkloadVirtualClusterTemplateDefinition) DeepCopy() *WorkloadVirtualClusterTemplateDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadVirtualClusterTemplateDefinition.
func (*WorkloadVirtualClusterTemplateDefinition) DeepCopyInto ¶
func (in *WorkloadVirtualClusterTemplateDefinition) DeepCopyInto(out *WorkloadVirtualClusterTemplateDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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.
Source Files
¶
- accesskey_types.go
- app_types.go
- cluster_types.go
- clusteraccess_types.go
- clusterroletemplate_types.go
- devpodworkspaceinstance_types.go
- devpodworkspacetemplate_types.go
- doc.go
- groupversion_info.go
- networkpeer_types.go
- project_types.go
- runner_types.go
- sharedsecret_types.go
- spaceconstraint_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