Struct kube::Config[][src]

pub struct Config {
    pub cluster_url: Url,
    pub default_ns: String,
    pub root_cert: Option<Vec<Vec<u8>>>,
    pub headers: HeaderMap,
    pub timeout: Option<Duration>,
    pub accept_invalid_certs: bool,
    // some fields omitted
}

Configuration object detailing things like cluster URL, default namespace, root certificates, and timeouts.

Fields

cluster_url: Url

The configured cluster url

default_ns: String

The configured default namespace

root_cert: Option<Vec<Vec<u8>>>

The configured root certificate

headers: HeaderMap

Default headers to be used to communicate with the Kubernetes API

timeout: Option<Duration>

Timeout for calls to the Kubernetes API.

A value of None means no timeout

accept_invalid_certs: bool

Whether to accept invalid ceritifacts

Implementations

impl Config[src]

pub fn new(cluster_url: Url) -> Self[src]

Construct a new config where only the cluster_url is set by the user. and everything else receives a default value.

Most likely you want to use Config::infer to infer the config from the environment.

pub async fn infer() -> Result<Self>[src]

Infer the configuration from the environment

Done by attempting to load in-cluster environment variables first, and then if that fails, trying the local kubeconfig.

Fails if inference from both sources fails

pub fn from_cluster_env() -> Result<Self>[src]

Create configuration from the cluster’s environment variables

This follows the standard API Access from a Pod and relies on you having the service account’s token mounted, as well as having given the service account rbac access to do what you need.

pub async fn from_kubeconfig(options: &KubeConfigOptions) -> Result<Self>[src]

Create configuration from the default local config file

This will respect the $KUBECONFIG evar, but otherwise default to ~/.kube/config. You can also customize what context/cluster/user you want to use here, but it will default to the current-context.

pub async fn from_custom_kubeconfig(
    kubeconfig: Kubeconfig,
    options: &KubeConfigOptions
) -> Result<Self>
[src]

Create configuration from a Kubeconfig struct

This bypasses kube’s normal config parsing to obtain custom functionality. Like if you need stacked kubeconfigs for instance - see #132

Trait Implementations

impl Clone for Config[src]

impl Debug for Config[src]

impl TryFrom<Config> for Client[src]

type Error = Error

The type returned in the event of a conversion error.

fn try_from(config: Config) -> Result<Self>[src]

Convert Config into a Client

impl TryFrom<Config> for HttpsConnector<HttpConnector>[src]

type Error = Error

The type returned in the event of a conversion error.

impl TryFrom<Config> for Service[src]

type Error = Error

The type returned in the event of a conversion error.

fn try_from(config: Config) -> Result<Self>[src]

Convert Config into a Service

Auto Trait Implementations

impl RefUnwindSafe for Config

impl Send for Config

impl Sync for Config

impl Unpin for Config

impl UnwindSafe for Config

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,