Skip to content
This repository was archived by the owner on Jul 20, 2023. It is now read-only.

Commit 698f05e

Browse files
feat: add Application.service_account (#130)
* feat: add Application.service_account feat: add client library method signature to retrieve Application by name feat: add Service.labels feat: add Version.app_engine_apis feat: add VpcAccessConnector.egress_setting PiperOrigin-RevId: 446641753 Source-Link: googleapis/googleapis@cd7a3e5 Source-Link: https://github.com/googleapis/googleapis-gen/commit/0e7d6d2055ea2ea48cefd8abb97f7f66e9b0e1a7 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiMGU3ZDZkMjA1NWVhMmVhNDhjZWZkOGFiYjk3ZjdmNjZlOWIwZTFhNyJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent 3c14270 commit 698f05e

20 files changed

+9882
-9615
lines changed

protos/google/appengine/v1/app_yaml.proto

Lines changed: 1 addition & 1 deletion
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.

protos/google/appengine/v1/appengine.proto

Lines changed: 310 additions & 307 deletions
Large diffs are not rendered by default.

protos/google/appengine/v1/application.proto

Lines changed: 34 additions & 29 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.
@@ -29,6 +29,20 @@ option ruby_package = "Google::Cloud::AppEngine::V1";
2929
// An Application resource contains the top-level configuration of an App
3030
// Engine application.
3131
message Application {
32+
enum ServingStatus {
33+
// Serving status is unspecified.
34+
UNSPECIFIED = 0;
35+
36+
// Application is serving.
37+
SERVING = 1;
38+
39+
// Application has been disabled by the user.
40+
USER_DISABLED = 2;
41+
42+
// Application has been disabled by the system.
43+
SYSTEM_DISABLED = 3;
44+
}
45+
3246
// Identity-Aware Proxy
3347
message IdentityAwareProxy {
3448
// Whether the serving infrastructure will authenticate and
@@ -56,6 +70,20 @@ message Application {
5670
string oauth2_client_secret_sha256 = 4;
5771
}
5872

73+
enum DatabaseType {
74+
// Database type is unspecified.
75+
DATABASE_TYPE_UNSPECIFIED = 0;
76+
77+
// Cloud Datastore
78+
CLOUD_DATASTORE = 1;
79+
80+
// Cloud Firestore Native
81+
CLOUD_FIRESTORE = 2;
82+
83+
// Cloud Firestore in Datastore Mode
84+
CLOUD_DATASTORE_COMPATIBILITY = 3;
85+
}
86+
5987
// The feature specific settings to be used in the application. These define
6088
// behaviors that are user configurable.
6189
message FeatureSettings {
@@ -72,34 +100,6 @@ message Application {
72100
bool use_container_optimized_os = 2;
73101
}
74102

75-
enum ServingStatus {
76-
// Serving status is unspecified.
77-
UNSPECIFIED = 0;
78-
79-
// Application is serving.
80-
SERVING = 1;
81-
82-
// Application has been disabled by the user.
83-
USER_DISABLED = 2;
84-
85-
// Application has been disabled by the system.
86-
SYSTEM_DISABLED = 3;
87-
}
88-
89-
enum DatabaseType {
90-
// Database type is unspecified.
91-
DATABASE_TYPE_UNSPECIFIED = 0;
92-
93-
// Cloud Datastore
94-
CLOUD_DATASTORE = 1;
95-
96-
// Cloud Firestore Native
97-
CLOUD_FIRESTORE = 2;
98-
99-
// Cloud Firestore in Datastore Mode
100-
CLOUD_DATASTORE_COMPATIBILITY = 3;
101-
}
102-
103103
// Full path to the Application resource in the API.
104104
// Example: `apps/myapp`.
105105
//
@@ -157,6 +157,11 @@ message Application {
157157
// @OutputOnly
158158
string default_bucket = 12;
159159

160+
// The service account associated with the application.
161+
// This is the app-level default identity. If no identity provided during
162+
// create version, Admin API will fallback to this one.
163+
string service_account = 13;
164+
160165
IdentityAwareProxy iap = 14;
161166

162167
// The Google Container Registry domain used for storing managed build docker

protos/google/appengine/v1/deploy.proto

Lines changed: 1 addition & 1 deletion
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.

protos/google/appengine/v1/instance.proto

Lines changed: 10 additions & 10 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.
@@ -36,6 +36,15 @@ message Instance {
3636
pattern: "apps/{app}/services/{service}/versions/{version}/instances/{instance}"
3737
};
3838

39+
// Availability of the instance.
40+
enum Availability {
41+
UNSPECIFIED = 0;
42+
43+
RESIDENT = 1;
44+
45+
DYNAMIC = 2;
46+
}
47+
3948
// Wrapper for LivenessState enum.
4049
message Liveness {
4150
// Liveness health check status for Flex instances.
@@ -70,15 +79,6 @@ message Instance {
7079

7180
}
7281

73-
// Availability of the instance.
74-
enum Availability {
75-
UNSPECIFIED = 0;
76-
77-
RESIDENT = 1;
78-
79-
DYNAMIC = 2;
80-
}
81-
8282
// Output only. Full path to the Instance resource in the API.
8383
// Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.
8484
string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];

protos/google/appengine/v1/location.proto

Lines changed: 1 addition & 1 deletion
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.

protos/google/appengine/v1/network_settings.proto

Lines changed: 1 addition & 1 deletion
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.

protos/google/appengine/v1/operation.proto

Lines changed: 1 addition & 1 deletion
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.

protos/google/appengine/v1/service.proto

Lines changed: 14 additions & 1 deletion
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.
@@ -50,6 +50,19 @@ message Service {
5050
// different versions within the service.
5151
TrafficSplit split = 3;
5252

53+
// A set of labels to apply to this service. Labels are key/value pairs that
54+
// describe the service and all resources that belong to it (e.g.,
55+
// versions). The labels can be used to search and group resources, and are
56+
// propagated to the usage and billing reports, enabling fine-grain analysis
57+
// of costs. An example of using labels is to tag resources belonging to
58+
// different environments (e.g., "env=prod", "env=qa").
59+
//
60+
// <p>Label keys and values can be no longer than 63 characters and can only
61+
// contain lowercase letters, numeric characters, underscores, dashes, and
62+
// international characters. Label keys must start with a lowercase letter
63+
// or an international character. Each service can have at most 32 labels.
64+
map<string, string> labels = 4;
65+
5366
// Ingress settings for this service. Will apply to all versions.
5467
NetworkSettings network_settings = 6;
5568
}

protos/google/appengine/v1/version.proto

Lines changed: 39 additions & 17 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.
@@ -102,6 +102,10 @@ message Version {
102102
// Whether to deploy this version in a container on a virtual machine.
103103
bool vm = 12;
104104

105+
// Allows App Engine second generation runtimes to access the legacy bundled
106+
// services.
107+
bool app_engine_apis = 128;
108+
105109
// Metadata settings that are supplied to this version to enable
106110
// beta runtime features.
107111
map<string, string> beta_settings = 13;
@@ -509,22 +513,6 @@ message Resources {
509513
string kms_key_reference = 5;
510514
}
511515

512-
// VPC access connector specification.
513-
message VpcAccessConnector {
514-
// Full Serverless VPC Access Connector name e.g.
515-
// /projects/my-project/locations/us-central1/connectors/c1.
516-
string name = 1;
517-
}
518-
519-
// The entrypoint for the application.
520-
message Entrypoint {
521-
// The command to run.
522-
oneof command {
523-
// The format should be a shell command that can be fed to `bash -c`.
524-
string shell = 1;
525-
}
526-
}
527-
528516
// Available inbound services.
529517
enum InboundServiceType {
530518
// Not specified.
@@ -570,3 +558,37 @@ enum ServingStatus {
570558
// to `SERVING`.
571559
STOPPED = 2;
572560
}
561+
562+
// VPC access connector specification.
563+
message VpcAccessConnector {
564+
// Available egress settings.
565+
//
566+
// This controls what traffic is diverted through the VPC Access Connector
567+
// resource. By default PRIVATE_IP_RANGES will be used.
568+
enum EgressSetting {
569+
EGRESS_SETTING_UNSPECIFIED = 0;
570+
571+
// Force the use of VPC Access for all egress traffic from the function.
572+
ALL_TRAFFIC = 1;
573+
574+
// Use the VPC Access Connector for private IP space from RFC1918.
575+
PRIVATE_IP_RANGES = 2;
576+
}
577+
578+
// Full Serverless VPC Access Connector name e.g.
579+
// /projects/my-project/locations/us-central1/connectors/c1.
580+
string name = 1;
581+
582+
// The egress setting for the connector, controlling what traffic is diverted
583+
// through it.
584+
EgressSetting egress_setting = 2;
585+
}
586+
587+
// The entrypoint for the application.
588+
message Entrypoint {
589+
// The command to run.
590+
oneof command {
591+
// The format should be a shell command that can be fed to `bash -c`.
592+
string shell = 1;
593+
}
594+
}

0 commit comments

Comments
 (0)