Documentation
¶
Index ¶
- Constants
- Variables
- func ListBYOKClusterFilter(accountName string) repos.Filter
- func UniqueBYOKClusterFilter(accountName string, clusterName string) repos.Filter
- type AWSAssumeRoleParams
- type AWSAuthSecretKeys
- type AWSSecretCredentials
- type BYOKCluster
- type ClaimClusterSvcCIDR
- type ClaimDeviceIP
- type CloudProviderSecret
- type Cluster
- type ClusterVisbility
- type ClusterVisibilityMode
- type DispatchAddr
- type DomainEntry
- type FreeClusterSvcCIDR
- type FreeDeviceIP
- type GCPSecretCredentials
- type GlobalVPN
- type GlobalVPNConnDeviceRef
- type GlobalVPNConnection
- type GlobalVPNDevice
- type HelmRelease
- type InputField
- type MresTemplate
- type MsvcTemplate
- type MsvcTemplateEntry
- type Namespace
- type Node
- type NodePool
- type OutputField
- type Peer
- type PersistentVolume
- type PersistentVolumeClaim
- type VolumeAttachment
- type WgParams
Constants ¶
View Source
const ( AccessKey string = "accessKey" SecretKey string = "secretKey" AWSAccountId string = "awsAccountId" AWSAssumeRoleExternalId string = "awsAssumeRoleExternalId" AWAssumeRoleRoleARN string = "awsAssumeRoleRoleARN" AWSInstanceProfileName string = "awsInstanceProfileName" KeyGCPServiceAccountJSON string = "gcp-creds.json" )
Variables ¶
View Source
var BYOKClusterIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: fc.Id, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.MetadataName, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.BYOKClusterOwnedBy, Value: repos.IndexAsc}, }, Unique: false, }, }
View Source
var ClaimClusterSvcCIDRIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: fc.Id, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.ClaimClusterSvcCIDRClusterSvcCIDR, Value: repos.IndexAsc}, {Key: fields.AccountName, Value: repos.IndexAsc}, {Key: fc.ClaimClusterSvcCIDRGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.ClaimClusterSvcCIDRClaimedByCluster, Value: repos.IndexAsc}, {Key: fields.AccountName, Value: repos.IndexAsc}, {Key: fc.ClaimClusterSvcCIDRGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var ClaimDeviceIPIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.ClaimDeviceIPIpAddr, Value: repos.IndexAsc}, {Key: fields.AccountName, Value: repos.IndexAsc}, {Key: fc.ClaimDeviceIPGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.ClaimDeviceIPClaimedBy, Value: repos.IndexAsc}, {Key: fields.AccountName, Value: repos.IndexAsc}, {Key: fc.ClaimDeviceIPGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var CloudProviderSecretIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "metadata.namespace", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var ClusterIndices = []repos.IndexField{ { Field: []repos.IndexKey{{Key: fc.Id, Value: repos.IndexAsc}}, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.MetadataName, Value: repos.IndexAsc}, {Key: fc.MetadataNamespace, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, {Key: fc.ClusterGlobalVPN, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.ClusterSpecClusterServiceCIDR, Value: repos.IndexAsc}, {Key: fc.ClusterGlobalVPN, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.ClusterOwnedBy, Value: repos.IndexAsc}, }, Unique: false, }, }
View Source
var DomainEntryIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "accountName", Value: repos.IndexAsc}, }, }, { Field: []repos.IndexKey{ {Key: "domainName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var FreeClusterSvcCIDRIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: fc.Id, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.FreeClusterSvcCIDRClusterSvcCIDR, Value: repos.IndexAsc}, {Key: fields.AccountName, Value: repos.IndexAsc}, {Key: fc.FreeClusterSvcCIDRGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var FreeDeviceIPIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.FreeDeviceIPIpAddr, Value: repos.IndexAsc}, {Key: fields.AccountName, Value: repos.IndexAsc}, {Key: fc.FreeDeviceIPGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var GlobalVPNConnectionIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.MetadataName, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, {Key: fc.ClusterName, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.GlobalVPNConnectionDispatchAddrAccountName, Value: repos.IndexAsc}, {Key: fc.GlobalVPNConnectionDispatchAddrClusterName, Value: repos.IndexAsc}, {Key: fc.MetadataName, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var GlobalVPNDeviceIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: fc.Id, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.MetadataName, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, {Key: fc.GlobalVPNDeviceGlobalVPNName, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.AccountName, Value: repos.IndexAsc}, {Key: fc.GlobalVPNDeviceGlobalVPNName, Value: repos.IndexAsc}, {Key: fc.GlobalVPNDeviceIpAddr, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var GlobalVPNIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: fc.Id, Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: fc.MetadataName, Value: repos.IndexAsc}, {Key: fc.AccountName, Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var HelmReleaseIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var NamespaceIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var NodeIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var NodePoolIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, }, }, }
View Source
var PersistentVolumeClaimIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "metadata.namespace", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var PersistentVolumeIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
View Source
var VolumeAttachmentIndices = []repos.IndexField{ { Field: []repos.IndexKey{ {Key: "id", Value: repos.IndexAsc}, }, Unique: true, }, { Field: []repos.IndexKey{ {Key: "metadata.name", Value: repos.IndexAsc}, {Key: "accountName", Value: repos.IndexAsc}, {Key: "clusterName", Value: repos.IndexAsc}, }, Unique: true, }, }
Functions ¶
func ListBYOKClusterFilter ¶
Types ¶
type AWSAssumeRoleParams ¶
type AWSAssumeRoleParams struct {
AWSAccountID string `json:"awsAccountId"`
CfParamTrustedARN string `json:"cfParamTrustedARN" graphql:"noinput"`
clustersv1.AwsAssumeRoleParams `json:",inline" graphql:"noinput"`
}
type AWSAuthSecretKeys ¶
type AWSAuthSecretKeys struct {
CfParamUserName string `json:"cfParamUserName" graphql:"noinput"`
clustersv1.AwsAuthSecretKeys `json:",inline"`
}
type AWSSecretCredentials ¶
type AWSSecretCredentials struct {
CfParamStackName string `json:"cfParamStackName,omitempty" graphql:"noinput"`
CfParamRoleName string `json:"cfParamRoleName,omitempty" graphql:"noinput"`
CfParamInstanceProfileName string `json:"cfParamInstanceProfileName,omitempty" graphql:"noinput"`
AuthMechanism clustersv1.AwsAuthMechanism `json:"authMechanism"`
AuthSecretKeys *AWSAuthSecretKeys `json:"authSecretKeys,omitempty"`
AssumeRoleParams *AWSAssumeRoleParams `json:"assumeRoleParams,omitempty"`
}
func (*AWSSecretCredentials) GetAssumeRoleRoleARN ¶
func (asc *AWSSecretCredentials) GetAssumeRoleRoleARN() string
func (*AWSSecretCredentials) IsAssumeRoleConfiguration ¶
func (asc *AWSSecretCredentials) IsAssumeRoleConfiguration() bool
func (*AWSSecretCredentials) Validate ¶
func (asc *AWSSecretCredentials) Validate() error
type BYOKCluster ¶
type BYOKCluster struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
metav1.ObjectMeta `json:"metadata"`
GlobalVPN string `json:"globalVPN" graphql:"noinput"`
ClusterSvcCIDR string `json:"clusterSvcCIDR" graphql:"noinput"`
Visibility ClusterVisbility `json:"visibility"`
ClusterToken string `json:"clusterToken" graphql:"noinput"`
MessageQueueTopicName string `json:"messageQueueTopicName" graphql:"noinput"`
common.ResourceMetadata `json:",inline"`
SyncStatus t.SyncStatus `json:"syncStatus" graphql:"noinput"`
AccountName string `json:"accountName" graphql:"noinput"`
// to be set post sync
Kubeconfig t.EncodedString `json:"kubeconfig" graphql:"ignore"`
LastOnlineAt *time.Time `json:"lastOnlineAt,omitempty" graphql:"noinput"`
OwnedBy *string `json:"ownedBy,omitempty", graphql:"noinput"`
}
func (*BYOKCluster) GetDisplayName ¶
func (c *BYOKCluster) GetDisplayName() string
func (*BYOKCluster) GetStatus ¶
func (c *BYOKCluster) GetStatus() operator.Status
type ClaimClusterSvcCIDR ¶
type ClaimDeviceIP ¶
type CloudProviderSecret ¶
type CloudProviderSecret struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
AccountName string `json:"accountName" graphql:"noinput"`
metav1.ObjectMeta `json:"metadata"`
CloudProviderName ct.CloudProvider `json:"cloudProviderName"`
common.ResourceMetadata `json:",inline"`
AWS *AWSSecretCredentials `json:"aws,omitempty"`
GCP *GCPSecretCredentials `json:"gcp,omitempty"`
}
func (*CloudProviderSecret) GetDisplayName ¶
func (cps *CloudProviderSecret) GetDisplayName() string
func (*CloudProviderSecret) GetStatus ¶
func (cps *CloudProviderSecret) GetStatus() operator.Status
type Cluster ¶
type Cluster struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
clustersv1.Cluster `json:",inline"`
// if not specified, a default will be used, each cluster must be part of one global VPN
GlobalVPN *string `json:"globalVPN"`
common.ResourceMetadata `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
SyncStatus t.SyncStatus `json:"syncStatus" graphql:"noinput"`
LastOnlineAt *time.Time `json:"lastOnlineAt,omitempty" graphql:"noinput"`
OwnedBy *string `json:"ownedBy,omitempty", graphql:"noinput"`
}
func (*Cluster) GetDisplayName ¶
type ClusterVisbility ¶
type ClusterVisbility struct {
Mode ClusterVisibilityMode `json:"mode"`
PublicEndpoint *string `json:"publicEndpoint" graphql:"noinput"`
}
type ClusterVisibilityMode ¶
type ClusterVisibilityMode string
const ( ClusterVisibilityModePublic ClusterVisibilityMode = "public" ClusterVisibilityModePrivate ClusterVisibilityMode = "private" )
type DispatchAddr ¶
type DomainEntry ¶
type DomainEntry struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
common.ResourceMetadata `json:",inline"`
DomainName string `json:"domainName"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName"`
}
func (DomainEntry) GetDisplayName ¶
func (d DomainEntry) GetDisplayName() string
func (DomainEntry) GetStatus ¶
func (d DomainEntry) GetStatus() operator.Status
type FreeClusterSvcCIDR ¶
type FreeClusterSvcCIDR struct {
repos.BaseEntity `json:",inline"`
AccountName string `json:"accountName"`
GlobalVPNName string `json:"globalVPNName"`
ClusterSvcCIDR string `json:"clusterSvcCIDR"`
}
type FreeDeviceIP ¶
type FreeDeviceIP struct {
repos.BaseEntity `json:",inline"`
AccountName string `json:"accountName"`
GlobalVPNName string `json:"globalVPNName"`
IPAddr string `json:"ipAddr"`
}
type GCPSecretCredentials ¶
type GCPSecretCredentials struct {
clustersv1.GCPCredentials `json:",inline"`
}
func (*GCPSecretCredentials) Validate ¶
func (gcp *GCPSecretCredentials) Validate() error
type GlobalVPN ¶
type GlobalVPN struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
common.ResourceMetadata `json:",inline"`
metav1.ObjectMeta `json:"metadata"`
// like 10.0.0.0/8
CIDR string `json:"CIDR"`
// to allocate 8K IPs for each GlobalVPNConnection
// i.e. pow(2, 13) Ips, it means 13 Host bits,
// which leaves us with (32 - 13) 19 Network Bits. It is our AllocatableCIDRSuffix
AllocatableCIDRSuffix int `json:"allocatableCIDRSuffix"`
WgInterface string `json:"wgInterface"`
NumReservedIPsForNonClusterUse int `json:"numReservedIPsForNonClusterUse"`
NonClusterUseAllowedIPs []string `json:"nonClusterUseAllowedIPs"`
// Running Count of allocated Cluster CIDRs for clusters, under this GlobalVPN
NumAllocatedClusterCIDRs int `json:"numAllocatedClusterCIDRs"`
// Running Count for allocated Devices under this GlobalVPN
// It will always be <= NumReservedIPsForNonClusterUse
NumAllocatedDevices int `json:"numAllocatedDevices"`
// Peers []Peer `json:"peers" graphql:"noinput"`
AccountName string `json:"accountName" graphql:"noinput"`
KloudliteGatewayDevice struct {
Name string `json:"name"`
IPAddr string `json:"ipAddr"`
} `json:"kloudliteGatewayDevice" graphql:"noinput"`
KloudliteClusterLocalDevice struct {
Name string `json:"name"`
IPAddr string `json:"ipAddr"`
} `json:"kloudliteClusterLocalDevice" graphql:"noinput"`
}
func (*GlobalVPN) GetDisplayName ¶
type GlobalVPNConnDeviceRef ¶
type GlobalVPNConnection ¶
type GlobalVPNConnection struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
// wgv1.GlobalVPN `json:",inline"`
networkingv1.Gateway `json:",inline"`
GlobalVPNName string `json:"globalVPNName"`
common.ResourceMetadata `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
ClusterCIDR string `json:"clusterSvcCIDR" graphql:"noinput"`
Visibility ClusterVisbility `json:"visibility" graphql:"noinput"`
// ClusterPublicEndpoint string `json:"clusterPublicEndpoint" graphql:"noinput"`
DeviceRef GlobalVPNConnDeviceRef `json:"deviceRef" graphql:"noinput"`
// DispatchAddr is useful when globalvpn connection belongs to one account, but is deployed to another account
DispatchAddr *DispatchAddr `json:"dispatchAddr" graphql:"noinput"`
// ParsedWgParams *wgv1.WgParams `json:"parsedWgParams" graphql:"ignore"`
ParsedWgParams *networkingv1.WireguardKeys `json:"parsedWgParams" graphql:"ignore"`
SyncStatus t.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
func (*GlobalVPNConnection) GetDisplayName ¶
func (c *GlobalVPNConnection) GetDisplayName() string
func (*GlobalVPNConnection) GetStatus ¶
func (c *GlobalVPNConnection) GetStatus() operator.Status
type GlobalVPNDevice ¶
type GlobalVPNDevice struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
metav1.ObjectMeta `json:"metadata"`
common.ResourceMetadata `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
GlobalVPNName string `json:"globalVPNName"`
// Only needs to be set, if vpn device has a public IP
PublicEndpoint *string `json:"publicEndpoint,omitempty" graphql:"noinput"`
CreationMethod string `json:"creationMethod,omitempty"`
IPAddr string `json:"ipAddr" graphql:"noinput"`
PrivateKey string `json:"privateKey" graphql:"noinput"`
PublicKey string `json:"publicKey" graphql:"noinput"`
}
type HelmRelease ¶
type HelmRelease struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
crdsv1.HelmChart `json:",inline" graphql:"uri=k8s://helmcharts.crds.kloudlite.io"`
common.ResourceMetadata `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
DispatchAddr *DispatchAddr `json:"dispatchAddr" graphql:"noinput"`
SyncStatus t.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
func (*HelmRelease) GetDisplayName ¶
func (h *HelmRelease) GetDisplayName() string
func (*HelmRelease) GetStatus ¶
func (h *HelmRelease) GetStatus() operator.Status
type InputField ¶
type InputField struct {
Name string `json:"name"`
Label string `json:"label"`
InputType string `json:"inputType"`
DefaultValue any `json:"defaultValue,omitempty"`
Min *float64 `json:"min,omitempty"`
Max *float64 `json:"max,omitempty"`
Required *bool `json:"required,omitempty"`
Unit *string `json:"unit,omitempty"`
DisplayUnit *string `json:"displayUnit,omitempty"`
Multiplier *float64 `json:"multiplier,omitempty"`
}
type MresTemplate ¶
type MresTemplate struct {
// TOOD (nxtcoder17): remove omitempty ASAP
ApiVersion string `json:"apiVersion,omitempty"`
Kind string `json:"kind,omitempty"`
Name string `json:"name"`
DisplayName string `json:"displayName"`
Description string `json:"description"`
Fields []InputField `json:"fields"`
Outputs []OutputField `json:"outputs"`
}
type MsvcTemplate ¶
type MsvcTemplate struct {
Category string `json:"category" graphql:"noinput"`
DisplayName string `json:"displayName" graphql:"noinput"`
Items []MsvcTemplateEntry `json:"items" graphql:"noinput"`
}
type MsvcTemplateEntry ¶
type MsvcTemplateEntry struct {
// TOOD (nxtcoder17): remove omitempty ASAP
ApiVersion string `json:"apiVersion,omitempty"`
Kind string `json:"kind,omitempty"`
Name string `json:"name"`
LogoUrl string `json:"logoUrl"`
DisplayName string `json:"displayName"`
Description string `json:"description"`
Active bool `json:"active"`
Fields []InputField `json:"fields"`
// InputMiddleware *string `json:"inputMiddleware"`
Outputs []OutputField `json:"outputs"`
Resources []MresTemplate `json:"resources"`
}
type Namespace ¶
type Namespace struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
corev1.Namespace `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
common.ResourceMetadata `json:",inline" graphql:"noinput"`
SyncStatus types.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
func (*Namespace) GetDisplayName ¶
type Node ¶
type Node struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
clustersv1.Node `json:",inline" graphql:"uri=k8s://nodes.clusters.kloudlite.io"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
SyncStatus t.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
type NodePool ¶
type NodePool struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
clustersv1.NodePool `json:",inline" graphql:"uri=k8s://nodepools.clusters.kloudlite.io"`
common.ResourceMetadata `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
DispatchAddr *DispatchAddr `json:"dispatchAddr" graphql:"noinput"`
SyncStatus t.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
func (*NodePool) GetDisplayName ¶
type OutputField ¶
type PersistentVolume ¶
type PersistentVolume struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
corev1.PersistentVolume `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
common.ResourceMetadata `json:",inline" graphql:"noinput"`
SyncStatus types.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
type PersistentVolumeClaim ¶
type PersistentVolumeClaim struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
corev1.PersistentVolumeClaim `json:",inline" graphql:"noinput"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
common.ResourceMetadata `json:",inline" graphql:"noinput"`
SyncStatus types.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
func (*PersistentVolumeClaim) GetDisplayName ¶
func (p *PersistentVolumeClaim) GetDisplayName() string
func (*PersistentVolumeClaim) GetStatus ¶
func (p *PersistentVolumeClaim) GetStatus() operator.Status
type VolumeAttachment ¶
type VolumeAttachment struct {
repos.BaseEntity `json:",inline" graphql:"noinput"`
storagev1.VolumeAttachment `json:",inline"`
AccountName string `json:"accountName" graphql:"noinput"`
ClusterName string `json:"clusterName" graphql:"noinput"`
common.ResourceMetadata `json:",inline" graphql:"noinput"`
SyncStatus types.SyncStatus `json:"syncStatus" graphql:"noinput"`
}
func (*VolumeAttachment) GetDisplayName ¶
func (v *VolumeAttachment) GetDisplayName() string
func (*VolumeAttachment) GetStatus ¶
func (v *VolumeAttachment) GetStatus() operator.Status
type WgParams ¶
type WgParams struct {
WgPrivateKey string `json:"wg_private_key"`
WgPublicKey string `json:"wg_public_key"`
IP string `json:"ip"`
DNSServer *string `json:"dnsServer"`
PublicGatewayHosts *string `json:"publicGatewayHosts,omitempty"`
PublicGatewayPort *string `json:"publicGatewayPort,omitempty"`
VirtualCidr string `json:"virtualCidr"`
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.