com.google.api.services.run.v2.model.GoogleCloudRunV2RevisionTemplate Maven / Gradle / Ivy
/*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
/*
* This code was generated by https://github.com/googleapis/google-api-java-client-services/
* Modify at your own risk.
*/
package com.google.api.services.run.v2.model;
/**
* RevisionTemplate describes the data a revision should have when created from a template.
*
* This is the Java data model class that specifies how to parse/serialize into the JSON that is
* transmitted over HTTP when working with the Cloud Run Admin API. For a detailed explanation see:
* https://developers.google.com/api-client-library/java/google-http-java-client/json
*
*
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public final class GoogleCloudRunV2RevisionTemplate extends com.google.api.client.json.GenericJson {
/**
* 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.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.Map annotations;
/**
* Holds the single container that defines the unit of execution for this Revision.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.List containers;
static {
// hack to force ProGuard to consider GoogleCloudRunV2Container used, since otherwise it would be stripped out
// see https://github.com/google/google-api-java-client/issues/543
com.google.api.client.util.Data.nullOf(GoogleCloudRunV2Container.class);
}
/**
* 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
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String encryptionKey;
/**
* Optional. The sandbox environment to host this Revision.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String executionEnvironment;
/**
* Optional. Disables health checking containers during deployment.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean healthCheckDisabled;
/**
* 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.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.Map labels;
/**
* 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`.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Integer maxInstanceRequestConcurrency;
/**
* Optional. The node selector for the revision template.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private GoogleCloudRunV2NodeSelector nodeSelector;
/**
* Optional. The unique name for the revision. If this field is omitted, it will be automatically
* generated based on the Service name.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String revision;
/**
* Optional. Scaling settings for this Revision.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private GoogleCloudRunV2RevisionScaling scaling;
/**
* 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.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.String serviceAccount;
/**
* Optional. Enables service mesh connectivity.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private GoogleCloudRunV2ServiceMesh serviceMesh;
/**
* Optional. Enable session affinity.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.lang.Boolean sessionAffinity;
/**
* Optional. Max allowed time for an instance to respond to a request.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private String timeout;
/**
* Optional. A list of Volumes to make available to containers.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private java.util.List volumes;
/**
* Optional. VPC Access configuration to use for this Revision. For more information, visit
* https://cloud.google.com/run/docs/configuring/connecting-vpc.
* The value may be {@code null}.
*/
@com.google.api.client.util.Key
private GoogleCloudRunV2VpcAccess vpcAccess;
/**
* 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.
* @return value or {@code null} for none
*/
public java.util.Map getAnnotations() {
return annotations;
}
/**
* 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.
* @param annotations annotations or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setAnnotations(java.util.Map annotations) {
this.annotations = annotations;
return this;
}
/**
* Holds the single container that defines the unit of execution for this Revision.
* @return value or {@code null} for none
*/
public java.util.List getContainers() {
return containers;
}
/**
* Holds the single container that defines the unit of execution for this Revision.
* @param containers containers or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setContainers(java.util.List containers) {
this.containers = containers;
return this;
}
/**
* 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
* @return value or {@code null} for none
*/
public java.lang.String getEncryptionKey() {
return encryptionKey;
}
/**
* 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
* @param encryptionKey encryptionKey or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setEncryptionKey(java.lang.String encryptionKey) {
this.encryptionKey = encryptionKey;
return this;
}
/**
* Optional. The sandbox environment to host this Revision.
* @return value or {@code null} for none
*/
public java.lang.String getExecutionEnvironment() {
return executionEnvironment;
}
/**
* Optional. The sandbox environment to host this Revision.
* @param executionEnvironment executionEnvironment or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setExecutionEnvironment(java.lang.String executionEnvironment) {
this.executionEnvironment = executionEnvironment;
return this;
}
/**
* Optional. Disables health checking containers during deployment.
* @return value or {@code null} for none
*/
public java.lang.Boolean getHealthCheckDisabled() {
return healthCheckDisabled;
}
/**
* Optional. Disables health checking containers during deployment.
* @param healthCheckDisabled healthCheckDisabled or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setHealthCheckDisabled(java.lang.Boolean healthCheckDisabled) {
this.healthCheckDisabled = healthCheckDisabled;
return this;
}
/**
* 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.
* @return value or {@code null} for none
*/
public java.util.Map getLabels() {
return labels;
}
/**
* 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.
* @param labels labels or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setLabels(java.util.Map labels) {
this.labels = labels;
return this;
}
/**
* 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`.
* @return value or {@code null} for none
*/
public java.lang.Integer getMaxInstanceRequestConcurrency() {
return maxInstanceRequestConcurrency;
}
/**
* 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`.
* @param maxInstanceRequestConcurrency maxInstanceRequestConcurrency or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setMaxInstanceRequestConcurrency(java.lang.Integer maxInstanceRequestConcurrency) {
this.maxInstanceRequestConcurrency = maxInstanceRequestConcurrency;
return this;
}
/**
* Optional. The node selector for the revision template.
* @return value or {@code null} for none
*/
public GoogleCloudRunV2NodeSelector getNodeSelector() {
return nodeSelector;
}
/**
* Optional. The node selector for the revision template.
* @param nodeSelector nodeSelector or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setNodeSelector(GoogleCloudRunV2NodeSelector nodeSelector) {
this.nodeSelector = nodeSelector;
return this;
}
/**
* Optional. The unique name for the revision. If this field is omitted, it will be automatically
* generated based on the Service name.
* @return value or {@code null} for none
*/
public java.lang.String getRevision() {
return revision;
}
/**
* Optional. The unique name for the revision. If this field is omitted, it will be automatically
* generated based on the Service name.
* @param revision revision or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setRevision(java.lang.String revision) {
this.revision = revision;
return this;
}
/**
* Optional. Scaling settings for this Revision.
* @return value or {@code null} for none
*/
public GoogleCloudRunV2RevisionScaling getScaling() {
return scaling;
}
/**
* Optional. Scaling settings for this Revision.
* @param scaling scaling or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setScaling(GoogleCloudRunV2RevisionScaling scaling) {
this.scaling = scaling;
return this;
}
/**
* 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.
* @return value or {@code null} for none
*/
public java.lang.String getServiceAccount() {
return serviceAccount;
}
/**
* 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.
* @param serviceAccount serviceAccount or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setServiceAccount(java.lang.String serviceAccount) {
this.serviceAccount = serviceAccount;
return this;
}
/**
* Optional. Enables service mesh connectivity.
* @return value or {@code null} for none
*/
public GoogleCloudRunV2ServiceMesh getServiceMesh() {
return serviceMesh;
}
/**
* Optional. Enables service mesh connectivity.
* @param serviceMesh serviceMesh or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setServiceMesh(GoogleCloudRunV2ServiceMesh serviceMesh) {
this.serviceMesh = serviceMesh;
return this;
}
/**
* Optional. Enable session affinity.
* @return value or {@code null} for none
*/
public java.lang.Boolean getSessionAffinity() {
return sessionAffinity;
}
/**
* Optional. Enable session affinity.
* @param sessionAffinity sessionAffinity or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setSessionAffinity(java.lang.Boolean sessionAffinity) {
this.sessionAffinity = sessionAffinity;
return this;
}
/**
* Optional. Max allowed time for an instance to respond to a request.
* @return value or {@code null} for none
*/
public String getTimeout() {
return timeout;
}
/**
* Optional. Max allowed time for an instance to respond to a request.
* @param timeout timeout or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setTimeout(String timeout) {
this.timeout = timeout;
return this;
}
/**
* Optional. A list of Volumes to make available to containers.
* @return value or {@code null} for none
*/
public java.util.List getVolumes() {
return volumes;
}
/**
* Optional. A list of Volumes to make available to containers.
* @param volumes volumes or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setVolumes(java.util.List volumes) {
this.volumes = volumes;
return this;
}
/**
* Optional. VPC Access configuration to use for this Revision. For more information, visit
* https://cloud.google.com/run/docs/configuring/connecting-vpc.
* @return value or {@code null} for none
*/
public GoogleCloudRunV2VpcAccess getVpcAccess() {
return vpcAccess;
}
/**
* Optional. VPC Access configuration to use for this Revision. For more information, visit
* https://cloud.google.com/run/docs/configuring/connecting-vpc.
* @param vpcAccess vpcAccess or {@code null} for none
*/
public GoogleCloudRunV2RevisionTemplate setVpcAccess(GoogleCloudRunV2VpcAccess vpcAccess) {
this.vpcAccess = vpcAccess;
return this;
}
@Override
public GoogleCloudRunV2RevisionTemplate set(String fieldName, Object value) {
return (GoogleCloudRunV2RevisionTemplate) super.set(fieldName, value);
}
@Override
public GoogleCloudRunV2RevisionTemplate clone() {
return (GoogleCloudRunV2RevisionTemplate) super.clone();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy