Skip to content

Commit c2f6dac

Browse files
Google APIscopybara-github
authored andcommitted
feat: add Pipeline.secret_environment, Action.secret_environment, VirtualMachine.reservation
PiperOrigin-RevId: 488460572
1 parent f10c285 commit c2f6dac

3 files changed

Lines changed: 59 additions & 6 deletions

File tree

google/cloud/lifesciences/v2beta/BUILD.bazel

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ proto_library_with_info(
3939
deps = [
4040
":lifesciences_proto",
4141
"//google/cloud:common_resources_proto",
42+
"//google/cloud/location:location_proto",
4243
],
4344
)
4445

@@ -68,14 +69,19 @@ java_grpc_library(
6869
java_gapic_library(
6970
name = "lifesciences_java_gapic",
7071
srcs = [":lifesciences_proto_with_info"],
72+
gapic_yaml = None,
7173
grpc_service_config = "lifesciences_grpc_service_config.json",
7274
rest_numeric_enums = False,
75+
service_yaml = "lifesciences_v2beta.yaml",
7376
test_deps = [
7477
":lifesciences_java_grpc",
78+
"//google/cloud/location:location_java_grpc",
7579
],
7680
transport = "grpc+rest",
7781
deps = [
7882
":lifesciences_java_proto",
83+
"//google/api:api_java_proto",
84+
"//google/cloud/location:location_java_proto",
7985
],
8086
)
8187

@@ -135,6 +141,7 @@ go_gapic_library(
135141
transport = "grpc+rest",
136142
deps = [
137143
":lifesciences_go_proto",
144+
"//google/cloud/location:location_go_proto",
138145
"//google/longrunning:longrunning_go_proto",
139146
"@com_google_cloud_go//longrunning:go_default_library",
140147
"@com_google_cloud_go//longrunning/autogen:go_default_library",
@@ -176,7 +183,10 @@ py_gapic_library(
176183
grpc_service_config = "lifesciences_grpc_service_config.json",
177184
opt_args = ["warehouse-package-name=google-cloud-life-sciences"],
178185
rest_numeric_enums = False,
186+
service_yaml = "lifesciences_v2beta.yaml",
179187
transport = "grpc+rest",
188+
deps = [
189+
],
180190
)
181191

182192
py_test(
@@ -298,17 +308,18 @@ ruby_cloud_gapic_library(
298308
name = "lifesciences_ruby_gapic",
299309
srcs = [":lifesciences_proto_with_info"],
300310
extra_protoc_parameters = [
301-
"ruby-cloud-gem-name=google-cloud-life_sciences-v2beta",
302-
"ruby-cloud-env-prefix=LIFE_SCIENCES",
303-
"ruby-cloud-product-url=https://cloud.google.com/life-sciences/",
304311
"ruby-cloud-api-id=lifesciences.googleapis.com",
305312
"ruby-cloud-api-shortname=lifesciences",
313+
"ruby-cloud-env-prefix=LIFE_SCIENCES",
314+
"ruby-cloud-gem-name=google-cloud-life_sciences-v2beta",
315+
"ruby-cloud-product-url=https://cloud.google.com/life-sciences/",
306316
"ruby-cloud-service-override=WorkflowsServiceV2Beta=WorkflowsService",
307317
],
308318
grpc_service_config = "lifesciences_grpc_service_config.json",
309319
rest_numeric_enums = False,
310320
ruby_cloud_description = "Cloud Life Sciences is a suite of services and tools for managing, processing, and transforming life sciences data. It also enables advanced insights and operational workflows using highly scalable and compliant infrastructure.",
311321
ruby_cloud_title = "Cloud Life Sciences V2beta",
322+
service_yaml = "lifesciences_v2beta.yaml",
312323
deps = [
313324
":lifesciences_ruby_grpc",
314325
":lifesciences_ruby_proto",
@@ -373,4 +384,20 @@ csharp_gapic_assembly_pkg(
373384
##############################################################################
374385
# C++
375386
##############################################################################
376-
# Put your C++ rules here
387+
load(
388+
"@com_google_googleapis_imports//:imports.bzl",
389+
"cc_grpc_library",
390+
"cc_proto_library",
391+
)
392+
393+
cc_proto_library(
394+
name = "lifesciences_cc_proto",
395+
deps = [":lifesciences_proto"],
396+
)
397+
398+
cc_grpc_library(
399+
name = "lifesciences_cc_grpc",
400+
srcs = [":lifesciences_proto"],
401+
grpc_only = True,
402+
deps = [":lifesciences_cc_proto"],
403+
)

google/cloud/lifesciences/v2beta/lifesciences_v2beta.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ title: Cloud Life Sciences API
55

66
apis:
77
- name: google.cloud.lifesciences.v2beta.WorkflowsServiceV2Beta
8+
- name: google.cloud.location.Locations
9+
- name: google.longrunning.Operations
810

911
types:
1012
- name: google.cloud.lifesciences.v2beta.ContainerKilledEvent

google/cloud/lifesciences/v2beta/workflows.proto

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2021 Google LLC
1+
// Copyright 2022 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -17,12 +17,12 @@ syntax = "proto3";
1717
package google.cloud.lifesciences.v2beta;
1818

1919
import "google/api/annotations.proto";
20+
import "google/api/client.proto";
2021
import "google/api/field_behavior.proto";
2122
import "google/longrunning/operations.proto";
2223
import "google/protobuf/duration.proto";
2324
import "google/protobuf/timestamp.proto";
2425
import "google/rpc/code.proto";
25-
import "google/api/client.proto";
2626

2727
option csharp_namespace = "Google.Cloud.LifeSciences.V2Beta";
2828
option go_package = "google.golang.org/genproto/googleapis/cloud/lifesciences/v2beta;lifesciences";
@@ -112,6 +112,15 @@ message Pipeline {
112112
// (though they can overwrite it with a different value).
113113
map<string, string> environment = 3;
114114

115+
// The encrypted environment to pass into every action. Each action can also
116+
// specify its own encrypted environment.
117+
//
118+
// The secret must decrypt to a JSON-encoded dictionary where key-value pairs
119+
// serve as environment variable names and their values. The decoded
120+
// environment variables can overwrite the values specified by the
121+
// `environment` field.
122+
Secret encrypted_environment = 5;
123+
115124
// The maximum amount of time to give the pipeline to complete. This includes
116125
// the time spent waiting for a worker to be allocated. If the pipeline fails
117126
// to complete before the timeout, it will be cancelled and the error code
@@ -172,6 +181,17 @@ message Action {
172181
// authors to determine whether an individual action has succeeded or failed.
173182
map<string, string> environment = 5;
174183

184+
// The encrypted environment to pass into the container. This environment is
185+
// merged with values specified in the
186+
// [google.cloud.lifesciences.v2beta.Pipeline][google.cloud.lifesciences.v2beta.Pipeline] message, overwriting any
187+
// duplicate values.
188+
//
189+
// The secret must decrypt to a JSON-encoded dictionary where key-value pairs
190+
// serve as environment variable names and their values. The decoded
191+
// environment variables can overwrite the values specified by the
192+
// `environment` field.
193+
Secret encrypted_environment = 21;
194+
175195
// An optional identifier for a PID namespace to run the action inside.
176196
// Multiple actions should use the same string to share a namespace. If
177197
// unspecified, a separate isolated namespace is used.
@@ -408,6 +428,10 @@ message VirtualMachine {
408428
//
409429
// Specify either the `volumes[]` field or the `disks[]` field, but not both.
410430
repeated Volume volumes = 14;
431+
432+
// If specified, the VM will only be allocated inside the matching
433+
// reservation. It will fail if the VM parameters don't match the reservation.
434+
string reservation = 15;
411435
}
412436

413437
// Carries information about a Google Cloud service account.

0 commit comments

Comments
 (0)