BuildOptions

Struct BuildOptions 

Source
#[non_exhaustive]
pub struct BuildOptions {
Show 16 fields pub source_provenance_hash: Vec<HashType>, pub requested_verify_option: VerifyOption, pub machine_type: MachineType, pub disk_size_gb: i64, pub substitution_option: SubstitutionOption, pub dynamic_substitutions: bool, pub automap_substitutions: bool, pub log_streaming_option: LogStreamingOption, pub worker_pool: String, pub pool: Option<PoolOption>, pub logging: LoggingMode, pub env: Vec<String>, pub secret_env: Vec<String>, pub volumes: Vec<Volume>, pub default_logs_bucket_behavior: DefaultLogsBucketBehavior, pub enable_structured_logging: bool, /* private fields */
}
Expand description

Optional arguments to enable specific features of builds.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§source_provenance_hash: Vec<HashType>

Requested hash for SourceProvenance.

§requested_verify_option: VerifyOption

Requested verifiability options.

§machine_type: MachineType

Compute Engine machine type on which to run the build.

§disk_size_gb: i64

Requested disk size for the VM that runs the build. Note that this is NOT “disk free”; some of the space will be used by the operating system and build utilities. Also note that this is the minimum disk size that will be allocated for the build – the build may run with a larger disk than requested. At present, the maximum disk size is 4000GB; builds that request more than the maximum are rejected with an error.

§substitution_option: SubstitutionOption

Option to specify behavior when there is an error in the substitution checks.

NOTE: this is always set to ALLOW_LOOSE for triggered builds and cannot be overridden in the build configuration file.

§dynamic_substitutions: bool

Option to specify whether or not to apply bash style string operations to the substitutions.

NOTE: this is always enabled for triggered builds and cannot be overridden in the build configuration file.

§automap_substitutions: bool

Option to include built-in and custom substitutions as env variables for all build steps.

§log_streaming_option: LogStreamingOption

Option to define build log streaming behavior to Cloud Storage.

§worker_pool: String
👎Deprecated

This field deprecated; please use pool.name instead.

§pool: Option<PoolOption>

Optional. Specification for execution on a WorkerPool.

See running builds in a private pool for more information.

§logging: LoggingMode

Option to specify the logging mode, which determines if and where build logs are stored.

§env: Vec<String>

A list of global environment variable definitions that will exist for all build steps in this build. If a variable is defined in both globally and in a build step, the variable will use the build step value.

The elements are of the form “KEY=VALUE” for the environment variable “KEY” being given the value “VALUE”.

§secret_env: Vec<String>

A list of global environment variables, which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build’s Secret. These variables will be available to all build steps in this build.

§volumes: Vec<Volume>

Global list of volumes to mount for ALL build steps

Each volume is created as an empty volume prior to starting the build process. Upon completion of the build, volumes and their contents are discarded. Global volume names and paths cannot conflict with the volumes defined a build step.

Using a global volume in a build with only one step is not valid as it is indicative of a build request with an incorrect configuration.

§default_logs_bucket_behavior: DefaultLogsBucketBehavior

Optional. Option to specify how default logs buckets are setup.

§enable_structured_logging: bool

Optional. Option to specify whether structured logging is enabled.

If true, JSON-formatted logs are parsed as structured logs.

Implementations§

Source§

impl BuildOptions

Source

pub fn new() -> Self

Source

pub fn set_source_provenance_hash<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<HashType>,

Sets the value of source_provenance_hash.

§Example
use google_cloud_build_v1::model::hash::HashType;
let x = BuildOptions::new().set_source_provenance_hash([
    HashType::Sha256,
    HashType::Md5,
    HashType::GoModuleH1,
]);
Source

pub fn set_requested_verify_option<T: Into<VerifyOption>>(self, v: T) -> Self

Sets the value of requested_verify_option.

§Example
use google_cloud_build_v1::model::build_options::VerifyOption;
let x0 = BuildOptions::new().set_requested_verify_option(VerifyOption::Verified);
Source

pub fn set_machine_type<T: Into<MachineType>>(self, v: T) -> Self

Sets the value of machine_type.

§Example
use google_cloud_build_v1::model::build_options::MachineType;
let x0 = BuildOptions::new().set_machine_type(MachineType::N1Highcpu8);
let x1 = BuildOptions::new().set_machine_type(MachineType::N1Highcpu32);
let x2 = BuildOptions::new().set_machine_type(MachineType::E2Highcpu8);
Source

pub fn set_disk_size_gb<T: Into<i64>>(self, v: T) -> Self

Sets the value of disk_size_gb.

§Example
let x = BuildOptions::new().set_disk_size_gb(42);
Source

pub fn set_substitution_option<T: Into<SubstitutionOption>>(self, v: T) -> Self

Sets the value of substitution_option.

§Example
use google_cloud_build_v1::model::build_options::SubstitutionOption;
let x0 = BuildOptions::new().set_substitution_option(SubstitutionOption::AllowLoose);
Source

pub fn set_dynamic_substitutions<T: Into<bool>>(self, v: T) -> Self

Sets the value of dynamic_substitutions.

§Example
let x = BuildOptions::new().set_dynamic_substitutions(true);
Source

pub fn set_automap_substitutions<T: Into<bool>>(self, v: T) -> Self

Sets the value of automap_substitutions.

§Example
let x = BuildOptions::new().set_automap_substitutions(true);
Source

pub fn set_log_streaming_option<T: Into<LogStreamingOption>>(self, v: T) -> Self

Sets the value of log_streaming_option.

§Example
use google_cloud_build_v1::model::build_options::LogStreamingOption;
let x0 = BuildOptions::new().set_log_streaming_option(LogStreamingOption::StreamOn);
let x1 = BuildOptions::new().set_log_streaming_option(LogStreamingOption::StreamOff);
Source

pub fn set_worker_pool<T: Into<String>>(self, v: T) -> Self

👎Deprecated

Sets the value of worker_pool.

§Example
let x = BuildOptions::new().set_worker_pool("example");
Source

pub fn set_pool<T>(self, v: T) -> Self
where T: Into<PoolOption>,

Sets the value of pool.

§Example
use google_cloud_build_v1::model::build_options::PoolOption;
let x = BuildOptions::new().set_pool(PoolOption::default()/* use setters */);
Source

pub fn set_or_clear_pool<T>(self, v: Option<T>) -> Self
where T: Into<PoolOption>,

Sets or clears the value of pool.

§Example
use google_cloud_build_v1::model::build_options::PoolOption;
let x = BuildOptions::new().set_or_clear_pool(Some(PoolOption::default()/* use setters */));
let x = BuildOptions::new().set_or_clear_pool(None::<PoolOption>);
Source

pub fn set_logging<T: Into<LoggingMode>>(self, v: T) -> Self

Sets the value of logging.

§Example
use google_cloud_build_v1::model::build_options::LoggingMode;
let x0 = BuildOptions::new().set_logging(LoggingMode::Legacy);
let x1 = BuildOptions::new().set_logging(LoggingMode::GcsOnly);
let x2 = BuildOptions::new().set_logging(LoggingMode::CloudLoggingOnly);
Source

pub fn set_env<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of env.

§Example
let x = BuildOptions::new().set_env(["a", "b", "c"]);
Source

pub fn set_secret_env<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of secret_env.

§Example
let x = BuildOptions::new().set_secret_env(["a", "b", "c"]);
Source

pub fn set_volumes<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<Volume>,

Sets the value of volumes.

§Example
use google_cloud_build_v1::model::Volume;
let x = BuildOptions::new()
    .set_volumes([
        Volume::default()/* use setters */,
        Volume::default()/* use (different) setters */,
    ]);
Source

pub fn set_default_logs_bucket_behavior<T: Into<DefaultLogsBucketBehavior>>( self, v: T, ) -> Self

Sets the value of default_logs_bucket_behavior.

§Example
use google_cloud_build_v1::model::build_options::DefaultLogsBucketBehavior;
let x0 = BuildOptions::new().set_default_logs_bucket_behavior(DefaultLogsBucketBehavior::RegionalUserOwnedBucket);
let x1 = BuildOptions::new().set_default_logs_bucket_behavior(DefaultLogsBucketBehavior::LegacyBucket);
Source

pub fn set_enable_structured_logging<T: Into<bool>>(self, v: T) -> Self

Sets the value of enable_structured_logging.

§Example
let x = BuildOptions::new().set_enable_structured_logging(true);

Trait Implementations§

Source§

impl Clone for BuildOptions

Source§

fn clone(&self) -> BuildOptions

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 BuildOptions

Source§

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

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

impl Default for BuildOptions

Source§

fn default() -> BuildOptions

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

impl Message for BuildOptions

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for BuildOptions

Source§

fn eq(&self, other: &BuildOptions) -> 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 StructuralPartialEq for BuildOptions

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> 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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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>,