Class: Google::Apis::RunV2::GoogleCloudRunV2RevisionTemplate

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

Overview

RevisionTemplate describes the data a revision should have when created from a template.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudRunV2RevisionTemplate

Returns a new instance of GoogleCloudRunV2RevisionTemplate.



2053
2054
2055
# File 'lib/google/apis/run_v2/classes.rb', line 2053

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

Instance Attribute Details

#annotationsHash<String,String>

Optional. Unstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system annotations in v1 now have a corresponding field in v2 RevisionTemplate. This field follows Kubernetes annotations' namespacing, limits, and rules. Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


1955
1956
1957
# File 'lib/google/apis/run_v2/classes.rb', line 1955

def annotations
  @annotations
end

#containersArray<Google::Apis::RunV2::GoogleCloudRunV2Container>

Holds the single container that defines the unit of execution for this Revision. Corresponds to the JSON property containers



1961
1962
1963
# File 'lib/google/apis/run_v2/classes.rb', line 1961

def containers
  @containers
end

#encryption_keyString

A reference to a customer managed encryption key (CMEK) to use to encrypt this container image. For more information, go to https://cloud.google.com/run/docs/ securing/using-cmek Corresponds to the JSON property encryptionKey

Returns:

  • (String)


1968
1969
1970
# File 'lib/google/apis/run_v2/classes.rb', line 1968

def encryption_key
  @encryption_key
end

#execution_environmentString

Optional. The sandbox environment to host this Revision. Corresponds to the JSON property executionEnvironment

Returns:

  • (String)


1973
1974
1975
# File 'lib/google/apis/run_v2/classes.rb', line 1973

def execution_environment
  @execution_environment
end

#health_check_disabledBoolean Also known as: health_check_disabled?

Optional. Disables health checking containers during deployment. Corresponds to the JSON property healthCheckDisabled

Returns:

  • (Boolean)


1978
1979
1980
# File 'lib/google/apis/run_v2/classes.rb', line 1978

def health_check_disabled
  @health_check_disabled
end

#labelsHash<String,String>

Optional. Unstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud. google.com/resource-manager/docs/creating-managing-labels or https://cloud. google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev , or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 RevisionTemplate. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


1992
1993
1994
# File 'lib/google/apis/run_v2/classes.rb', line 1992

def labels
  @labels
end

#max_instance_request_concurrencyFixnum

Optional. Sets the maximum number of requests that each serving instance can receive. If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1. Corresponds to the JSON property maxInstanceRequestConcurrency

Returns:

  • (Fixnum)


1999
2000
2001
# File 'lib/google/apis/run_v2/classes.rb', line 1999

def max_instance_request_concurrency
  @max_instance_request_concurrency
end

#node_selectorGoogle::Apis::RunV2::GoogleCloudRunV2NodeSelector

Hardware constraints configuration. Corresponds to the JSON property nodeSelector



2004
2005
2006
# File 'lib/google/apis/run_v2/classes.rb', line 2004

def node_selector
  @node_selector
end

#revisionString

Optional. The unique name for the revision. If this field is omitted, it will be automatically generated based on the Service name. Corresponds to the JSON property revision

Returns:

  • (String)


2010
2011
2012
# File 'lib/google/apis/run_v2/classes.rb', line 2010

def revision
  @revision
end

#scalingGoogle::Apis::RunV2::GoogleCloudRunV2RevisionScaling

Settings for revision-level scaling settings. Corresponds to the JSON property scaling



2015
2016
2017
# File 'lib/google/apis/run_v2/classes.rb', line 2015

def scaling
  @scaling
end

#service_accountString

Optional. Email address of the IAM service account associated with the revision of the service. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project's default service account. Corresponds to the JSON property serviceAccount

Returns:

  • (String)


2023
2024
2025
# File 'lib/google/apis/run_v2/classes.rb', line 2023

def 
  @service_account
end

#service_meshGoogle::Apis::RunV2::GoogleCloudRunV2ServiceMesh

Settings for Cloud Service Mesh. For more information see https://cloud.google. com/service-mesh/docs/overview. Corresponds to the JSON property serviceMesh



2029
2030
2031
# File 'lib/google/apis/run_v2/classes.rb', line 2029

def service_mesh
  @service_mesh
end

#session_affinityBoolean Also known as: session_affinity?

Optional. Enable session affinity. Corresponds to the JSON property sessionAffinity

Returns:

  • (Boolean)


2034
2035
2036
# File 'lib/google/apis/run_v2/classes.rb', line 2034

def session_affinity
  @session_affinity
end

#timeoutString

Optional. Max allowed time for an instance to respond to a request. Corresponds to the JSON property timeout

Returns:

  • (String)


2040
2041
2042
# File 'lib/google/apis/run_v2/classes.rb', line 2040

def timeout
  @timeout
end

#volumesArray<Google::Apis::RunV2::GoogleCloudRunV2Volume>

Optional. A list of Volumes to make available to containers. Corresponds to the JSON property volumes



2045
2046
2047
# File 'lib/google/apis/run_v2/classes.rb', line 2045

def volumes
  @volumes
end

#vpc_accessGoogle::Apis::RunV2::GoogleCloudRunV2VpcAccess

VPC Access settings. For more information on sending traffic to a VPC network, visit https://cloud.google.com/run/docs/configuring/connecting-vpc. Corresponds to the JSON property vpcAccess



2051
2052
2053
# File 'lib/google/apis/run_v2/classes.rb', line 2051

def vpc_access
  @vpc_access
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
# File 'lib/google/apis/run_v2/classes.rb', line 2058

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @containers = args[:containers] if args.key?(:containers)
  @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
  @execution_environment = args[:execution_environment] if args.key?(:execution_environment)
  @health_check_disabled = args[:health_check_disabled] if args.key?(:health_check_disabled)
  @labels = args[:labels] if args.key?(:labels)
  @max_instance_request_concurrency = args[:max_instance_request_concurrency] if args.key?(:max_instance_request_concurrency)
  @node_selector = args[:node_selector] if args.key?(:node_selector)
  @revision = args[:revision] if args.key?(:revision)
  @scaling = args[:scaling] if args.key?(:scaling)
  @service_account = args[:service_account] if args.key?(:service_account)
  @service_mesh = args[:service_mesh] if args.key?(:service_mesh)
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
  @timeout = args[:timeout] if args.key?(:timeout)
  @volumes = args[:volumes] if args.key?(:volumes)
  @vpc_access = args[:vpc_access] if args.key?(:vpc_access)
end