vagrant-unbundled 2.3.2.0 → 2.3.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/Gemfile.lock +12 -12
  4. data/LICENSE +1 -3
  5. data/lib/vagrant/errors.rb +4 -0
  6. data/lib/vagrant/util/install_cli_autocomplete.rb +3 -3
  7. data/lib/vagrant.rb +0 -3
  8. data/pkg/vagrant-unbundled-2.3.2.0.gem +0 -0
  9. data/plugins/commands/serve/command.rb +1 -1
  10. data/plugins/guests/solaris/cap/remove_public_key.rb +2 -2
  11. data/plugins/hosts/gentoo/host.rb +1 -1
  12. data/plugins/hosts/slackware/host.rb +1 -1
  13. data/plugins/providers/virtualbox/action/network.rb +8 -5
  14. data/plugins/providers/virtualbox/driver/base.rb +3 -1
  15. data/plugins/providers/virtualbox/driver/version_5_0.rb +40 -36
  16. data/plugins/providers/virtualbox/driver/version_7_0.rb +223 -5
  17. data/plugins/provisioners/ansible/cap/guest/debian/ansible_install.rb +1 -1
  18. data/plugins/provisioners/ansible/provisioner/host.rb +1 -1
  19. data/plugins/provisioners/chef/config/chef_zero.rb +1 -1
  20. data/plugins/synced_folders/rsync/helper.rb +1 -0
  21. data/templates/locales/en.yml +4 -0
  22. data/thirdparty/proto/api-common-protos/.bazelrc +2 -0
  23. data/thirdparty/proto/api-common-protos/.git +1 -0
  24. data/thirdparty/proto/api-common-protos/.gitignore +11 -0
  25. data/thirdparty/proto/api-common-protos/BUILD.bazel +129 -0
  26. data/thirdparty/proto/api-common-protos/CODE_OF_CONDUCT.md +43 -0
  27. data/thirdparty/proto/api-common-protos/CONTRIBUTING.md +42 -0
  28. data/thirdparty/proto/api-common-protos/Dockerfile +18 -0
  29. data/thirdparty/proto/api-common-protos/LICENSE +201 -0
  30. data/thirdparty/proto/api-common-protos/README.md +113 -0
  31. data/thirdparty/proto/api-common-protos/SECURITY.md +7 -0
  32. data/thirdparty/proto/api-common-protos/WORKSPACE +154 -0
  33. data/thirdparty/proto/api-common-protos/google/api/BUILD.bazel +246 -0
  34. data/thirdparty/proto/api-common-protos/google/api/README.md +46 -0
  35. data/thirdparty/proto/api-common-protos/google/api/annotations.proto +31 -0
  36. data/thirdparty/proto/api-common-protos/google/api/auth.proto +181 -0
  37. data/thirdparty/proto/api-common-protos/google/api/backend.proto +51 -0
  38. data/thirdparty/proto/api-common-protos/google/api/billing.proto +67 -0
  39. data/thirdparty/proto/api-common-protos/google/api/client.proto +99 -0
  40. data/thirdparty/proto/api-common-protos/google/api/config_change.proto +85 -0
  41. data/thirdparty/proto/api-common-protos/google/api/consumer.proto +83 -0
  42. data/thirdparty/proto/api-common-protos/google/api/context.proto +63 -0
  43. data/thirdparty/proto/api-common-protos/google/api/control.proto +33 -0
  44. data/thirdparty/proto/api-common-protos/google/api/distribution.proto +213 -0
  45. data/thirdparty/proto/api-common-protos/google/api/documentation.proto +157 -0
  46. data/thirdparty/proto/api-common-protos/google/api/endpoint.proto +71 -0
  47. data/thirdparty/proto/api-common-protos/google/api/field_behavior.proto +84 -0
  48. data/thirdparty/proto/api-common-protos/google/api/http.proto +318 -0
  49. data/thirdparty/proto/api-common-protos/google/api/httpbody.proto +76 -0
  50. data/thirdparty/proto/api-common-protos/google/api/label.proto +49 -0
  51. data/thirdparty/proto/api-common-protos/google/api/launch_stage.proto +67 -0
  52. data/thirdparty/proto/api-common-protos/google/api/log.proto +55 -0
  53. data/thirdparty/proto/api-common-protos/google/api/logging.proto +83 -0
  54. data/thirdparty/proto/api-common-protos/google/api/metric.proto +192 -0
  55. data/thirdparty/proto/api-common-protos/google/api/monitored_resource.proto +116 -0
  56. data/thirdparty/proto/api-common-protos/google/api/monitoring.proto +89 -0
  57. data/thirdparty/proto/api-common-protos/google/api/quota.proto +259 -0
  58. data/thirdparty/proto/api-common-protos/google/api/resource.proto +299 -0
  59. data/thirdparty/proto/api-common-protos/google/api/routing.proto +461 -0
  60. data/thirdparty/proto/api-common-protos/google/api/service.proto +175 -0
  61. data/thirdparty/proto/api-common-protos/google/api/source_info.proto +32 -0
  62. data/thirdparty/proto/api-common-protos/google/api/system_parameter.proto +96 -0
  63. data/thirdparty/proto/api-common-protos/google/api/usage.proto +92 -0
  64. data/thirdparty/proto/api-common-protos/google/cloud/extended_operations.proto +150 -0
  65. data/thirdparty/proto/api-common-protos/google/iam/README.md +14 -0
  66. data/thirdparty/proto/api-common-protos/google/iam/admin/v1/iam.proto +1087 -0
  67. data/thirdparty/proto/api-common-protos/google/iam/v1/iam_policy.proto +145 -0
  68. data/thirdparty/proto/api-common-protos/google/iam/v1/logging/audit_data.proto +34 -0
  69. data/thirdparty/proto/api-common-protos/google/iam/v1/options.proto +41 -0
  70. data/thirdparty/proto/api-common-protos/google/iam/v1/policy.proto +240 -0
  71. data/thirdparty/proto/api-common-protos/google/logging/type/README.md +12 -0
  72. data/thirdparty/proto/api-common-protos/google/logging/type/http_request.proto +92 -0
  73. data/thirdparty/proto/api-common-protos/google/logging/type/log_severity.proto +72 -0
  74. data/thirdparty/proto/api-common-protos/google/longrunning/README.md +31 -0
  75. data/thirdparty/proto/api-common-protos/google/longrunning/operations.proto +247 -0
  76. data/thirdparty/proto/api-common-protos/google/rpc/README.md +18 -0
  77. data/thirdparty/proto/api-common-protos/google/rpc/code.proto +186 -0
  78. data/thirdparty/proto/api-common-protos/google/rpc/context/attribute_context.proto +287 -0
  79. data/thirdparty/proto/api-common-protos/google/rpc/error_details.proto +246 -0
  80. data/thirdparty/proto/api-common-protos/google/rpc/status.proto +47 -0
  81. data/thirdparty/proto/api-common-protos/google/type/README.md +7 -0
  82. data/thirdparty/proto/api-common-protos/google/type/calendar_period.proto +57 -0
  83. data/thirdparty/proto/api-common-protos/google/type/color.proto +170 -0
  84. data/thirdparty/proto/api-common-protos/google/type/date.proto +50 -0
  85. data/thirdparty/proto/api-common-protos/google/type/datetime.proto +97 -0
  86. data/thirdparty/proto/api-common-protos/google/type/dayofweek.proto +51 -0
  87. data/thirdparty/proto/api-common-protos/google/type/expr.proto +51 -0
  88. data/thirdparty/proto/api-common-protos/google/type/fraction.proto +34 -0
  89. data/thirdparty/proto/api-common-protos/google/type/latlng.proto +37 -0
  90. data/thirdparty/proto/api-common-protos/google/type/money.proto +43 -0
  91. data/thirdparty/proto/api-common-protos/google/type/month.proto +66 -0
  92. data/thirdparty/proto/api-common-protos/google/type/postal_address.proto +135 -0
  93. data/thirdparty/proto/api-common-protos/google/type/quaternion.proto +95 -0
  94. data/thirdparty/proto/api-common-protos/google/type/timeofday.proto +44 -0
  95. data/thirdparty/proto/api-common-protos/renovate.json +5 -0
  96. data/thirdparty/proto/api-common-protos/repository_rules.bzl +222 -0
  97. data/vagrant.gemspec +4 -4
  98. data/version.txt +1 -1
  99. metadata +89 -20
  100. data/lib/vagrant/patches/net-ssh.rb +0 -286
@@ -0,0 +1,145 @@
1
+ // Copyright 2019 Google LLC.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ //
15
+
16
+ syntax = "proto3";
17
+
18
+ package google.iam.v1;
19
+
20
+ import "google/iam/v1/options.proto";
21
+ import "google/iam/v1/policy.proto";
22
+ import "google/api/annotations.proto";
23
+ import "google/api/client.proto";
24
+ import "google/api/field_behavior.proto";
25
+ import "google/api/resource.proto";
26
+
27
+ option cc_enable_arenas = true;
28
+ option csharp_namespace = "Google.Cloud.Iam.V1";
29
+ option go_package = "google.golang.org/genproto/googleapis/iam/v1;iam";
30
+ option java_multiple_files = true;
31
+ option java_outer_classname = "IamPolicyProto";
32
+ option java_package = "com.google.iam.v1";
33
+ option php_namespace = "Google\\Cloud\\Iam\\V1";
34
+
35
+ // ## API Overview
36
+ //
37
+ // Manages Identity and Access Management (IAM) policies.
38
+ //
39
+ // Any implementation of an API that offers access control features
40
+ // implements the google.iam.v1.IAMPolicy interface.
41
+ //
42
+ // ## Data model
43
+ //
44
+ // Access control is applied when a principal (user or service account), takes
45
+ // some action on a resource exposed by a service. Resources, identified by
46
+ // URI-like names, are the unit of access control specification. Service
47
+ // implementations can choose the granularity of access control and the
48
+ // supported permissions for their resources.
49
+ // For example one database service may allow access control to be
50
+ // specified only at the Table level, whereas another might allow access control
51
+ // to also be specified at the Column level.
52
+ //
53
+ // ## Policy Structure
54
+ //
55
+ // See google.iam.v1.Policy
56
+ //
57
+ // This is intentionally not a CRUD style API because access control policies
58
+ // are created and deleted implicitly with the resources to which they are
59
+ // attached.
60
+ service IAMPolicy {
61
+ option (google.api.default_host) = "iam-meta-api.googleapis.com";
62
+
63
+ // Sets the access control policy on the specified resource. Replaces any
64
+ // existing policy.
65
+ rpc SetIamPolicy(SetIamPolicyRequest) returns (Policy) {
66
+ option (google.api.http) = {
67
+ post: "/v1/{resource=**}:setIamPolicy"
68
+ body: "*"
69
+ };
70
+ }
71
+
72
+ // Gets the access control policy for a resource.
73
+ // Returns an empty policy if the resource exists and does not have a policy
74
+ // set.
75
+ rpc GetIamPolicy(GetIamPolicyRequest) returns (Policy) {
76
+ option (google.api.http) = {
77
+ post: "/v1/{resource=**}:getIamPolicy"
78
+ body: "*"
79
+ };
80
+ }
81
+
82
+ // Returns permissions that a caller has on the specified resource.
83
+ // If the resource does not exist, this will return an empty set of
84
+ // permissions, not a NOT_FOUND error.
85
+ //
86
+ // Note: This operation is designed to be used for building permission-aware
87
+ // UIs and command-line tools, not for authorization checking. This operation
88
+ // may "fail open" without warning.
89
+ rpc TestIamPermissions(TestIamPermissionsRequest) returns (TestIamPermissionsResponse) {
90
+ option (google.api.http) = {
91
+ post: "/v1/{resource=**}:testIamPermissions"
92
+ body: "*"
93
+ };
94
+ }
95
+ }
96
+
97
+ // Request message for `SetIamPolicy` method.
98
+ message SetIamPolicyRequest {
99
+ // REQUIRED: The resource for which the policy is being specified.
100
+ // See the operation documentation for the appropriate value for this field.
101
+ string resource = 1 [
102
+ (google.api.field_behavior) = REQUIRED,
103
+ (google.api.resource_reference).type = "*"];
104
+
105
+ // REQUIRED: The complete policy to be applied to the `resource`. The size of
106
+ // the policy is limited to a few 10s of KB. An empty policy is a
107
+ // valid policy but certain Cloud Platform services (such as Projects)
108
+ // might reject them.
109
+ Policy policy = 2 [(google.api.field_behavior) = REQUIRED];
110
+ }
111
+
112
+ // Request message for `GetIamPolicy` method.
113
+ message GetIamPolicyRequest {
114
+ // REQUIRED: The resource for which the policy is being requested.
115
+ // See the operation documentation for the appropriate value for this field.
116
+ string resource = 1 [
117
+ (google.api.field_behavior) = REQUIRED,
118
+ (google.api.resource_reference).type = "*"];
119
+
120
+ // OPTIONAL: A `GetPolicyOptions` object for specifying options to
121
+ // `GetIamPolicy`. This field is only used by Cloud IAM.
122
+ GetPolicyOptions options = 2;
123
+ }
124
+
125
+ // Request message for `TestIamPermissions` method.
126
+ message TestIamPermissionsRequest {
127
+ // REQUIRED: The resource for which the policy detail is being requested.
128
+ // See the operation documentation for the appropriate value for this field.
129
+ string resource = 1[
130
+ (google.api.field_behavior) = REQUIRED,
131
+ (google.api.resource_reference).type = "*"];
132
+
133
+ // The set of permissions to check for the `resource`. Permissions with
134
+ // wildcards (such as '*' or 'storage.*') are not allowed. For more
135
+ // information see
136
+ // [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
137
+ repeated string permissions = 2 [(google.api.field_behavior) = REQUIRED];
138
+ }
139
+
140
+ // Response message for `TestIamPermissions` method.
141
+ message TestIamPermissionsResponse {
142
+ // A subset of `TestPermissionsRequest.permissions` that the caller is
143
+ // allowed.
144
+ repeated string permissions = 1;
145
+ }
@@ -0,0 +1,34 @@
1
+ // Copyright 2017 Google Inc.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.iam.v1.logging;
18
+
19
+ import "google/api/annotations.proto";
20
+ import "google/iam/v1/policy.proto";
21
+
22
+ option csharp_namespace = "Google.Cloud.Iam.V1.Logging";
23
+ option go_package = "google.golang.org/genproto/googleapis/iam/v1/logging;logging";
24
+ option java_multiple_files = true;
25
+ option java_outer_classname = "AuditDataProto";
26
+ option java_package = "com.google.iam.v1.logging";
27
+
28
+ // Audit log information specific to Cloud IAM. This message is serialized
29
+ // as an `Any` type in the `ServiceData` message of an
30
+ // `AuditLog` message.
31
+ message AuditData {
32
+ // Policy delta between the original policy and the newly set policy.
33
+ google.iam.v1.PolicyDelta policy_delta = 2;
34
+ }
@@ -0,0 +1,41 @@
1
+ // Copyright 2019 Google LLC.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ //
15
+
16
+ syntax = "proto3";
17
+
18
+ package google.iam.v1;
19
+
20
+ import "google/api/annotations.proto";
21
+
22
+ option cc_enable_arenas = true;
23
+ option csharp_namespace = "Google.Cloud.Iam.V1";
24
+ option go_package = "google.golang.org/genproto/googleapis/iam/v1;iam";
25
+ option java_multiple_files = true;
26
+ option java_outer_classname = "OptionsProto";
27
+ option java_package = "com.google.iam.v1";
28
+ option php_namespace = "Google\\Cloud\\Iam\\V1";
29
+
30
+ // Encapsulates settings provided to GetIamPolicy.
31
+ message GetPolicyOptions {
32
+ // Optional. The policy format version to be returned.
33
+ //
34
+ // Valid values are 0, 1, and 3. Requests specifying an invalid value will be
35
+ // rejected.
36
+ //
37
+ // Requests for policies with any conditional bindings must specify version 3.
38
+ // Policies without any conditional bindings may specify any valid value or
39
+ // leave the field unset.
40
+ int32 requested_policy_version = 1;
41
+ }
@@ -0,0 +1,240 @@
1
+ // Copyright 2019 Google LLC.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ //
15
+
16
+ syntax = "proto3";
17
+
18
+ package google.iam.v1;
19
+
20
+ import "google/type/expr.proto";
21
+ import "google/api/annotations.proto";
22
+
23
+ option cc_enable_arenas = true;
24
+ option csharp_namespace = "Google.Cloud.Iam.V1";
25
+ option go_package = "google.golang.org/genproto/googleapis/iam/v1;iam";
26
+ option java_multiple_files = true;
27
+ option java_outer_classname = "PolicyProto";
28
+ option java_package = "com.google.iam.v1";
29
+ option php_namespace = "Google\\Cloud\\Iam\\V1";
30
+
31
+ // Defines an Identity and Access Management (IAM) policy. It is used to
32
+ // specify access control policies for Cloud Platform resources.
33
+ //
34
+ //
35
+ // A `Policy` is a collection of `bindings`. A `binding` binds one or more
36
+ // `members` to a single `role`. Members can be user accounts, service accounts,
37
+ // Google groups, and domains (such as G Suite). A `role` is a named list of
38
+ // permissions (defined by IAM or configured by users). A `binding` can
39
+ // optionally specify a `condition`, which is a logic expression that further
40
+ // constrains the role binding based on attributes about the request and/or
41
+ // target resource.
42
+ //
43
+ // **JSON Example**
44
+ //
45
+ // {
46
+ // "bindings": [
47
+ // {
48
+ // "role": "roles/resourcemanager.organizationAdmin",
49
+ // "members": [
50
+ // "user:mike@example.com",
51
+ // "group:admins@example.com",
52
+ // "domain:google.com",
53
+ // "serviceAccount:my-project-id@appspot.gserviceaccount.com"
54
+ // ]
55
+ // },
56
+ // {
57
+ // "role": "roles/resourcemanager.organizationViewer",
58
+ // "members": ["user:eve@example.com"],
59
+ // "condition": {
60
+ // "title": "expirable access",
61
+ // "description": "Does not grant access after Sep 2020",
62
+ // "expression": "request.time <
63
+ // timestamp('2020-10-01T00:00:00.000Z')",
64
+ // }
65
+ // }
66
+ // ]
67
+ // }
68
+ //
69
+ // **YAML Example**
70
+ //
71
+ // bindings:
72
+ // - members:
73
+ // - user:mike@example.com
74
+ // - group:admins@example.com
75
+ // - domain:google.com
76
+ // - serviceAccount:my-project-id@appspot.gserviceaccount.com
77
+ // role: roles/resourcemanager.organizationAdmin
78
+ // - members:
79
+ // - user:eve@example.com
80
+ // role: roles/resourcemanager.organizationViewer
81
+ // condition:
82
+ // title: expirable access
83
+ // description: Does not grant access after Sep 2020
84
+ // expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
85
+ //
86
+ // For a description of IAM and its features, see the
87
+ // [IAM developer's guide](https://cloud.google.com/iam/docs).
88
+ message Policy {
89
+ // Specifies the format of the policy.
90
+ //
91
+ // Valid values are 0, 1, and 3. Requests specifying an invalid value will be
92
+ // rejected.
93
+ //
94
+ // Operations affecting conditional bindings must specify version 3. This can
95
+ // be either setting a conditional policy, modifying a conditional binding,
96
+ // or removing a binding (conditional or unconditional) from the stored
97
+ // conditional policy.
98
+ // Operations on non-conditional policies may specify any valid value or
99
+ // leave the field unset.
100
+ //
101
+ // If no etag is provided in the call to `setIamPolicy`, version compliance
102
+ // checks against the stored policy is skipped.
103
+ int32 version = 1;
104
+
105
+ // Associates a list of `members` to a `role`. Optionally may specify a
106
+ // `condition` that determines when binding is in effect.
107
+ // `bindings` with no members will result in an error.
108
+ repeated Binding bindings = 4;
109
+
110
+ // `etag` is used for optimistic concurrency control as a way to help
111
+ // prevent simultaneous updates of a policy from overwriting each other.
112
+ // It is strongly suggested that systems make use of the `etag` in the
113
+ // read-modify-write cycle to perform policy updates in order to avoid race
114
+ // conditions: An `etag` is returned in the response to `getIamPolicy`, and
115
+ // systems are expected to put that etag in the request to `setIamPolicy` to
116
+ // ensure that their change will be applied to the same version of the policy.
117
+ //
118
+ // If no `etag` is provided in the call to `setIamPolicy`, then the existing
119
+ // policy is overwritten. Due to blind-set semantics of an etag-less policy,
120
+ // 'setIamPolicy' will not fail even if the incoming policy version does not
121
+ // meet the requirements for modifying the stored policy.
122
+ bytes etag = 3;
123
+ }
124
+
125
+ // Associates `members` with a `role`.
126
+ message Binding {
127
+ // Role that is assigned to `members`.
128
+ // For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
129
+ string role = 1;
130
+
131
+ // Specifies the identities requesting access for a Cloud Platform resource.
132
+ // `members` can have the following values:
133
+ //
134
+ // * `allUsers`: A special identifier that represents anyone who is
135
+ // on the internet; with or without a Google account.
136
+ //
137
+ // * `allAuthenticatedUsers`: A special identifier that represents anyone
138
+ // who is authenticated with a Google account or a service account.
139
+ //
140
+ // * `user:{emailid}`: An email address that represents a specific Google
141
+ // account. For example, `alice@example.com` .
142
+ //
143
+ //
144
+ // * `serviceAccount:{emailid}`: An email address that represents a service
145
+ // account. For example, `my-other-app@appspot.gserviceaccount.com`.
146
+ //
147
+ // * `group:{emailid}`: An email address that represents a Google group.
148
+ // For example, `admins@example.com`.
149
+ //
150
+ //
151
+ // * `domain:{domain}`: The G Suite domain (primary) that represents all the
152
+ // users of that domain. For example, `google.com` or `example.com`.
153
+ //
154
+ //
155
+ repeated string members = 2;
156
+
157
+ // The condition that is associated with this binding.
158
+ // NOTE: An unsatisfied condition will not allow user access via current
159
+ // binding. Different bindings, including their conditions, are examined
160
+ // independently.
161
+ google.type.Expr condition = 3;
162
+ }
163
+
164
+ // The difference delta between two policies.
165
+ message PolicyDelta {
166
+ // The delta for Bindings between two policies.
167
+ repeated BindingDelta binding_deltas = 1;
168
+
169
+ // The delta for AuditConfigs between two policies.
170
+ repeated AuditConfigDelta audit_config_deltas = 2;
171
+ }
172
+
173
+ // One delta entry for Binding. Each individual change (only one member in each
174
+ // entry) to a binding will be a separate entry.
175
+ message BindingDelta {
176
+ // The type of action performed on a Binding in a policy.
177
+ enum Action {
178
+ // Unspecified.
179
+ ACTION_UNSPECIFIED = 0;
180
+
181
+ // Addition of a Binding.
182
+ ADD = 1;
183
+
184
+ // Removal of a Binding.
185
+ REMOVE = 2;
186
+ }
187
+
188
+ // The action that was performed on a Binding.
189
+ // Required
190
+ Action action = 1;
191
+
192
+ // Role that is assigned to `members`.
193
+ // For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
194
+ // Required
195
+ string role = 2;
196
+
197
+ // A single identity requesting access for a Cloud Platform resource.
198
+ // Follows the same format of Binding.members.
199
+ // Required
200
+ string member = 3;
201
+
202
+ // The condition that is associated with this binding.
203
+ google.type.Expr condition = 4;
204
+ }
205
+
206
+ // One delta entry for AuditConfig. Each individual change (only one
207
+ // exempted_member in each entry) to a AuditConfig will be a separate entry.
208
+ message AuditConfigDelta {
209
+ // The type of action performed on an audit configuration in a policy.
210
+ enum Action {
211
+ // Unspecified.
212
+ ACTION_UNSPECIFIED = 0;
213
+
214
+ // Addition of an audit configuration.
215
+ ADD = 1;
216
+
217
+ // Removal of an audit configuration.
218
+ REMOVE = 2;
219
+ }
220
+
221
+ // The action that was performed on an audit configuration in a policy.
222
+ // Required
223
+ Action action = 1;
224
+
225
+ // Specifies a service that was configured for Cloud Audit Logging.
226
+ // For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
227
+ // `allServices` is a special value that covers all services.
228
+ // Required
229
+ string service = 2;
230
+
231
+ // A single identity that is exempted from "data access" audit
232
+ // logging for the `service` specified above.
233
+ // Follows the same format of Binding.members.
234
+ string exempted_member = 3;
235
+
236
+ // Specifies the log_type that was be enabled. ADMIN_ACTIVITY is always
237
+ // enabled, and cannot be configured.
238
+ // Required
239
+ string log_type = 4;
240
+ }
@@ -0,0 +1,12 @@
1
+ ## Logging types
2
+
3
+ This package contains shared [protocol buffer][protobuf] types that are populated
4
+ by the Stackdriver Logging API and consumed by other APIs.
5
+
6
+ ### Key Concepts
7
+
8
+ - **HttpRequest**: Contains the complete set of information about a particular
9
+ HTTP request, such as HTTP method, request URL, status code, and other things.
10
+ - **LogSeverity**: The severity of a log entry (e.g. `DEBUG`, `INFO`, `WARNING`).
11
+
12
+ [protobuf]: https://developers.google.com/protocol-buffers/
@@ -0,0 +1,92 @@
1
+ // Copyright 2017 Google Inc.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.logging.type;
18
+
19
+ import "google/api/annotations.proto";
20
+ import "google/protobuf/duration.proto";
21
+
22
+ option csharp_namespace = "Google.Cloud.Logging.Type";
23
+ option go_package = "google.golang.org/genproto/googleapis/logging/type;ltype";
24
+ option java_multiple_files = true;
25
+ option java_outer_classname = "HttpRequestProto";
26
+ option java_package = "com.google.logging.type";
27
+ option php_namespace = "Google\\Cloud\\Logging\\Type";
28
+
29
+
30
+ // A common proto for logging HTTP requests. Only contains semantics
31
+ // defined by the HTTP specification. Product-specific logging
32
+ // information MUST be defined in a separate message.
33
+ message HttpRequest {
34
+ // The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`.
35
+ string request_method = 1;
36
+
37
+ // The scheme (http, https), the host name, the path and the query
38
+ // portion of the URL that was requested.
39
+ // Example: `"http://example.com/some/info?color=red"`.
40
+ string request_url = 2;
41
+
42
+ // The size of the HTTP request message in bytes, including the request
43
+ // headers and the request body.
44
+ int64 request_size = 3;
45
+
46
+ // The response code indicating the status of response.
47
+ // Examples: 200, 404.
48
+ int32 status = 4;
49
+
50
+ // The size of the HTTP response message sent back to the client, in bytes,
51
+ // including the response headers and the response body.
52
+ int64 response_size = 5;
53
+
54
+ // The user agent sent by the client. Example:
55
+ // `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)"`.
56
+ string user_agent = 6;
57
+
58
+ // The IP address (IPv4 or IPv6) of the client that issued the HTTP
59
+ // request. Examples: `"192.168.1.1"`, `"FE80::0202:B3FF:FE1E:8329"`.
60
+ string remote_ip = 7;
61
+
62
+ // The IP address (IPv4 or IPv6) of the origin server that the request was
63
+ // sent to.
64
+ string server_ip = 13;
65
+
66
+ // The referer URL of the request, as defined in
67
+ // [HTTP/1.1 Header Field Definitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).
68
+ string referer = 8;
69
+
70
+ // The request processing latency on the server, from the time the request was
71
+ // received until the response was sent.
72
+ google.protobuf.Duration latency = 14;
73
+
74
+ // Whether or not a cache lookup was attempted.
75
+ bool cache_lookup = 11;
76
+
77
+ // Whether or not an entity was served from cache
78
+ // (with or without validation).
79
+ bool cache_hit = 9;
80
+
81
+ // Whether or not the response was validated with the origin server before
82
+ // being served from cache. This field is only meaningful if `cache_hit` is
83
+ // True.
84
+ bool cache_validated_with_origin_server = 10;
85
+
86
+ // The number of HTTP response bytes inserted into cache. Set only when a
87
+ // cache fill was attempted.
88
+ int64 cache_fill_bytes = 12;
89
+
90
+ // Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket"
91
+ string protocol = 15;
92
+ }
@@ -0,0 +1,72 @@
1
+ // Copyright 2017 Google Inc.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.logging.type;
18
+
19
+ import "google/api/annotations.proto";
20
+
21
+ option csharp_namespace = "Google.Cloud.Logging.Type";
22
+ option go_package = "google.golang.org/genproto/googleapis/logging/type;ltype";
23
+ option java_multiple_files = true;
24
+ option java_outer_classname = "LogSeverityProto";
25
+ option java_package = "com.google.logging.type";
26
+ option php_namespace = "Google\\Cloud\\Logging\\Type";
27
+
28
+
29
+ // The severity of the event described in a log entry, expressed as one of the
30
+ // standard severity levels listed below. For your reference, the levels are
31
+ // assigned the listed numeric values. The effect of using numeric values other
32
+ // than those listed is undefined.
33
+ //
34
+ // You can filter for log entries by severity. For example, the following
35
+ // filter expression will match log entries with severities `INFO`, `NOTICE`,
36
+ // and `WARNING`:
37
+ //
38
+ // severity > DEBUG AND severity <= WARNING
39
+ //
40
+ // If you are writing log entries, you should map other severity encodings to
41
+ // one of these standard levels. For example, you might map all of Java's FINE,
42
+ // FINER, and FINEST levels to `LogSeverity.DEBUG`. You can preserve the
43
+ // original severity level in the log entry payload if you wish.
44
+ enum LogSeverity {
45
+ // (0) The log entry has no assigned severity level.
46
+ DEFAULT = 0;
47
+
48
+ // (100) Debug or trace information.
49
+ DEBUG = 100;
50
+
51
+ // (200) Routine information, such as ongoing status or performance.
52
+ INFO = 200;
53
+
54
+ // (300) Normal but significant events, such as start up, shut down, or
55
+ // a configuration change.
56
+ NOTICE = 300;
57
+
58
+ // (400) Warning events might cause problems.
59
+ WARNING = 400;
60
+
61
+ // (500) Error events are likely to cause problems.
62
+ ERROR = 500;
63
+
64
+ // (600) Critical events cause more severe problems or outages.
65
+ CRITICAL = 600;
66
+
67
+ // (700) A person must take an action immediately.
68
+ ALERT = 700;
69
+
70
+ // (800) One or more systems are unusable.
71
+ EMERGENCY = 800;
72
+ }
@@ -0,0 +1,31 @@
1
+ ## Long-running Operations API
2
+
3
+ This package contains the definition of an abstract interface that
4
+ manages long running operations with API services.
5
+
6
+ ### Operation
7
+
8
+ The primary message to understand within LRO is the `Operation` message.
9
+ Operations have a unique name (in the context of a particular endpoint).
10
+ Additionally, a service (called `Operations` -- plural) defines the interface
11
+ for querying the state of any given operation.
12
+
13
+ APIs that implement a concept of long-running operations are encouraged
14
+ to follow this pattern: When a caller invokes an API backend to start a job...
15
+
16
+ * The API backend starts asychronous work to fulfill the caller's
17
+ request, and generates a unique name (the `Operation` name) to refer
18
+ to the ongoing asychronous work.
19
+ * The API backend immediately returns the `Operation` back to the caller.
20
+ * The caller can invoke the API methods defined in the `Operations` service
21
+ to get the current status of the asychronous work, and also to
22
+ discover the final result (success or error).
23
+
24
+ For Google APIs, the implementation of this pattern and the use of this
25
+ proto are part of our [design rules][operations-rules]. Additionally, our
26
+ [API client tooling][gapic-generator] seeks to be intelligent about these, to
27
+ improve the client API consumption experience. Therefore, APIs outside of
28
+ Google can also benefit by following this same pattern.
29
+
30
+ [operations-rules]: https://cloud.google.com/apis/design/design_patterns#long_running_operations
31
+ [gapic-generator]: https://github.com/googleapis/gapic-generator