Documentation
¶
Index ¶
- Constants
- func DestroyCluster(ctx context.Context, api API, clusterId string) error
- func DialPort(ctx context.Context, cluster *KubernetesCluster, targetPort int) (net.Conn, error)
- func DialPortWithToken(ctx context.Context, token *auth.Token, cluster *KubernetesCluster, ...) (net.Conn, error)
- func FetchTenantToken(ctx context.Context) (*auth.Token, error)
- func Register()
- func SetupFlags(flags *pflag.FlagSet, hide bool)
- func UserSSHKeys() (compute.Computable[[]string], error)
- type API
- type BuildCluster
- type BuildCluster_ColocatedPort
- type ClusterShape
- type CreateClusterOpts
- type CreateClusterResult
- type CreateKubernetesClusterRequest
- type CreateKubernetesClusterResponse
- type DestroyKubernetesClusterRequest
- type GetKubernetesClusterRequest
- type GetKubernetesClusterResponse
- type ImageRegistry
- type KubernetesCluster
- type KubernetesClusterList
- type LabelEntry
- type ListKubernetesClustersRequest
- type StartCreateKubernetesClusterResponse
- type WaitKubernetesClusterRequest
Constants ¶
View Source
const AdminScope = "admin"
Variables ¶
This section is empty.
Functions ¶
func DialPortWithToken ¶ added in v0.0.165
func FetchTenantToken ¶ added in v0.0.165
func SetupFlags ¶ added in v0.0.164
func UserSSHKeys ¶
func UserSSHKeys() (compute.Computable[[]string], error)
Types ¶
type API ¶ added in v0.0.103
type API struct { StartCreateKubernetesCluster fnapi.Call[CreateKubernetesClusterRequest] GetKubernetesCluster fnapi.Call[GetKubernetesClusterRequest] WaitKubernetesCluster fnapi.Call[WaitKubernetesClusterRequest] ListKubernetesClusters fnapi.Call[ListKubernetesClustersRequest] DestroyKubernetesCluster fnapi.Call[DestroyKubernetesClusterRequest] }
var Endpoint API
type BuildCluster ¶
type BuildCluster struct {
Colocated *BuildCluster_ColocatedPort `json:"colocated,omitempty"`
}
type ClusterShape ¶
type CreateClusterOpts ¶ added in v0.0.135
type CreateClusterOpts struct { MachineType string Ephemeral bool // Whether to keep the cluster alive, regardless of it being ephemeral. // This is typically needed if you want to execute multiple ns commands on an ephemeral cluster. KeepAlive bool Purpose string Features []string AuthorizedSshKeys []string }
type CreateClusterResult ¶
type CreateClusterResult struct { ClusterId string Cluster *KubernetesCluster Registry *ImageRegistry BuildCluster *BuildCluster Deadline *time.Time }
func CreateAndWaitCluster ¶
func CreateAndWaitCluster(ctx context.Context, api API, opts CreateClusterOpts) (*CreateClusterResult, error)
func WaitCluster ¶
type CreateKubernetesClusterRequest ¶
type CreateKubernetesClusterRequest struct { OpaqueUserAuth []byte `json:"opaque_user_auth,omitempty"` Ephemeral bool `json:"ephemeral,omitempty"` DocumentedPurpose string `json:"documented_purpose,omitempty"` AuthorizedSshKeys []string `json:"authorized_ssh_keys,omitempty"` MachineType string `json:"machine_type,omitempty"` Feature []string `json:"feature,omitempty"` }
type CreateKubernetesClusterResponse ¶
type CreateKubernetesClusterResponse struct { Status string `json:"status,omitempty"` ClusterId string `json:"cluster_id,omitempty"` Cluster *KubernetesCluster `json:"cluster,omitempty"` Registry *ImageRegistry `json:"registry,omitempty"` BuildCluster *BuildCluster `json:"build_cluster,omitempty"` Deadline string `json:"deadline,omitempty"` }
type GetKubernetesClusterResponse ¶
type GetKubernetesClusterResponse struct { Cluster *KubernetesCluster `json:"cluster,omitempty"` Registry *ImageRegistry `json:"registry,omitempty"` BuildCluster *BuildCluster `json:"build_cluster,omitempty"` Deadline string `json:"deadline,omitempty"` }
func GetCluster ¶
type ImageRegistry ¶
type KubernetesCluster ¶
type KubernetesCluster struct { ClusterId string `json:"cluster_id,omitempty"` Created string `json:"created,omitempty"` Deadline string `json:"deadline,omitempty"` SSHProxyEndpoint string `json:"ssh_proxy_endpoint,omitempty"` SshPrivateKey []byte `json:"ssh_private_key,omitempty"` DocumentedPurpose string `json:"documented_purpose,omitempty"` Shape *ClusterShape `json:"shape,omitempty"` EndpointAddress string `json:"endpoint_address,omitempty"` CertificateAuthorityData []byte `json:"certificate_authority_data,omitempty"` ClientCertificateData []byte `json:"client_certificate_data,omitempty"` ClientKeyData []byte `json:"client_key_data,omitempty"` KubernetesDistribution string `json:"kubernetes_distribution,omitempty"` Platform []string `json:"platform,omitempty"` IngressDomain string `json:"ingress_domain,omitempty"` Label []*LabelEntry `json:"label,omitempty"` }
type KubernetesClusterList ¶
type KubernetesClusterList struct {
Clusters []KubernetesCluster `json:"cluster"`
}
func ListClusters ¶
func ListClusters(ctx context.Context, api API) (*KubernetesClusterList, error)
type LabelEntry ¶
type StartCreateKubernetesClusterResponse ¶
type StartCreateKubernetesClusterResponse struct { ClusterId string `json:"cluster_id,omitempty"` ClusterFragment *KubernetesCluster `json:"cluster_fragment,omitempty"` Registry *ImageRegistry `json:"registry,omitempty"` Deadline string `json:"deadline,omitempty"` }
func CreateCluster ¶
func CreateCluster(ctx context.Context, api API, opts CreateClusterOpts) (*StartCreateKubernetesClusterResponse, error)
Click to show internal directories.
Click to hide internal directories.