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
}
Expand description

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

Fields

cluster_url: Url
Expand description

The configured cluster url

default_ns: String
Expand description

The configured default namespace

root_cert: Option<Vec<Vec<u8>>>
Expand description

The configured root certificate

headers: HeaderMap
Expand description

Default headers to be used to communicate with the Kubernetes API

timeout: Option<Duration>
Expand description

Timeout for calls to the Kubernetes API.

A value of None means no timeout

accept_invalid_certs: bool
Expand description

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]

fn clone(&self) -> Config[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for Config[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl TryFrom<Config> for Client[src]

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

Convert Config into a Client

type Error = Error

The type returned in the event of a conversion error.

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

type Error = Error

The type returned in the event of a conversion error.

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

Performs the conversion.

impl TryFrom<Config> for Service[src]

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

Convert Config into a Service

type Error = Error

The type returned in the event of a conversion error.

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]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

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

pub fn into(self) -> U[src]

Performs the conversion.

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.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

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

pub fn vzip(self) -> V