# Functions
EncodeClusterName encodes cluster name for SNI matching
For example:
* Main cluster is main.example.com * Remote cluster is remote.example.com
After 'tsh login' the URL of the Kubernetes endpoint of 'remote.example.com' when accessed 'via main.example.com' looks like this:
'k72656d6f74652e6578616d706c652e636f6d0a.main.example.com'
For this to work, users have to add this address in public_addr section of kubernetes service to include 'main.example.com' in X509 '*.main.example.com' domain name
where part '72656d6f74652e6578616d706c652e636f6d0a' is a hex encoded remote.example.com
It is hex encoded to allow wildcard matching to work.
GetKubeClient returns instance of client to the kubernetes cluster using in-cluster configuration if available and falling back to configuration file under configPath otherwise.
GetKubeConfig returns kubernetes configuration from configPath file or, by default reads in-cluster configuration.