Documentation ¶
Index ¶
- Constants
- func ClusterRoleName(federationName, serviceAccountName string) string
- func ClusterServiceAccountName(joiningClusterName, hostContext string) string
- func CreateKubeconfigSecret(clientset client.Interface, kubeconfig *clientcmdapi.Config, ...) (*api.Secret, error)
- func GetClientsetFromSecret(secret *api.Secret, serverAddress string) (*client.Clientset, error)
- func GetServerAddress(c *federationapi.Cluster) (string, error)
- func GetVersionedClientForRBACOrFail(hostFactory cmdutil.Factory) (client.Interface, error)
- type AdminConfig
- type NoRBACAPIError
- type SubcommandOptions
Constants ¶
const ( // KubeconfigSecretDataKey is the key name used in the secret to // stores a cluster's credentials. KubeconfigSecretDataKey = "kubeconfig" // Used in and to create the kube-dns configmap storing the zone info FedDomainMapKey = "federations" KubeDnsConfigmapName = "kube-dns" FedDNSZoneName = "dns-zone-name" FedNameServer = "nameserver" FedDNSProvider = "dns-provider" FedDNSProviderCoreDNS = "coredns" KubeDnsStubDomains = "stubDomains" // DefaultFederationSystemNamespace is the namespace in which // federation system components are hosted. DefaultFederationSystemNamespace = "federation-system" KubeAPIQPS = 20.0 KubeAPIBurst = 30 )
Variables ¶
This section is empty.
Functions ¶
func ClusterRoleName ¶
ClusterRoleName returns the name of a ClusterRole and its associated ClusterRoleBinding that are used to allow the service account to access necessary resources on the cluster.
func ClusterServiceAccountName ¶
ClusterServiceAccountName returns the name of a service account whose credentials are used by the host cluster to access the client cluster.
func CreateKubeconfigSecret ¶
func GetClientsetFromSecret ¶
func GetServerAddress ¶
func GetServerAddress(c *federationapi.Cluster) (string, error)
func GetVersionedClientForRBACOrFail ¶
GetVersionedClientForRBACOrFail discovers the versioned rbac APIs and gets the versioned clientset for either the preferred version or the first listed version (if no preference listed) TODO: We need to evaluate the usage of RESTMapper interface to achieve te same functionality
Types ¶
type AdminConfig ¶
type AdminConfig interface { // PathOptions provides filesystem based kubeconfig access. PathOptions() *clientcmd.PathOptions // FedClientSet provides a federation API compliant clientset // to communicate with the federation control plane api server FederationClientset(context, kubeconfigPath string) (*fedclient.Clientset, error) // ClusterFactory provides a mechanism to communicate with the // cluster derived from the context and the kubeconfig. ClusterFactory(context, kubeconfigPath string) cmdutil.Factory }
AdminConfig provides a filesystem based kubeconfig (via `PathOptions()`) and a mechanism to talk to the federation host cluster and the federation control plane api server.
func NewAdminConfig ¶
func NewAdminConfig(pathOptions *clientcmd.PathOptions) AdminConfig
NewAdminConfig creates an admin config for `kubefed` commands.
type NoRBACAPIError ¶
type NoRBACAPIError struct {
// contains filtered or unexported fields
}
used to identify the rbac api availability error.
func (*NoRBACAPIError) Error ¶
func (n *NoRBACAPIError) Error() string
type SubcommandOptions ¶
type SubcommandOptions struct { Name string Host string FederationSystemNamespace string Kubeconfig string }
SubcommandOptions holds the configuration required by the subcommands of `kubefed`.
func (*SubcommandOptions) Bind ¶
func (o *SubcommandOptions) Bind(flags *pflag.FlagSet)