[][src]Struct fxa_email_service::settings::Settings

pub struct Settings {
    pub authdb: AuthDb,
    pub aws: Aws,
    pub deliveryproblemlimits: DeliveryProblemLimits,
    pub env: Env,
    pub hmackey: String,
    pub host: Host,
    pub log: Log,
    pub port: u16,
    pub provider: Provider,
    pub redis: Redis,
    pub secretkey: String,
    pub sender: Sender,
    pub sendgrid: Option<Sendgrid>,
    pub sentry: Option<Sentry>,
    pub smtp: Smtp,
    pub socketlabs: Option<SocketLabs>,
}

The root settings object.

Fields

Settings related to fxa-auth-db-mysql, which is used to store bounce, complaint and delivery notifications.

Settings for AWS, including region, access keys and URLs for SQS queues.

Controls the thresholds and behaviour for bounce and complaint reports. If delivery problem limits are enabled, emails sent to offending addresses will fail with a 429 error.

The env sets which environment we are in. It defaults to dev if not set.

The HMAC key to use internally for hashing message ids. This is sensitive data and will not be logged.

The logging settings, about level and formatting.

The port this application is listening to.

Settings controlling the default email provider.

Settings for Redis, which is used to store metadata associated with a message.

Setting for a secret key used by Rocket.

Controls the name and email address that are used for the From and Sender email headers.

Settings for Sendgrid.

Settings for Sentry.

Settings for SMTP custom provider.

Settings for SocketLabs.

Methods

impl Settings
[src]

Construct a Settings instance, populating it with data from the file system and local environment.

Precedence (earlier items override later ones):

  1. Environment variables: $FXA_EMAIL_<UPPERCASE_KEY_NAME>
  2. File: config/local.json
  3. File: config/<$FXA_EMAIL_ENV>.json
  4. File: config/default.json

Immediately before returning, the parsed config object will be logged to the console.

Create rocket configuration based on the environment variable. Defaults to dev mode if FXA_EMAIL_ENV is not set.

Trait Implementations

impl Default for Settings
[src]

impl Debug for Settings
[src]

impl Serialize for Settings
[src]

impl<'de> Deserialize<'de> for Settings
[src]

impl Value for Settings
[src]

Auto Trait Implementations

impl Send for Settings

impl Sync for Settings

Blanket Implementations

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

impl<T> From for T
[src]

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

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

The type returned in the event of a conversion error.

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

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

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

The type returned in the event of a conversion error.

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

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

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

impl<T> Same for T

Should always be Self

impl<T> Typeable for T where
    T: Any

Get the TypeId of this object.

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

Marks self as using is_human_readable == true

Marks self as using is_human_readable == false

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized

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