CloudConfig

Struct CloudConfig 

Source
pub struct CloudConfig {
    pub auth: Option<Auth>,
    pub auth_type: Option<String>,
    pub auth_methods: Option<Vec<String>>,
    pub profile: Option<String>,
    pub interface: Option<String>,
    pub region_name: Option<String>,
    pub name: Option<String>,
    pub cacert: Option<String>,
    pub verify: Option<bool>,
    pub options: HashMap<String, Value>,
}
Expand description

Configuration object representing a single connection to the concrete cloud.

Connection to the cloud uses this object.

Fields§

§auth: Option<Auth>

Authorization data.

§auth_type: Option<String>

Authorization type. While it can be enum it would make hard to extend SDK with custom implementations.

§auth_methods: Option<Vec<String>>

Authorization methods (in the case when auth_type = multifactor).

§profile: Option<String>

Vendor Profile (by name from clouds-public.yaml or TBD: URL).

§interface: Option<String>

Interface name to be used for endpoints selection.

§region_name: Option<String>

Region name.

§name: Option<String>

Alternative connection name which is may be used to provide some meaningful name when CloudConfig is constructed directly without clouds.yaml file.

§cacert: Option<String>

Custom CA Certificate.

§verify: Option<bool>

Verify SSL Certificates.

§options: HashMap<String, Value>

All other options.

Implementations§

Source§

impl CloudConfig

CloudConfig struct implementation.

Source

pub fn from_env() -> Result<Self, ConfigError>

Construct CloudConfig from environment variables.

Historically keystoneauth python library parses relevant environment variables. OpenStackSDK attempts to structure the cloud configuration introducing an explicit “auth” object holding the authentication data. Pretty unfortunately this structure gets very broken: OS_USER_ID is placed under the auth, OS_AUTH_URL is the auth_url under the auth, OS_AUTH_TYPE is auth_type on the config level and so on.

To keep this still manageable without keeping at full mapping, this function parses environment variables with the OS_ prefix into the CloudConfig but uses auth property separately populated out of all environment variables with the same OS_ prefix.

Source

pub fn update(&mut self, update: &CloudConfig)

Update unset CloudConfig with values from the update var.

Trait Implementations§

Source§

impl Clone for CloudConfig

Source§

fn clone(&self) -> CloudConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CloudConfig

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for CloudConfig

Source§

fn default() -> CloudConfig

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for CloudConfig

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl TryFrom<&CloudConfig> for AuthTokenScope

Build AuthTokenScope data from CloudConfig

Source§

type Error = AuthTokenScopeError

The type returned in the event of a conversion error.
Source§

fn try_from(config: &CloudConfig) -> Result<Self, Self::Error>

Performs the conversion.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

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

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,