Skip to main content

BootstrapConfig

Struct BootstrapConfig 

Source
pub struct BootstrapConfig { /* private fields */ }
Expand description

Environment-driven bootstrap settings for Spring Cloud Config Server.

This is intended for real service startup paths where configuration should be loaded from environment variables instead of hard-coded values.

Implementations§

Source§

impl BootstrapConfig

Source

pub const SERVER_URL_ENV: &'static str = "SPRING_CONFIG_SERVER_URL"

Environment variable used for the Config Server base URL.

Source

pub const APPLICATION_ENV: &'static str = "SPRING_APPLICATION_NAME"

Environment variable used for the application name.

Source

pub const PROFILES_ENV: &'static str = "SPRING_PROFILES_ACTIVE"

Environment variable used for the active profile list.

Source

pub const LABEL_ENV: &'static str = "SPRING_CONFIG_LABEL"

Environment variable used for the config label.

Source

pub const USERNAME_ENV: &'static str = "SPRING_CONFIG_USERNAME"

Environment variable used for the Config Server username.

Source

pub const PASSWORD_ENV: &'static str = "SPRING_CONFIG_PASSWORD"

Environment variable used for the Config Server password.

Source

pub const BEARER_TOKEN_ENV: &'static str = "SPRING_CONFIG_BEARER_TOKEN"

Environment variable used for a Config Server bearer token.

Source

pub const INSECURE_TLS_ENV: &'static str = "SPRING_CONFIG_INSECURE_TLS"

Environment variable used to disable TLS certificate and hostname validation.

Source

pub const TIMEOUT_SECONDS_ENV: &'static str = "SPRING_CONFIG_TIMEOUT_SECS"

Environment variable used for request timeout in seconds.

Source

pub fn new<A, S, I, P>( server_url: A, application: S, profiles: I, ) -> Result<Self>
where A: Into<String>, S: Into<String>, I: IntoIterator<Item = P>, P: Into<String>,

Creates a bootstrap configuration explicitly.

Source

pub fn from_env() -> Result<Self>

Builds a bootstrap configuration from environment variables.

Required:

  • SPRING_CONFIG_SERVER_URL
  • SPRING_APPLICATION_NAME

Optional:

  • SPRING_PROFILES_ACTIVE defaults to default
  • SPRING_CONFIG_LABEL
  • SPRING_CONFIG_USERNAME
  • SPRING_CONFIG_PASSWORD
  • SPRING_CONFIG_BEARER_TOKEN
  • SPRING_CONFIG_INSECURE_TLS
  • SPRING_CONFIG_TIMEOUT_SECS
Source

pub fn label(self, label: impl Into<String>) -> Self

Sets the config label.

Source

pub fn basic_auth( self, username: impl Into<String>, password: impl Into<String>, ) -> Self

Sets HTTP Basic authentication.

Source

pub fn bearer_auth(self, token: impl Into<String>) -> Self

Sets Bearer token authentication.

Source

pub fn danger_accept_invalid_tls(self, enabled: bool) -> Self

Disables both TLS certificate and hostname validation for Config Server requests.

This should only be enabled for development or controlled test environments.

Source

pub fn timeout(self, timeout: Duration) -> Self

Sets the request timeout.

Source

pub fn server_url(&self) -> &str

Returns the Config Server base URL.

Source

pub fn application(&self) -> &str

Returns the Spring application name.

Source

pub fn profiles(&self) -> &[String]

Returns the active profiles.

Source

pub fn label_ref(&self) -> Option<&str>

Returns the configured label, when set.

Source

pub fn build_client(&self) -> Result<SpringConfigClient>

Builds a SpringConfigClient from the bootstrap settings.

Source

pub fn environment_request(&self) -> Result<EnvironmentRequest>

Builds an EnvironmentRequest from the bootstrap settings.

Source

pub async fn load_environment(&self) -> Result<Environment>

Loads the raw Spring Environment.

Source

pub async fn load_typed<T>(&self) -> Result<T>

Loads typed configuration directly from Spring Config Server.

Trait Implementations§

Source§

impl Clone for BootstrapConfig

Source§

fn clone(&self) -> BootstrapConfig

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 BootstrapConfig

Source§

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

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

impl PartialEq for BootstrapConfig

Source§

fn eq(&self, other: &BootstrapConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for BootstrapConfig

Source§

impl StructuralPartialEq for BootstrapConfig

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<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> 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