Struct shipcat_definitions::structs::EnvVars[][src]

pub struct EnvVars {
    pub plain: BTreeMap<String, String>,
    pub secrets: BTreeSet<String>,
}
Expand description

Environment variables to inject

These have a few special convenience behaviours: “IN_VAULT” values is replaced with value from vault/secret/folder/service/KEY One off tera templates are calculated with a limited template context

IN_VAULT secrets will all be put in a single kubernetes Secret object. One off templates can be put in a Secret object if marked | as_secret.

env:
  # plain eva:
  PLAIN_EVAR: plaintextvalue

  # vault lookup:
  DATABASE_URL: IN_VAULT

  # templated evars:
  INTERNAL_AUTH_URL: "{{ base_urls.services }}/auth/internal"

The vault lookup will GET from the region specific path for vault, in the webapp subfolder, getting the DATABASE_URL secret.

The kong templating will use the secrets read from the Config for this region, and replace them internally.

The as_secret destinction only serves to put AUTH_SECRET into Manifest::secrets.

Fields

plain: BTreeMap<String, String>

Plain text (non-secret) environment variables

secrets: BTreeSet<String>

Environment variable names stored in secrets

This is an internal property that is exposed as an output only.

Implementations

impl EnvVars[src]

pub fn new(env: BTreeMap<String, String>) -> Self[src]

pub fn verify(&self) -> Result<()>[src]

pub fn vault_secrets(&mut self) -> BTreeSet<String>[src]

pub fn template_secrets(&mut self) -> BTreeMap<String, String>[src]

impl EnvVars[src]

pub fn template(&mut self, ctx: &Context) -> Result<()>[src]

Trait Implementations

impl Clone for EnvVars[src]

fn clone(&self) -> EnvVars[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 EnvVars[src]

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

Formats the value using the given formatter. Read more

impl Default for EnvVars[src]

fn default() -> EnvVars[src]

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

impl<'de> Deserialize<'de> for EnvVars where
    EnvVars: Default
[src]

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

Deserialize this value from the given Serde deserializer. Read more

impl Serialize for EnvVars[src]

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
    __S: Serializer
[src]

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

impl RefUnwindSafe for EnvVars

impl Send for EnvVars

impl Sync for EnvVars

impl Unpin for EnvVars

impl UnwindSafe for EnvVars

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, U> Into<U> for T where
    U: From<T>, 
[src]

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

Performs the conversion.

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>, 
[src]

pub fn vzip(self) -> V[src]

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