BuildConfig

Struct BuildConfig 

Source
#[non_exhaustive]
pub struct BuildConfig { pub build: String, pub runtime: String, pub entry_point: String, pub source: Option<Source>, pub source_provenance: Option<SourceProvenance>, pub worker_pool: String, pub environment_variables: HashMap<String, String>, pub docker_registry: DockerRegistry, pub docker_repository: String, pub service_account: String, pub runtime_update_policy: Option<RuntimeUpdatePolicy>, /* private fields */ }
Expand description

Describes the Build step of the function that builds a container from the given source.

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.
§build: String

Output only. The Cloud Build name of the latest successful deployment of the function.

§runtime: String

The runtime in which to run the function. Required when deploying a new function, optional when updating an existing function. For a complete list of possible choices, see the gcloud command reference.

§entry_point: String

The name of the function (as defined in source code) that will be executed. Defaults to the resource name suffix, if not specified. For backward compatibility, if function with given name is not found, then the system will try to use function named “function”. For Node.js this is name of a function exported by the module specified in source_location.

§source: Option<Source>

The location of the function source code.

§source_provenance: Option<SourceProvenance>

Output only. A permanent fixed identifier for source.

§worker_pool: String

Name of the Cloud Build Custom Worker Pool that should be used to build the function. The format of this field is projects/{project}/locations/{region}/workerPools/{workerPool} where {project} and {region} are the project id and region respectively where the worker pool is defined and {workerPool} is the short name of the worker pool.

If the project id is not the same as the function, then the Cloud Functions Service Agent (service-<project_number>@gcf-admin-robot.iam.gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project.

§environment_variables: HashMap<String, String>

User-provided build-time environment variables for the function

§docker_registry: DockerRegistry
👎Deprecated

Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. Deprecated: As of March 2025, CONTAINER_REGISTRY option is no longer available in response to Container Registry’s deprecation: https://cloud.google.com/artifact-registry/docs/transition/transition-from-gcr Please use Artifact Registry instead, which is the default choice.

If unspecified, it defaults to ARTIFACT_REGISTRY. If docker_repository field is specified, this field should either be left unspecified or set to ARTIFACT_REGISTRY.

§docker_repository: String

Repository in Artifact Registry to which the function docker image will be pushed after it is built by Cloud Build. If specified by user, it is created and managed by user with a customer managed encryption key. Otherwise, GCF will create and use a repository named ‘gcf-artifacts’ for every deployed region.

It must match the pattern projects/{project}/locations/{location}/repositories/{repository}. Repository format must be ‘DOCKER’.

§service_account: String

Service account to be used for building the container. The format of this field is projects/{projectId}/serviceAccounts/{serviceAccountEmail}.

§runtime_update_policy: Option<RuntimeUpdatePolicy>

This controls when security patches are applied to the runtime environment.

Implementations§

Source§

impl BuildConfig

Source

pub fn new() -> Self

Source

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

Sets the value of build.

Source

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

Sets the value of runtime.

Source

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

Sets the value of entry_point.

Source

pub fn set_source<T>(self, v: T) -> Self
where T: Into<Source>,

Sets the value of source.

Source

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

Sets or clears the value of source.

Source

pub fn set_source_provenance<T>(self, v: T) -> Self

Sets the value of source_provenance.

Source

pub fn set_or_clear_source_provenance<T>(self, v: Option<T>) -> Self

Sets or clears the value of source_provenance.

Source

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

Sets the value of worker_pool.

Source

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

Sets the value of environment_variables.

Source

pub fn set_docker_registry<T: Into<DockerRegistry>>(self, v: T) -> Self

👎Deprecated

Sets the value of docker_registry.

Source

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

Sets the value of docker_repository.

Source

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

Sets the value of service_account.

Source

pub fn set_runtime_update_policy<T: Into<Option<RuntimeUpdatePolicy>>>( self, v: T, ) -> Self

Sets the value of runtime_update_policy.

Note that all the setters affecting runtime_update_policy are mutually exclusive.

Source

pub fn automatic_update_policy(&self) -> Option<&Box<AutomaticUpdatePolicy>>

The value of runtime_update_policy if it holds a AutomaticUpdatePolicy, None if the field is not set or holds a different branch.

Source

pub fn set_automatic_update_policy<T: Into<Box<AutomaticUpdatePolicy>>>( self, v: T, ) -> Self

Sets the value of runtime_update_policy to hold a AutomaticUpdatePolicy.

Note that all the setters affecting runtime_update_policy are mutually exclusive.

Source

pub fn on_deploy_update_policy(&self) -> Option<&Box<OnDeployUpdatePolicy>>

The value of runtime_update_policy if it holds a OnDeployUpdatePolicy, None if the field is not set or holds a different branch.

Source

pub fn set_on_deploy_update_policy<T: Into<Box<OnDeployUpdatePolicy>>>( self, v: T, ) -> Self

Sets the value of runtime_update_policy to hold a OnDeployUpdatePolicy.

Note that all the setters affecting runtime_update_policy are mutually exclusive.

Trait Implementations§

Source§

impl Clone for BuildConfig

Source§

fn clone(&self) -> BuildConfig

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 BuildConfig

Source§

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

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

impl Default for BuildConfig

Source§

fn default() -> BuildConfig

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

impl Message for BuildConfig

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for BuildConfig

Source§

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

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

Source§

impl<T> ErasedDestructor for T
where T: 'static,