diff --git a/packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1beta1/pipeline_job.proto b/packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1beta1/pipeline_job.proto index 42209c6e5f9..310c0c8a620 100644 --- a/packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1beta1/pipeline_job.proto +++ b/packages/google-cloud-aiplatform/protos/google/cloud/aiplatform/v1beta1/pipeline_job.proto @@ -64,6 +64,44 @@ message PipelineJob { } } + // Persistent resource based runtime detail. For more information, refer to + // https://cloud.google.com/vertex-ai/docs/training/persistent-resource-overview + message PersistentResourceRuntimeDetail { + // An enum that specifies the behavior to take if the timeout is reached. + enum TaskResourceUnavailableTimeoutBehavior { + // Unspecified. Behavior is same as `FAIL`. + TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED = 0; + + // Fail the task if the timeout is reached. + FAIL = 1; + + // Fall back to on-demand execution if the timeout is reached. + FALL_BACK_TO_ON_DEMAND = 2; + } + + // Persistent resource name. + // Format: + // `projects/{project}/locations/{location}/persistentResources/{persistent_resource}` + string persistent_resource_name = 1; + + // The max time a pipeline task waits for the required CPU, memory, or + // accelerator resource to become available from the specified persistent + // resource. Default wait time is 0. + int64 task_resource_unavailable_wait_time_ms = 2; + + // Specifies the behavior to take if the timeout is reached. + TaskResourceUnavailableTimeoutBehavior + task_resource_unavailable_timeout_behavior = 3; + } + + // The default runtime for the PipelineJob. + message DefaultRuntime { + oneof runtime_detail { + // Persistent resource based runtime detail. + PersistentResourceRuntimeDetail persistent_resource_runtime_detail = 1; + } + } + // Deprecated. Use // [RuntimeConfig.parameter_values][google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.parameter_values] // instead. The runtime parameters of the PipelineJob. The parameters will @@ -103,6 +141,12 @@ message PipelineJob { // The runtime artifacts of the PipelineJob. The key will be the input // artifact name and the value would be one of the InputArtifact. map input_artifacts = 5; + + // Optional. The default runtime for the PipelineJob. If not provided, + // Vertex Custom Job(on demand) is used as the runtime. For Vertex Custom + // Job, please refer to + // https://cloud.google.com/vertex-ai/docs/training/overview. + DefaultRuntime default_runtime = 6 [(google.api.field_behavior) = OPTIONAL]; } // Output only. The resource name of the PipelineJob. diff --git a/packages/google-cloud-aiplatform/protos/protos.d.ts b/packages/google-cloud-aiplatform/protos/protos.d.ts index 4d4ed9d429d..fd307f88b63 100644 --- a/packages/google-cloud-aiplatform/protos/protos.d.ts +++ b/packages/google-cloud-aiplatform/protos/protos.d.ts @@ -229895,6 +229895,9 @@ export namespace google { /** RuntimeConfig inputArtifacts */ inputArtifacts?: ({ [k: string]: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IInputArtifact }|null); + + /** RuntimeConfig defaultRuntime */ + defaultRuntime?: (google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime|null); } /** Represents a RuntimeConfig. */ @@ -229921,6 +229924,9 @@ export namespace google { /** RuntimeConfig inputArtifacts. */ public inputArtifacts: { [k: string]: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IInputArtifact }; + /** RuntimeConfig defaultRuntime. */ + public defaultRuntime?: (google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime|null); + /** * Creates a new RuntimeConfig instance using the specified properties. * @param [properties] Properties to set @@ -230100,6 +230106,225 @@ export namespace google { */ public static getTypeUrl(typeUrlPrefix?: string): string; } + + /** Properties of a PersistentResourceRuntimeDetail. */ + interface IPersistentResourceRuntimeDetail { + + /** PersistentResourceRuntimeDetail persistentResourceName */ + persistentResourceName?: (string|null); + + /** PersistentResourceRuntimeDetail taskResourceUnavailableWaitTimeMs */ + taskResourceUnavailableWaitTimeMs?: (number|Long|string|null); + + /** PersistentResourceRuntimeDetail taskResourceUnavailableTimeoutBehavior */ + taskResourceUnavailableTimeoutBehavior?: (google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior|keyof typeof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior|null); + } + + /** Represents a PersistentResourceRuntimeDetail. */ + class PersistentResourceRuntimeDetail implements IPersistentResourceRuntimeDetail { + + /** + * Constructs a new PersistentResourceRuntimeDetail. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail); + + /** PersistentResourceRuntimeDetail persistentResourceName. */ + public persistentResourceName: string; + + /** PersistentResourceRuntimeDetail taskResourceUnavailableWaitTimeMs. */ + public taskResourceUnavailableWaitTimeMs: (number|Long|string); + + /** PersistentResourceRuntimeDetail taskResourceUnavailableTimeoutBehavior. */ + public taskResourceUnavailableTimeoutBehavior: (google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior|keyof typeof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior); + + /** + * Creates a new PersistentResourceRuntimeDetail instance using the specified properties. + * @param [properties] Properties to set + * @returns PersistentResourceRuntimeDetail instance + */ + public static create(properties?: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail; + + /** + * Encodes the specified PersistentResourceRuntimeDetail message. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.verify|verify} messages. + * @param message PersistentResourceRuntimeDetail message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified PersistentResourceRuntimeDetail message, length delimited. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.verify|verify} messages. + * @param message PersistentResourceRuntimeDetail message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a PersistentResourceRuntimeDetail message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns PersistentResourceRuntimeDetail + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail; + + /** + * Decodes a PersistentResourceRuntimeDetail message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns PersistentResourceRuntimeDetail + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail; + + /** + * Verifies a PersistentResourceRuntimeDetail message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a PersistentResourceRuntimeDetail message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns PersistentResourceRuntimeDetail + */ + public static fromObject(object: { [k: string]: any }): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail; + + /** + * Creates a plain object from a PersistentResourceRuntimeDetail message. Also converts values to other types if specified. + * @param message PersistentResourceRuntimeDetail + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this PersistentResourceRuntimeDetail to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for PersistentResourceRuntimeDetail + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace PersistentResourceRuntimeDetail { + + /** TaskResourceUnavailableTimeoutBehavior enum. */ + enum TaskResourceUnavailableTimeoutBehavior { + TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED = 0, + FAIL = 1, + FALL_BACK_TO_ON_DEMAND = 2 + } + } + + /** Properties of a DefaultRuntime. */ + interface IDefaultRuntime { + + /** DefaultRuntime persistentResourceRuntimeDetail */ + persistentResourceRuntimeDetail?: (google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail|null); + } + + /** Represents a DefaultRuntime. */ + class DefaultRuntime implements IDefaultRuntime { + + /** + * Constructs a new DefaultRuntime. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime); + + /** DefaultRuntime persistentResourceRuntimeDetail. */ + public persistentResourceRuntimeDetail?: (google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail|null); + + /** DefaultRuntime runtimeDetail. */ + public runtimeDetail?: "persistentResourceRuntimeDetail"; + + /** + * Creates a new DefaultRuntime instance using the specified properties. + * @param [properties] Properties to set + * @returns DefaultRuntime instance + */ + public static create(properties?: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime; + + /** + * Encodes the specified DefaultRuntime message. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.verify|verify} messages. + * @param message DefaultRuntime message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DefaultRuntime message, length delimited. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.verify|verify} messages. + * @param message DefaultRuntime message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DefaultRuntime message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DefaultRuntime + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime; + + /** + * Decodes a DefaultRuntime message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DefaultRuntime + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime; + + /** + * Verifies a DefaultRuntime message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DefaultRuntime message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DefaultRuntime + */ + public static fromObject(object: { [k: string]: any }): google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime; + + /** + * Creates a plain object from a DefaultRuntime message. Also converts values to other types if specified. + * @param message DefaultRuntime + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DefaultRuntime to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DefaultRuntime + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } } } diff --git a/packages/google-cloud-aiplatform/protos/protos.js b/packages/google-cloud-aiplatform/protos/protos.js index 6d3eeae99ff..62ce51ba142 100644 --- a/packages/google-cloud-aiplatform/protos/protos.js +++ b/packages/google-cloud-aiplatform/protos/protos.js @@ -560344,6 +560344,7 @@ * @property {Object.|null} [parameterValues] RuntimeConfig parameterValues * @property {google.cloud.aiplatform.v1beta1.PipelineFailurePolicy|null} [failurePolicy] RuntimeConfig failurePolicy * @property {Object.|null} [inputArtifacts] RuntimeConfig inputArtifacts + * @property {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime|null} [defaultRuntime] RuntimeConfig defaultRuntime */ /** @@ -560404,6 +560405,14 @@ */ RuntimeConfig.prototype.inputArtifacts = $util.emptyObject; + /** + * RuntimeConfig defaultRuntime. + * @member {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime|null|undefined} defaultRuntime + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig + * @instance + */ + RuntimeConfig.prototype.defaultRuntime = null; + /** * Creates a new RuntimeConfig instance using the specified properties. * @function create @@ -560447,6 +560456,8 @@ writer.uint32(/* id 5, wireType 2 =*/42).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]); $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.InputArtifact.encode(message.inputArtifacts[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim(); } + if (message.defaultRuntime != null && Object.hasOwnProperty.call(message, "defaultRuntime")) + $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.encode(message.defaultRuntime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); return writer; }; @@ -560558,6 +560569,10 @@ message.inputArtifacts[key] = value; break; } + case 6: { + message.defaultRuntime = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.decode(reader, reader.uint32()); + break; + } default: reader.skipType(tag & 7); break; @@ -560635,6 +560650,11 @@ return "inputArtifacts." + error; } } + if (message.defaultRuntime != null && message.hasOwnProperty("defaultRuntime")) { + var error = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.verify(message.defaultRuntime); + if (error) + return "defaultRuntime." + error; + } return null; }; @@ -560702,6 +560722,11 @@ message.inputArtifacts[keys[i]] = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.InputArtifact.fromObject(object.inputArtifacts[keys[i]]); } } + if (object.defaultRuntime != null) { + if (typeof object.defaultRuntime !== "object") + throw TypeError(".google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.defaultRuntime: object expected"); + message.defaultRuntime = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.fromObject(object.defaultRuntime); + } return message; }; @@ -560726,6 +560751,7 @@ if (options.defaults) { object.gcsOutputDirectory = ""; object.failurePolicy = options.enums === String ? "PIPELINE_FAILURE_POLICY_UNSPECIFIED" : 0; + object.defaultRuntime = null; } var keys2; if (message.parameters && (keys2 = Object.keys(message.parameters)).length) { @@ -560747,6 +560773,8 @@ for (var j = 0; j < keys2.length; ++j) object.inputArtifacts[keys2[j]] = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.InputArtifact.toObject(message.inputArtifacts[keys2[j]], options); } + if (message.defaultRuntime != null && message.hasOwnProperty("defaultRuntime")) + object.defaultRuntime = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.toObject(message.defaultRuntime, options); return object; }; @@ -560997,6 +561025,537 @@ return InputArtifact; })(); + RuntimeConfig.PersistentResourceRuntimeDetail = (function() { + + /** + * Properties of a PersistentResourceRuntimeDetail. + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig + * @interface IPersistentResourceRuntimeDetail + * @property {string|null} [persistentResourceName] PersistentResourceRuntimeDetail persistentResourceName + * @property {number|Long|null} [taskResourceUnavailableWaitTimeMs] PersistentResourceRuntimeDetail taskResourceUnavailableWaitTimeMs + * @property {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior|null} [taskResourceUnavailableTimeoutBehavior] PersistentResourceRuntimeDetail taskResourceUnavailableTimeoutBehavior + */ + + /** + * Constructs a new PersistentResourceRuntimeDetail. + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig + * @classdesc Represents a PersistentResourceRuntimeDetail. + * @implements IPersistentResourceRuntimeDetail + * @constructor + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail=} [properties] Properties to set + */ + function PersistentResourceRuntimeDetail(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * PersistentResourceRuntimeDetail persistentResourceName. + * @member {string} persistentResourceName + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @instance + */ + PersistentResourceRuntimeDetail.prototype.persistentResourceName = ""; + + /** + * PersistentResourceRuntimeDetail taskResourceUnavailableWaitTimeMs. + * @member {number|Long} taskResourceUnavailableWaitTimeMs + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @instance + */ + PersistentResourceRuntimeDetail.prototype.taskResourceUnavailableWaitTimeMs = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * PersistentResourceRuntimeDetail taskResourceUnavailableTimeoutBehavior. + * @member {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior} taskResourceUnavailableTimeoutBehavior + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @instance + */ + PersistentResourceRuntimeDetail.prototype.taskResourceUnavailableTimeoutBehavior = 0; + + /** + * Creates a new PersistentResourceRuntimeDetail instance using the specified properties. + * @function create + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail=} [properties] Properties to set + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail} PersistentResourceRuntimeDetail instance + */ + PersistentResourceRuntimeDetail.create = function create(properties) { + return new PersistentResourceRuntimeDetail(properties); + }; + + /** + * Encodes the specified PersistentResourceRuntimeDetail message. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.verify|verify} messages. + * @function encode + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail} message PersistentResourceRuntimeDetail message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PersistentResourceRuntimeDetail.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.persistentResourceName != null && Object.hasOwnProperty.call(message, "persistentResourceName")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.persistentResourceName); + if (message.taskResourceUnavailableWaitTimeMs != null && Object.hasOwnProperty.call(message, "taskResourceUnavailableWaitTimeMs")) + writer.uint32(/* id 2, wireType 0 =*/16).int64(message.taskResourceUnavailableWaitTimeMs); + if (message.taskResourceUnavailableTimeoutBehavior != null && Object.hasOwnProperty.call(message, "taskResourceUnavailableTimeoutBehavior")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.taskResourceUnavailableTimeoutBehavior); + return writer; + }; + + /** + * Encodes the specified PersistentResourceRuntimeDetail message, length delimited. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail} message PersistentResourceRuntimeDetail message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + PersistentResourceRuntimeDetail.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a PersistentResourceRuntimeDetail message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail} PersistentResourceRuntimeDetail + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PersistentResourceRuntimeDetail.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.persistentResourceName = reader.string(); + break; + } + case 2: { + message.taskResourceUnavailableWaitTimeMs = reader.int64(); + break; + } + case 3: { + message.taskResourceUnavailableTimeoutBehavior = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a PersistentResourceRuntimeDetail message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail} PersistentResourceRuntimeDetail + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + PersistentResourceRuntimeDetail.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a PersistentResourceRuntimeDetail message. + * @function verify + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + PersistentResourceRuntimeDetail.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.persistentResourceName != null && message.hasOwnProperty("persistentResourceName")) + if (!$util.isString(message.persistentResourceName)) + return "persistentResourceName: string expected"; + if (message.taskResourceUnavailableWaitTimeMs != null && message.hasOwnProperty("taskResourceUnavailableWaitTimeMs")) + if (!$util.isInteger(message.taskResourceUnavailableWaitTimeMs) && !(message.taskResourceUnavailableWaitTimeMs && $util.isInteger(message.taskResourceUnavailableWaitTimeMs.low) && $util.isInteger(message.taskResourceUnavailableWaitTimeMs.high))) + return "taskResourceUnavailableWaitTimeMs: integer|Long expected"; + if (message.taskResourceUnavailableTimeoutBehavior != null && message.hasOwnProperty("taskResourceUnavailableTimeoutBehavior")) + switch (message.taskResourceUnavailableTimeoutBehavior) { + default: + return "taskResourceUnavailableTimeoutBehavior: enum value expected"; + case 0: + case 1: + case 2: + break; + } + return null; + }; + + /** + * Creates a PersistentResourceRuntimeDetail message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail} PersistentResourceRuntimeDetail + */ + PersistentResourceRuntimeDetail.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail) + return object; + var message = new $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail(); + if (object.persistentResourceName != null) + message.persistentResourceName = String(object.persistentResourceName); + if (object.taskResourceUnavailableWaitTimeMs != null) + if ($util.Long) + (message.taskResourceUnavailableWaitTimeMs = $util.Long.fromValue(object.taskResourceUnavailableWaitTimeMs)).unsigned = false; + else if (typeof object.taskResourceUnavailableWaitTimeMs === "string") + message.taskResourceUnavailableWaitTimeMs = parseInt(object.taskResourceUnavailableWaitTimeMs, 10); + else if (typeof object.taskResourceUnavailableWaitTimeMs === "number") + message.taskResourceUnavailableWaitTimeMs = object.taskResourceUnavailableWaitTimeMs; + else if (typeof object.taskResourceUnavailableWaitTimeMs === "object") + message.taskResourceUnavailableWaitTimeMs = new $util.LongBits(object.taskResourceUnavailableWaitTimeMs.low >>> 0, object.taskResourceUnavailableWaitTimeMs.high >>> 0).toNumber(); + switch (object.taskResourceUnavailableTimeoutBehavior) { + default: + if (typeof object.taskResourceUnavailableTimeoutBehavior === "number") { + message.taskResourceUnavailableTimeoutBehavior = object.taskResourceUnavailableTimeoutBehavior; + break; + } + break; + case "TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED": + case 0: + message.taskResourceUnavailableTimeoutBehavior = 0; + break; + case "FAIL": + case 1: + message.taskResourceUnavailableTimeoutBehavior = 1; + break; + case "FALL_BACK_TO_ON_DEMAND": + case 2: + message.taskResourceUnavailableTimeoutBehavior = 2; + break; + } + return message; + }; + + /** + * Creates a plain object from a PersistentResourceRuntimeDetail message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail} message PersistentResourceRuntimeDetail + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + PersistentResourceRuntimeDetail.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.persistentResourceName = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.taskResourceUnavailableWaitTimeMs = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.taskResourceUnavailableWaitTimeMs = options.longs === String ? "0" : 0; + object.taskResourceUnavailableTimeoutBehavior = options.enums === String ? "TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED" : 0; + } + if (message.persistentResourceName != null && message.hasOwnProperty("persistentResourceName")) + object.persistentResourceName = message.persistentResourceName; + if (message.taskResourceUnavailableWaitTimeMs != null && message.hasOwnProperty("taskResourceUnavailableWaitTimeMs")) + if (typeof message.taskResourceUnavailableWaitTimeMs === "number") + object.taskResourceUnavailableWaitTimeMs = options.longs === String ? String(message.taskResourceUnavailableWaitTimeMs) : message.taskResourceUnavailableWaitTimeMs; + else + object.taskResourceUnavailableWaitTimeMs = options.longs === String ? $util.Long.prototype.toString.call(message.taskResourceUnavailableWaitTimeMs) : options.longs === Number ? new $util.LongBits(message.taskResourceUnavailableWaitTimeMs.low >>> 0, message.taskResourceUnavailableWaitTimeMs.high >>> 0).toNumber() : message.taskResourceUnavailableWaitTimeMs; + if (message.taskResourceUnavailableTimeoutBehavior != null && message.hasOwnProperty("taskResourceUnavailableTimeoutBehavior")) + object.taskResourceUnavailableTimeoutBehavior = options.enums === String ? $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior[message.taskResourceUnavailableTimeoutBehavior] === undefined ? message.taskResourceUnavailableTimeoutBehavior : $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior[message.taskResourceUnavailableTimeoutBehavior] : message.taskResourceUnavailableTimeoutBehavior; + return object; + }; + + /** + * Converts this PersistentResourceRuntimeDetail to JSON. + * @function toJSON + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @instance + * @returns {Object.} JSON object + */ + PersistentResourceRuntimeDetail.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for PersistentResourceRuntimeDetail + * @function getTypeUrl + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + PersistentResourceRuntimeDetail.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail"; + }; + + /** + * TaskResourceUnavailableTimeoutBehavior enum. + * @name google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior + * @enum {number} + * @property {number} TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED=0 TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED value + * @property {number} FAIL=1 FAIL value + * @property {number} FALL_BACK_TO_ON_DEMAND=2 FALL_BACK_TO_ON_DEMAND value + */ + PersistentResourceRuntimeDetail.TaskResourceUnavailableTimeoutBehavior = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED"] = 0; + values[valuesById[1] = "FAIL"] = 1; + values[valuesById[2] = "FALL_BACK_TO_ON_DEMAND"] = 2; + return values; + })(); + + return PersistentResourceRuntimeDetail; + })(); + + RuntimeConfig.DefaultRuntime = (function() { + + /** + * Properties of a DefaultRuntime. + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig + * @interface IDefaultRuntime + * @property {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail|null} [persistentResourceRuntimeDetail] DefaultRuntime persistentResourceRuntimeDetail + */ + + /** + * Constructs a new DefaultRuntime. + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig + * @classdesc Represents a DefaultRuntime. + * @implements IDefaultRuntime + * @constructor + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime=} [properties] Properties to set + */ + function DefaultRuntime(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * DefaultRuntime persistentResourceRuntimeDetail. + * @member {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IPersistentResourceRuntimeDetail|null|undefined} persistentResourceRuntimeDetail + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @instance + */ + DefaultRuntime.prototype.persistentResourceRuntimeDetail = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * DefaultRuntime runtimeDetail. + * @member {"persistentResourceRuntimeDetail"|undefined} runtimeDetail + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @instance + */ + Object.defineProperty(DefaultRuntime.prototype, "runtimeDetail", { + get: $util.oneOfGetter($oneOfFields = ["persistentResourceRuntimeDetail"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new DefaultRuntime instance using the specified properties. + * @function create + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime=} [properties] Properties to set + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime} DefaultRuntime instance + */ + DefaultRuntime.create = function create(properties) { + return new DefaultRuntime(properties); + }; + + /** + * Encodes the specified DefaultRuntime message. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.verify|verify} messages. + * @function encode + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime} message DefaultRuntime message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DefaultRuntime.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.persistentResourceRuntimeDetail != null && Object.hasOwnProperty.call(message, "persistentResourceRuntimeDetail")) + $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.encode(message.persistentResourceRuntimeDetail, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified DefaultRuntime message, length delimited. Does not implicitly {@link google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.IDefaultRuntime} message DefaultRuntime message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DefaultRuntime.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DefaultRuntime message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime} DefaultRuntime + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DefaultRuntime.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.persistentResourceRuntimeDetail = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DefaultRuntime message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime} DefaultRuntime + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DefaultRuntime.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DefaultRuntime message. + * @function verify + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DefaultRuntime.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.persistentResourceRuntimeDetail != null && message.hasOwnProperty("persistentResourceRuntimeDetail")) { + properties.runtimeDetail = 1; + { + var error = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.verify(message.persistentResourceRuntimeDetail); + if (error) + return "persistentResourceRuntimeDetail." + error; + } + } + return null; + }; + + /** + * Creates a DefaultRuntime message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime} DefaultRuntime + */ + DefaultRuntime.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime) + return object; + var message = new $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime(); + if (object.persistentResourceRuntimeDetail != null) { + if (typeof object.persistentResourceRuntimeDetail !== "object") + throw TypeError(".google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime.persistentResourceRuntimeDetail: object expected"); + message.persistentResourceRuntimeDetail = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.fromObject(object.persistentResourceRuntimeDetail); + } + return message; + }; + + /** + * Creates a plain object from a DefaultRuntime message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime} message DefaultRuntime + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DefaultRuntime.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.persistentResourceRuntimeDetail != null && message.hasOwnProperty("persistentResourceRuntimeDetail")) { + object.persistentResourceRuntimeDetail = $root.google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.PersistentResourceRuntimeDetail.toObject(message.persistentResourceRuntimeDetail, options); + if (options.oneofs) + object.runtimeDetail = "persistentResourceRuntimeDetail"; + } + return object; + }; + + /** + * Converts this DefaultRuntime to JSON. + * @function toJSON + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @instance + * @returns {Object.} JSON object + */ + DefaultRuntime.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for DefaultRuntime + * @function getTypeUrl + * @memberof google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DefaultRuntime.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.DefaultRuntime"; + }; + + return DefaultRuntime; + })(); + return RuntimeConfig; })(); diff --git a/packages/google-cloud-aiplatform/protos/protos.json b/packages/google-cloud-aiplatform/protos/protos.json index d419761166a..f2ce2f04b76 100644 --- a/packages/google-cloud-aiplatform/protos/protos.json +++ b/packages/google-cloud-aiplatform/protos/protos.json @@ -61842,6 +61842,13 @@ "keyType": "string", "type": "InputArtifact", "id": 5 + }, + "defaultRuntime": { + "type": "DefaultRuntime", + "id": 6, + "options": { + "(google.api.field_behavior)": "OPTIONAL" + } } }, "nested": { @@ -61859,6 +61866,46 @@ "id": 1 } } + }, + "PersistentResourceRuntimeDetail": { + "fields": { + "persistentResourceName": { + "type": "string", + "id": 1 + }, + "taskResourceUnavailableWaitTimeMs": { + "type": "int64", + "id": 2 + }, + "taskResourceUnavailableTimeoutBehavior": { + "type": "TaskResourceUnavailableTimeoutBehavior", + "id": 3 + } + }, + "nested": { + "TaskResourceUnavailableTimeoutBehavior": { + "values": { + "TASK_RESOURCE_UNAVAILABLE_TIMEOUT_BEHAVIOR_UNSPECIFIED": 0, + "FAIL": 1, + "FALL_BACK_TO_ON_DEMAND": 2 + } + } + } + }, + "DefaultRuntime": { + "oneofs": { + "runtimeDetail": { + "oneof": [ + "persistentResourceRuntimeDetail" + ] + } + }, + "fields": { + "persistentResourceRuntimeDetail": { + "type": "PersistentResourceRuntimeDetail", + "id": 1 + } + } } } }