[−][src]Struct netlify_toml::Config
Config represents the global configuration within a netlify.toml file.
Fields
build: Option<Build>
context: Option<HashMap<String, Context>>
redirects: Option<Vec<Redirect>>
headers: Option<Vec<Header>>
template: Option<Template>
Implementations
impl Config
[src]
pub fn scoped_env(self, ctx: &str, branch: &str) -> HashMap<String, String>
[src]
Return a HashMap that aggregates all environment variables for a context within a git branch.
Arguments
ctx
- The context name, for example deploy-preview
, branch-deploy
or production
.
branch
- The deploy branch name, for example make-changes-to-my-site
.
Example
let io = r#" [build] command = "make site" "#; let config = netlify_toml::from_str(io).unwrap(); let env = config.scoped_env("deploy-preview", "new-styles");
pub fn scoped_redirects(&self, ctx: &str, branch: &str) -> Option<Vec<Redirect>>
[src]
Return a list of aggregated redirects for a context within a branch.
If a context includes a redirect that's defined by the global list, the redirect is replaced in the global list to preserve this ordering. This match is based on the exact comparison of the origin value.
If a context includes a redirect that's not defined by the global list, the redirect is appended before any other redirect in the global list to give it a higher precedence.
Arguments
ctx
- The context name, for example deploy-preview
, branch-deploy
or production
.
branch
- The deploy branch name, for example make-changes-to-my-site
.
Example
let io = r#" [[redirects]] from = "/api/*" to = "https://production.api.com/:splat" [[context.deploy-preview.redirects]] from = "/api/*" to = "https://staging.api.com/:splat" "#; let config = netlify_toml::from_str(io).unwrap(); let redirects = config.scoped_redirects("deploy-preview", "new-styles").expect("missing redirects"); assert_eq!(1, redirects.len()); let dest = redirects.first().and_then(|r| r.to.as_ref()).expect("missing destination"); assert_eq!("https://staging.api.com/:splat", dest.as_str());
pub fn scoped_headers(&self, ctx: &str, branch: &str) -> Option<Vec<Header>>
[src]
Return a list of aggregated header rules for a context within a branch.
If a context includes a header rule that's defined by the global list, the header rule is replaced in the global list to preserve this ordering. This match is based on the exact comparison of the origin value.
If a context includes a header rule that's not defined by the global list, the header rule is appended before any other header rules in the global list to give it a higher precedence.
Arguments
ctx
- The context name, for example deploy-preview
, branch-deploy
or production
.
branch
- The deploy branch name, for example make-changes-to-my-site
.
Example
let io = r#" [[headers]] for = "/foo" values = {X-Foo = "Bar, Baz, Qux"} [[headers]] for = "/bar" values = {X-Foo = "Bar, Baz, Qux"} [[context.deploy-preview.headers]] for = "/foo" values = {X-BAR = "QUUX"} "#; let config = netlify_toml::from_str(&io).unwrap(); let headers = config .scoped_headers("deploy-preview", "new-styles") .expect("missing headers"); assert_eq!(2, headers.len()); let header = headers.first().unwrap(); assert_eq!("/foo", header.path); assert!(header.headers.contains_key("X-BAR")); assert!(!header.headers.contains_key("X-Foo"));
Trait Implementations
impl Debug for Config
[src]
impl Default for Config
[src]
impl<'de> Deserialize<'de> for Config
[src]
pub fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl PartialEq<Config> for Config
[src]
impl Serialize for Config
[src]
pub fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralPartialEq for Config
[src]
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]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
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]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,