Documentation ¶
Index ¶
- Constants
- func ClusterClientset(config *rest.Config) (*kubeclient.Clientset, error)
- func ClusterServiceAccountName(joiningClusterName, hostClusterName string) string
- func GetNamespace(hostClusterContext string, kubeconfig string, config FedConfig) (string, error)
- func HealthCheckRoleName(serviceAccountName, namespace string) string
- func HostClientset(config *rest.Config) (*kubeclient.Clientset, error)
- func IsFederatedAPIResource(kind, group string) bool
- func RoleName(serviceAccountName string) string
- func WriteUnstructuredToYaml(unstructuredObj *unstructured.Unstructured, w io.Writer) error
- type FedConfig
Constants ¶
const FederatedKindPrefix = "Federated"
Variables ¶
This section is empty.
Functions ¶
func ClusterClientset ¶
func ClusterClientset(config *rest.Config) (*kubeclient.Clientset, error)
ClusterClientset provides a kubernetes API compliant clientset to communicate with the joining cluster's kubernetes API server.
func ClusterServiceAccountName ¶
ClusterServiceAccountName returns the name of a service account whose credentials are used by the host cluster to access the client cluster.
func GetNamespace ¶
GetNamespace returns namespace of the current context
func HealthCheckRoleName ¶
HealthCheckRoleName returns the name of a ClusterRole and its associated ClusterRoleBinding that is used to allow the service account to check the health of the cluster and list nodes.
func HostClientset ¶
func HostClientset(config *rest.Config) (*kubeclient.Clientset, error)
HostClientset provides a kubernetes API compliant clientset to communicate with the host cluster's kubernetes API server.
func IsFederatedAPIResource ¶
IsFederatedAPIResource checks if a resource with the given Kind and group is a Federated one
func RoleName ¶
RoleName returns the name of a Role or ClusterRole and its associated RoleBinding or ClusterRoleBinding that are used to allow the service account to access necessary resources on the cluster.
func WriteUnstructuredToYaml ¶
func WriteUnstructuredToYaml(unstructuredObj *unstructured.Unstructured, w io.Writer) error
Types ¶
type FedConfig ¶
type FedConfig interface { HostConfig(context, kubeconfigPath string) (*rest.Config, error) ClusterConfig(context, kubeconfigPath string) (*rest.Config, error) GetClientConfig(ontext, kubeconfigPath string) clientcmd.ClientConfig }
FedConfig provides a rest config based on the filesystem kubeconfig (via pathOptions) and context in order to talk to the host kubernetes cluster and the joining kubernetes cluster.
func NewFedConfig ¶
func NewFedConfig(pathOptions *clientcmd.PathOptions) FedConfig
NewFedConfig creates a fedConfig for `kubefedctl` commands.