Class: Google::Apis::CloudfunctionsV2alpha::BuildConfig

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudfunctions_v2alpha/classes.rb,
lib/google/apis/cloudfunctions_v2alpha/representations.rb,
lib/google/apis/cloudfunctions_v2alpha/representations.rb

Overview

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BuildConfig

Returns a new instance of BuildConfig.



250
251
252
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 250

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#buildString

Output only. The Cloud Build name of the latest successful deployment of the function. Corresponds to the JSON property build

Returns:

  • (String)


181
182
183
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 181

def build
  @build
end

#docker_registryString

Docker Registry to use for this deployment. This configuration is only applicable to 1st Gen functions, 2nd Gen functions can only use Artifact Registry. If docker_repository field is specified, this field will be automatically set as ARTIFACT_REGISTRY. If unspecified, it currently defaults to CONTAINER_REGISTRY. This field may be overridden by the backend for eligible deployments. Corresponds to the JSON property dockerRegistry

Returns:

  • (String)


191
192
193
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 191

def docker_registry
  @docker_registry
end

#docker_repositoryString

User managed repository created in Artifact Registry optionally with a customer managed encryption key. This is the repository to which the function docker image will be pushed after it is built by Cloud Build. If unspecified, 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`. Cross-project repositories are not supported. Cross-location repositories are not supported. Repository format must be ' DOCKER'. Corresponds to the JSON propertydockerRepository`

Returns:

  • (String)


203
204
205
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 203

def docker_repository
  @docker_repository
end

#entry_pointString

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. Corresponds to the JSON property entryPoint

Returns:

  • (String)


212
213
214
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 212

def entry_point
  @entry_point
end

#environment_variablesHash<String,String>

User-provided build-time environment variables for the function Corresponds to the JSON property environmentVariables

Returns:

  • (Hash<String,String>)


217
218
219
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 217

def environment_variables
  @environment_variables
end

#runtimeString

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. Corresponds to the JSON property runtime

Returns:

  • (String)


225
226
227
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 225

def runtime
  @runtime
end

#sourceGoogle::Apis::CloudfunctionsV2alpha::Source

The location of the function source code. Corresponds to the JSON property source



230
231
232
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 230

def source
  @source
end

#source_provenanceGoogle::Apis::CloudfunctionsV2alpha::SourceProvenance

Provenance of the source. Ways to find the original source, or verify that some source was used for this build. Corresponds to the JSON property sourceProvenance



236
237
238
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 236

def source_provenance
  @source_provenance
end

#worker_poolString

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`whereprojectandregionare the project id and region respectively where the worker pool is defined andworkerPoolis 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-@gcf-admin-robot.iam. gserviceaccount.com) must be granted the role Cloud Build Custom Workers Builder (roles/cloudbuild.customworkers.builder) in the project. Corresponds to the JSON propertyworkerPool`

Returns:

  • (String)


248
249
250
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 248

def worker_pool
  @worker_pool
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



255
256
257
258
259
260
261
262
263
264
265
# File 'lib/google/apis/cloudfunctions_v2alpha/classes.rb', line 255

def update!(**args)
  @build = args[:build] if args.key?(:build)
  @docker_registry = args[:docker_registry] if args.key?(:docker_registry)
  @docker_repository = args[:docker_repository] if args.key?(:docker_repository)
  @entry_point = args[:entry_point] if args.key?(:entry_point)
  @environment_variables = args[:environment_variables] if args.key?(:environment_variables)
  @runtime = args[:runtime] if args.key?(:runtime)
  @source = args[:source] if args.key?(:source)
  @source_provenance = args[:source_provenance] if args.key?(:source_provenance)
  @worker_pool = args[:worker_pool] if args.key?(:worker_pool)
end