google-cloud-cloudcontrolspartner 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- google/cloud/cloudcontrolspartner/__init__.py +115 -0
- google/cloud/cloudcontrolspartner/gapic_version.py +16 -0
- google/cloud/cloudcontrolspartner/py.typed +2 -0
- google/cloud/cloudcontrolspartner_v1/__init__.py +103 -0
- google/cloud/cloudcontrolspartner_v1/gapic_metadata.json +197 -0
- google/cloud/cloudcontrolspartner_v1/gapic_version.py +16 -0
- google/cloud/cloudcontrolspartner_v1/py.typed +2 -0
- google/cloud/cloudcontrolspartner_v1/services/__init__.py +15 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/__init__.py +22 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/async_client.py +1253 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/client.py +1705 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/pagers.py +429 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/transports/__init__.py +41 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/transports/base.py +340 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/transports/grpc.py +466 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/transports/grpc_asyncio.py +472 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_core/transports/rest.py +1212 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/__init__.py +22 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/async_client.py +528 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/client.py +935 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/pagers.py +155 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/transports/__init__.py +41 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/transports/base.py +194 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/transports/grpc.py +300 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/transports/grpc_asyncio.py +299 -0
- google/cloud/cloudcontrolspartner_v1/services/cloud_controls_partner_monitoring/transports/rest.py +434 -0
- google/cloud/cloudcontrolspartner_v1/types/__init__.py +82 -0
- google/cloud/cloudcontrolspartner_v1/types/access_approval_requests.py +228 -0
- google/cloud/cloudcontrolspartner_v1/types/completion_state.py +53 -0
- google/cloud/cloudcontrolspartner_v1/types/core.py +93 -0
- google/cloud/cloudcontrolspartner_v1/types/customer_workloads.py +300 -0
- google/cloud/cloudcontrolspartner_v1/types/customers.py +233 -0
- google/cloud/cloudcontrolspartner_v1/types/ekm_connections.py +141 -0
- google/cloud/cloudcontrolspartner_v1/types/monitoring.py +24 -0
- google/cloud/cloudcontrolspartner_v1/types/partner_permissions.py +94 -0
- google/cloud/cloudcontrolspartner_v1/types/partners.py +188 -0
- google/cloud/cloudcontrolspartner_v1/types/violations.py +388 -0
- google/cloud/cloudcontrolspartner_v1beta/__init__.py +103 -0
- google/cloud/cloudcontrolspartner_v1beta/gapic_metadata.json +197 -0
- google/cloud/cloudcontrolspartner_v1beta/gapic_version.py +16 -0
- google/cloud/cloudcontrolspartner_v1beta/py.typed +2 -0
- google/cloud/cloudcontrolspartner_v1beta/services/__init__.py +15 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/__init__.py +22 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/async_client.py +1262 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/client.py +1714 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/pagers.py +429 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/transports/__init__.py +41 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/transports/base.py +340 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/transports/grpc.py +466 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/transports/grpc_asyncio.py +472 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_core/transports/rest.py +1212 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/__init__.py +22 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/async_client.py +530 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/client.py +937 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/pagers.py +155 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/transports/__init__.py +41 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/transports/base.py +194 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/transports/grpc.py +300 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/transports/grpc_asyncio.py +299 -0
- google/cloud/cloudcontrolspartner_v1beta/services/cloud_controls_partner_monitoring/transports/rest.py +434 -0
- google/cloud/cloudcontrolspartner_v1beta/types/__init__.py +82 -0
- google/cloud/cloudcontrolspartner_v1beta/types/access_approval_requests.py +230 -0
- google/cloud/cloudcontrolspartner_v1beta/types/completion_state.py +53 -0
- google/cloud/cloudcontrolspartner_v1beta/types/core.py +93 -0
- google/cloud/cloudcontrolspartner_v1beta/types/customer_workloads.py +304 -0
- google/cloud/cloudcontrolspartner_v1beta/types/customers.py +236 -0
- google/cloud/cloudcontrolspartner_v1beta/types/ekm_connections.py +143 -0
- google/cloud/cloudcontrolspartner_v1beta/types/monitoring.py +24 -0
- google/cloud/cloudcontrolspartner_v1beta/types/partner_permissions.py +96 -0
- google/cloud/cloudcontrolspartner_v1beta/types/partners.py +189 -0
- google/cloud/cloudcontrolspartner_v1beta/types/violations.py +391 -0
- google_cloud_cloudcontrolspartner-0.1.0.dist-info/LICENSE +202 -0
- google_cloud_cloudcontrolspartner-0.1.0.dist-info/METADATA +137 -0
- google_cloud_cloudcontrolspartner-0.1.0.dist-info/RECORD +76 -0
- google_cloud_cloudcontrolspartner-0.1.0.dist-info/WHEEL +5 -0
- google_cloud_cloudcontrolspartner-0.1.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2023 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
18
|
+
from typing import MutableMapping, MutableSequence
|
|
19
|
+
|
|
20
|
+
from google.protobuf import timestamp_pb2 # type: ignore
|
|
21
|
+
import proto # type: ignore
|
|
22
|
+
|
|
23
|
+
from google.cloud.cloudcontrolspartner_v1beta.types import (
|
|
24
|
+
completion_state as gcc_completion_state,
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
__protobuf__ = proto.module(
|
|
28
|
+
package="google.cloud.cloudcontrolspartner.v1beta",
|
|
29
|
+
manifest={
|
|
30
|
+
"Customer",
|
|
31
|
+
"ListCustomersRequest",
|
|
32
|
+
"ListCustomersResponse",
|
|
33
|
+
"GetCustomerRequest",
|
|
34
|
+
"CustomerOnboardingState",
|
|
35
|
+
"CustomerOnboardingStep",
|
|
36
|
+
},
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class Customer(proto.Message):
|
|
41
|
+
r"""Contains metadata around a Cloud Controls Partner Customer
|
|
42
|
+
|
|
43
|
+
Attributes:
|
|
44
|
+
name (str):
|
|
45
|
+
Identifier. Format:
|
|
46
|
+
|
|
47
|
+
organizations/{organization}/locations/{location}/customers/{customer}
|
|
48
|
+
display_name (str):
|
|
49
|
+
The customer organization's display name.
|
|
50
|
+
E.g. "google.com".
|
|
51
|
+
customer_onboarding_state (google.cloud.cloudcontrolspartner_v1beta.types.CustomerOnboardingState):
|
|
52
|
+
Container for customer onboarding steps
|
|
53
|
+
is_onboarded (bool):
|
|
54
|
+
Indicates whether a customer is fully
|
|
55
|
+
onboarded
|
|
56
|
+
"""
|
|
57
|
+
|
|
58
|
+
name: str = proto.Field(
|
|
59
|
+
proto.STRING,
|
|
60
|
+
number=1,
|
|
61
|
+
)
|
|
62
|
+
display_name: str = proto.Field(
|
|
63
|
+
proto.STRING,
|
|
64
|
+
number=2,
|
|
65
|
+
)
|
|
66
|
+
customer_onboarding_state: "CustomerOnboardingState" = proto.Field(
|
|
67
|
+
proto.MESSAGE,
|
|
68
|
+
number=3,
|
|
69
|
+
message="CustomerOnboardingState",
|
|
70
|
+
)
|
|
71
|
+
is_onboarded: bool = proto.Field(
|
|
72
|
+
proto.BOOL,
|
|
73
|
+
number=4,
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
class ListCustomersRequest(proto.Message):
|
|
78
|
+
r"""Request to list customers
|
|
79
|
+
|
|
80
|
+
Attributes:
|
|
81
|
+
parent (str):
|
|
82
|
+
Required. Parent resource
|
|
83
|
+
Format:
|
|
84
|
+
organizations/{organization}/locations/{location}
|
|
85
|
+
page_size (int):
|
|
86
|
+
The maximum number of Customers to return.
|
|
87
|
+
The service may return fewer than this value. If
|
|
88
|
+
unspecified, at most 500 Customers will be
|
|
89
|
+
returned.
|
|
90
|
+
page_token (str):
|
|
91
|
+
A page token, received from a previous ``ListCustomers``
|
|
92
|
+
call. Provide this to retrieve the subsequent page.
|
|
93
|
+
filter (str):
|
|
94
|
+
Optional. Filtering results
|
|
95
|
+
order_by (str):
|
|
96
|
+
Optional. Hint for how to order the results
|
|
97
|
+
"""
|
|
98
|
+
|
|
99
|
+
parent: str = proto.Field(
|
|
100
|
+
proto.STRING,
|
|
101
|
+
number=1,
|
|
102
|
+
)
|
|
103
|
+
page_size: int = proto.Field(
|
|
104
|
+
proto.INT32,
|
|
105
|
+
number=2,
|
|
106
|
+
)
|
|
107
|
+
page_token: str = proto.Field(
|
|
108
|
+
proto.STRING,
|
|
109
|
+
number=3,
|
|
110
|
+
)
|
|
111
|
+
filter: str = proto.Field(
|
|
112
|
+
proto.STRING,
|
|
113
|
+
number=4,
|
|
114
|
+
)
|
|
115
|
+
order_by: str = proto.Field(
|
|
116
|
+
proto.STRING,
|
|
117
|
+
number=5,
|
|
118
|
+
)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
class ListCustomersResponse(proto.Message):
|
|
122
|
+
r"""Response message for list customer Customers requests
|
|
123
|
+
|
|
124
|
+
Attributes:
|
|
125
|
+
customers (MutableSequence[google.cloud.cloudcontrolspartner_v1beta.types.Customer]):
|
|
126
|
+
List of customers
|
|
127
|
+
next_page_token (str):
|
|
128
|
+
A token that can be sent as ``page_token`` to retrieve the
|
|
129
|
+
next page. If this field is omitted, there are no subsequent
|
|
130
|
+
pages.
|
|
131
|
+
unreachable (MutableSequence[str]):
|
|
132
|
+
Locations that could not be reached.
|
|
133
|
+
"""
|
|
134
|
+
|
|
135
|
+
@property
|
|
136
|
+
def raw_page(self):
|
|
137
|
+
return self
|
|
138
|
+
|
|
139
|
+
customers: MutableSequence["Customer"] = proto.RepeatedField(
|
|
140
|
+
proto.MESSAGE,
|
|
141
|
+
number=1,
|
|
142
|
+
message="Customer",
|
|
143
|
+
)
|
|
144
|
+
next_page_token: str = proto.Field(
|
|
145
|
+
proto.STRING,
|
|
146
|
+
number=2,
|
|
147
|
+
)
|
|
148
|
+
unreachable: MutableSequence[str] = proto.RepeatedField(
|
|
149
|
+
proto.STRING,
|
|
150
|
+
number=3,
|
|
151
|
+
)
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
class GetCustomerRequest(proto.Message):
|
|
155
|
+
r"""Message for getting a customer
|
|
156
|
+
|
|
157
|
+
Attributes:
|
|
158
|
+
name (str):
|
|
159
|
+
Required. Format:
|
|
160
|
+
|
|
161
|
+
organizations/{organization}/locations/{location}/customers/{customer}
|
|
162
|
+
"""
|
|
163
|
+
|
|
164
|
+
name: str = proto.Field(
|
|
165
|
+
proto.STRING,
|
|
166
|
+
number=1,
|
|
167
|
+
)
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
class CustomerOnboardingState(proto.Message):
|
|
171
|
+
r"""Container for customer onboarding steps
|
|
172
|
+
|
|
173
|
+
Attributes:
|
|
174
|
+
onboarding_steps (MutableSequence[google.cloud.cloudcontrolspartner_v1beta.types.CustomerOnboardingStep]):
|
|
175
|
+
List of customer onboarding steps
|
|
176
|
+
"""
|
|
177
|
+
|
|
178
|
+
onboarding_steps: MutableSequence["CustomerOnboardingStep"] = proto.RepeatedField(
|
|
179
|
+
proto.MESSAGE,
|
|
180
|
+
number=1,
|
|
181
|
+
message="CustomerOnboardingStep",
|
|
182
|
+
)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
class CustomerOnboardingStep(proto.Message):
|
|
186
|
+
r"""Container for customer onboarding information
|
|
187
|
+
|
|
188
|
+
Attributes:
|
|
189
|
+
step (google.cloud.cloudcontrolspartner_v1beta.types.CustomerOnboardingStep.Step):
|
|
190
|
+
The onboarding step
|
|
191
|
+
start_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
192
|
+
The starting time of the onboarding step
|
|
193
|
+
completion_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
194
|
+
The completion time of the onboarding step
|
|
195
|
+
completion_state (google.cloud.cloudcontrolspartner_v1beta.types.CompletionState):
|
|
196
|
+
Output only. Current state of the step
|
|
197
|
+
"""
|
|
198
|
+
|
|
199
|
+
class Step(proto.Enum):
|
|
200
|
+
r"""Enum for possible onboarding steps
|
|
201
|
+
|
|
202
|
+
Values:
|
|
203
|
+
STEP_UNSPECIFIED (0):
|
|
204
|
+
Unspecified step
|
|
205
|
+
KAJ_ENROLLMENT (1):
|
|
206
|
+
KAJ Enrollment
|
|
207
|
+
CUSTOMER_ENVIRONMENT (2):
|
|
208
|
+
Customer Environment
|
|
209
|
+
"""
|
|
210
|
+
STEP_UNSPECIFIED = 0
|
|
211
|
+
KAJ_ENROLLMENT = 1
|
|
212
|
+
CUSTOMER_ENVIRONMENT = 2
|
|
213
|
+
|
|
214
|
+
step: Step = proto.Field(
|
|
215
|
+
proto.ENUM,
|
|
216
|
+
number=1,
|
|
217
|
+
enum=Step,
|
|
218
|
+
)
|
|
219
|
+
start_time: timestamp_pb2.Timestamp = proto.Field(
|
|
220
|
+
proto.MESSAGE,
|
|
221
|
+
number=2,
|
|
222
|
+
message=timestamp_pb2.Timestamp,
|
|
223
|
+
)
|
|
224
|
+
completion_time: timestamp_pb2.Timestamp = proto.Field(
|
|
225
|
+
proto.MESSAGE,
|
|
226
|
+
number=3,
|
|
227
|
+
message=timestamp_pb2.Timestamp,
|
|
228
|
+
)
|
|
229
|
+
completion_state: gcc_completion_state.CompletionState = proto.Field(
|
|
230
|
+
proto.ENUM,
|
|
231
|
+
number=4,
|
|
232
|
+
enum=gcc_completion_state.CompletionState,
|
|
233
|
+
)
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
__all__ = tuple(sorted(__protobuf__.manifest))
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2023 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
18
|
+
from typing import MutableMapping, MutableSequence
|
|
19
|
+
|
|
20
|
+
import proto # type: ignore
|
|
21
|
+
|
|
22
|
+
__protobuf__ = proto.module(
|
|
23
|
+
package="google.cloud.cloudcontrolspartner.v1beta",
|
|
24
|
+
manifest={
|
|
25
|
+
"EkmConnections",
|
|
26
|
+
"GetEkmConnectionsRequest",
|
|
27
|
+
"EkmConnection",
|
|
28
|
+
},
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class EkmConnections(proto.Message):
|
|
33
|
+
r"""The EKM connections associated with a workload
|
|
34
|
+
|
|
35
|
+
Attributes:
|
|
36
|
+
name (str):
|
|
37
|
+
Identifier. Format:
|
|
38
|
+
|
|
39
|
+
organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/ekmConnections
|
|
40
|
+
ekm_connections (MutableSequence[google.cloud.cloudcontrolspartner_v1beta.types.EkmConnection]):
|
|
41
|
+
The EKM connections associated with the
|
|
42
|
+
workload
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
name: str = proto.Field(
|
|
46
|
+
proto.STRING,
|
|
47
|
+
number=1,
|
|
48
|
+
)
|
|
49
|
+
ekm_connections: MutableSequence["EkmConnection"] = proto.RepeatedField(
|
|
50
|
+
proto.MESSAGE,
|
|
51
|
+
number=2,
|
|
52
|
+
message="EkmConnection",
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
class GetEkmConnectionsRequest(proto.Message):
|
|
57
|
+
r"""Request for getting the EKM connections associated with a
|
|
58
|
+
workload
|
|
59
|
+
|
|
60
|
+
Attributes:
|
|
61
|
+
name (str):
|
|
62
|
+
Required. Format:
|
|
63
|
+
|
|
64
|
+
organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/ekmConnections
|
|
65
|
+
"""
|
|
66
|
+
|
|
67
|
+
name: str = proto.Field(
|
|
68
|
+
proto.STRING,
|
|
69
|
+
number=1,
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
class EkmConnection(proto.Message):
|
|
74
|
+
r"""Details about the EKM connection
|
|
75
|
+
|
|
76
|
+
Attributes:
|
|
77
|
+
connection_name (str):
|
|
78
|
+
Resource name of the EKM connection in the format:
|
|
79
|
+
projects/{project}/locations/{location}/ekmConnections/{ekm_connection}
|
|
80
|
+
connection_state (google.cloud.cloudcontrolspartner_v1beta.types.EkmConnection.ConnectionState):
|
|
81
|
+
Output only. The connection state
|
|
82
|
+
connection_error (google.cloud.cloudcontrolspartner_v1beta.types.EkmConnection.ConnectionError):
|
|
83
|
+
The connection error that occurred if any
|
|
84
|
+
"""
|
|
85
|
+
|
|
86
|
+
class ConnectionState(proto.Enum):
|
|
87
|
+
r"""The EKM connection state.
|
|
88
|
+
|
|
89
|
+
Values:
|
|
90
|
+
CONNECTION_STATE_UNSPECIFIED (0):
|
|
91
|
+
Unspecified EKM connection state
|
|
92
|
+
AVAILABLE (1):
|
|
93
|
+
Available EKM connection state
|
|
94
|
+
NOT_AVAILABLE (2):
|
|
95
|
+
Not available EKM connection state
|
|
96
|
+
ERROR (3):
|
|
97
|
+
Error EKM connection state
|
|
98
|
+
PERMISSION_DENIED (4):
|
|
99
|
+
Permission denied EKM connection state
|
|
100
|
+
"""
|
|
101
|
+
CONNECTION_STATE_UNSPECIFIED = 0
|
|
102
|
+
AVAILABLE = 1
|
|
103
|
+
NOT_AVAILABLE = 2
|
|
104
|
+
ERROR = 3
|
|
105
|
+
PERMISSION_DENIED = 4
|
|
106
|
+
|
|
107
|
+
class ConnectionError(proto.Message):
|
|
108
|
+
r"""Information around the error that occurred if the connection
|
|
109
|
+
state is anything other than available or unspecified
|
|
110
|
+
|
|
111
|
+
Attributes:
|
|
112
|
+
error_domain (str):
|
|
113
|
+
The error domain for the error
|
|
114
|
+
error_message (str):
|
|
115
|
+
The error message for the error
|
|
116
|
+
"""
|
|
117
|
+
|
|
118
|
+
error_domain: str = proto.Field(
|
|
119
|
+
proto.STRING,
|
|
120
|
+
number=1,
|
|
121
|
+
)
|
|
122
|
+
error_message: str = proto.Field(
|
|
123
|
+
proto.STRING,
|
|
124
|
+
number=2,
|
|
125
|
+
)
|
|
126
|
+
|
|
127
|
+
connection_name: str = proto.Field(
|
|
128
|
+
proto.STRING,
|
|
129
|
+
number=1,
|
|
130
|
+
)
|
|
131
|
+
connection_state: ConnectionState = proto.Field(
|
|
132
|
+
proto.ENUM,
|
|
133
|
+
number=2,
|
|
134
|
+
enum=ConnectionState,
|
|
135
|
+
)
|
|
136
|
+
connection_error: ConnectionError = proto.Field(
|
|
137
|
+
proto.MESSAGE,
|
|
138
|
+
number=3,
|
|
139
|
+
message=ConnectionError,
|
|
140
|
+
)
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
__all__ = tuple(sorted(__protobuf__.manifest))
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2023 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
import proto # type: ignore
|
|
17
|
+
|
|
18
|
+
__protobuf__ = proto.module(
|
|
19
|
+
package="google.cloud.cloudcontrolspartner.v1beta",
|
|
20
|
+
manifest={},
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
__all__ = tuple(sorted(__protobuf__.manifest))
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2023 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
18
|
+
from typing import MutableMapping, MutableSequence
|
|
19
|
+
|
|
20
|
+
import proto # type: ignore
|
|
21
|
+
|
|
22
|
+
__protobuf__ = proto.module(
|
|
23
|
+
package="google.cloud.cloudcontrolspartner.v1beta",
|
|
24
|
+
manifest={
|
|
25
|
+
"PartnerPermissions",
|
|
26
|
+
"GetPartnerPermissionsRequest",
|
|
27
|
+
},
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class PartnerPermissions(proto.Message):
|
|
32
|
+
r"""The permissions granted to the partner for a workload
|
|
33
|
+
|
|
34
|
+
Attributes:
|
|
35
|
+
name (str):
|
|
36
|
+
Identifier. Format:
|
|
37
|
+
|
|
38
|
+
organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/partnerPermissions
|
|
39
|
+
partner_permissions (MutableSequence[google.cloud.cloudcontrolspartner_v1beta.types.PartnerPermissions.Permission]):
|
|
40
|
+
The partner permissions granted for the
|
|
41
|
+
workload
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
class Permission(proto.Enum):
|
|
45
|
+
r"""
|
|
46
|
+
|
|
47
|
+
Values:
|
|
48
|
+
PERMISSION_UNSPECIFIED (0):
|
|
49
|
+
Unspecified partner permission
|
|
50
|
+
ACCESS_TRANSPARENCY_AND_EMERGENCY_ACCESS_LOGS (1):
|
|
51
|
+
Permission for Access Transparency and
|
|
52
|
+
emergency logs
|
|
53
|
+
ASSURED_WORKLOADS_MONITORING (2):
|
|
54
|
+
Permission for Assured Workloads monitoring
|
|
55
|
+
violations
|
|
56
|
+
ACCESS_APPROVAL_REQUESTS (3):
|
|
57
|
+
Permission for Access Approval requests
|
|
58
|
+
ASSURED_WORKLOADS_EKM_CONNECTION_STATUS (4):
|
|
59
|
+
Permission for External Key Manager
|
|
60
|
+
connection status
|
|
61
|
+
"""
|
|
62
|
+
PERMISSION_UNSPECIFIED = 0
|
|
63
|
+
ACCESS_TRANSPARENCY_AND_EMERGENCY_ACCESS_LOGS = 1
|
|
64
|
+
ASSURED_WORKLOADS_MONITORING = 2
|
|
65
|
+
ACCESS_APPROVAL_REQUESTS = 3
|
|
66
|
+
ASSURED_WORKLOADS_EKM_CONNECTION_STATUS = 4
|
|
67
|
+
|
|
68
|
+
name: str = proto.Field(
|
|
69
|
+
proto.STRING,
|
|
70
|
+
number=1,
|
|
71
|
+
)
|
|
72
|
+
partner_permissions: MutableSequence[Permission] = proto.RepeatedField(
|
|
73
|
+
proto.ENUM,
|
|
74
|
+
number=2,
|
|
75
|
+
enum=Permission,
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
class GetPartnerPermissionsRequest(proto.Message):
|
|
80
|
+
r"""Request for getting the partner permissions granted for a
|
|
81
|
+
workload
|
|
82
|
+
|
|
83
|
+
Attributes:
|
|
84
|
+
name (str):
|
|
85
|
+
Required. Name of the resource to get in the
|
|
86
|
+
format:
|
|
87
|
+
organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/partnerPermissions
|
|
88
|
+
"""
|
|
89
|
+
|
|
90
|
+
name: str = proto.Field(
|
|
91
|
+
proto.STRING,
|
|
92
|
+
number=1,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
__all__ = tuple(sorted(__protobuf__.manifest))
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2023 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
from __future__ import annotations
|
|
17
|
+
|
|
18
|
+
from typing import MutableMapping, MutableSequence
|
|
19
|
+
|
|
20
|
+
from google.protobuf import timestamp_pb2 # type: ignore
|
|
21
|
+
import proto # type: ignore
|
|
22
|
+
|
|
23
|
+
__protobuf__ = proto.module(
|
|
24
|
+
package="google.cloud.cloudcontrolspartner.v1beta",
|
|
25
|
+
manifest={
|
|
26
|
+
"Partner",
|
|
27
|
+
"GetPartnerRequest",
|
|
28
|
+
"Sku",
|
|
29
|
+
"EkmMetadata",
|
|
30
|
+
},
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class Partner(proto.Message):
|
|
35
|
+
r"""Message describing Partner resource
|
|
36
|
+
|
|
37
|
+
Attributes:
|
|
38
|
+
name (str):
|
|
39
|
+
Identifier. The resource name of the partner.
|
|
40
|
+
Format:
|
|
41
|
+
organizations/{organization}/locations/{location}/partner
|
|
42
|
+
Example:
|
|
43
|
+
"organizations/123456/locations/us-central1/partner".
|
|
44
|
+
skus (MutableSequence[google.cloud.cloudcontrolspartner_v1beta.types.Sku]):
|
|
45
|
+
List of SKUs the partner is offering
|
|
46
|
+
ekm_solutions (MutableSequence[google.cloud.cloudcontrolspartner_v1beta.types.EkmMetadata]):
|
|
47
|
+
List of Google Cloud supported EKM partners
|
|
48
|
+
supported by the partner
|
|
49
|
+
operated_cloud_regions (MutableSequence[str]):
|
|
50
|
+
List of Google Cloud regions that the partner
|
|
51
|
+
sells services to customers. Valid Google Cloud
|
|
52
|
+
regions found here:
|
|
53
|
+
|
|
54
|
+
https://cloud.google.com/compute/docs/regions-zones
|
|
55
|
+
partner_project_id (str):
|
|
56
|
+
Google Cloud project ID in the partner's
|
|
57
|
+
Google Cloud organization for receiving enhanced
|
|
58
|
+
Logs for Partners.
|
|
59
|
+
create_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
60
|
+
Output only. Time the resource was created
|
|
61
|
+
update_time (google.protobuf.timestamp_pb2.Timestamp):
|
|
62
|
+
Output only. The last time the resource was
|
|
63
|
+
updated
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
name: str = proto.Field(
|
|
67
|
+
proto.STRING,
|
|
68
|
+
number=1,
|
|
69
|
+
)
|
|
70
|
+
skus: MutableSequence["Sku"] = proto.RepeatedField(
|
|
71
|
+
proto.MESSAGE,
|
|
72
|
+
number=3,
|
|
73
|
+
message="Sku",
|
|
74
|
+
)
|
|
75
|
+
ekm_solutions: MutableSequence["EkmMetadata"] = proto.RepeatedField(
|
|
76
|
+
proto.MESSAGE,
|
|
77
|
+
number=4,
|
|
78
|
+
message="EkmMetadata",
|
|
79
|
+
)
|
|
80
|
+
operated_cloud_regions: MutableSequence[str] = proto.RepeatedField(
|
|
81
|
+
proto.STRING,
|
|
82
|
+
number=5,
|
|
83
|
+
)
|
|
84
|
+
partner_project_id: str = proto.Field(
|
|
85
|
+
proto.STRING,
|
|
86
|
+
number=7,
|
|
87
|
+
)
|
|
88
|
+
create_time: timestamp_pb2.Timestamp = proto.Field(
|
|
89
|
+
proto.MESSAGE,
|
|
90
|
+
number=9,
|
|
91
|
+
message=timestamp_pb2.Timestamp,
|
|
92
|
+
)
|
|
93
|
+
update_time: timestamp_pb2.Timestamp = proto.Field(
|
|
94
|
+
proto.MESSAGE,
|
|
95
|
+
number=10,
|
|
96
|
+
message=timestamp_pb2.Timestamp,
|
|
97
|
+
)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class GetPartnerRequest(proto.Message):
|
|
101
|
+
r"""Message for getting a Partner
|
|
102
|
+
|
|
103
|
+
Attributes:
|
|
104
|
+
name (str):
|
|
105
|
+
Required. Format:
|
|
106
|
+
organizations/{organization}/locations/{location}/partner
|
|
107
|
+
"""
|
|
108
|
+
|
|
109
|
+
name: str = proto.Field(
|
|
110
|
+
proto.STRING,
|
|
111
|
+
number=1,
|
|
112
|
+
)
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
class Sku(proto.Message):
|
|
116
|
+
r"""Represents the SKU a partner owns inside Google Cloud to sell
|
|
117
|
+
to customers.
|
|
118
|
+
|
|
119
|
+
Attributes:
|
|
120
|
+
id (str):
|
|
121
|
+
Argentum product SKU, that is associated with
|
|
122
|
+
the partner offerings to customers used by
|
|
123
|
+
Syntro for billing purposes. SKUs can represent
|
|
124
|
+
resold Google products or support services.
|
|
125
|
+
display_name (str):
|
|
126
|
+
Display name of the product identified by the
|
|
127
|
+
SKU. A partner may want to show partner branded
|
|
128
|
+
names for their offerings such as local
|
|
129
|
+
sovereign cloud solutions.
|
|
130
|
+
"""
|
|
131
|
+
|
|
132
|
+
id: str = proto.Field(
|
|
133
|
+
proto.STRING,
|
|
134
|
+
number=1,
|
|
135
|
+
)
|
|
136
|
+
display_name: str = proto.Field(
|
|
137
|
+
proto.STRING,
|
|
138
|
+
number=2,
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
class EkmMetadata(proto.Message):
|
|
143
|
+
r"""Holds information needed by Mudbray to use partner EKMs for
|
|
144
|
+
workloads.
|
|
145
|
+
|
|
146
|
+
Attributes:
|
|
147
|
+
ekm_solution (google.cloud.cloudcontrolspartner_v1beta.types.EkmMetadata.EkmSolution):
|
|
148
|
+
The Cloud EKM partner.
|
|
149
|
+
ekm_endpoint_uri (str):
|
|
150
|
+
Endpoint for sending requests to the EKM for
|
|
151
|
+
key provisioning during Assured Workload
|
|
152
|
+
creation.
|
|
153
|
+
"""
|
|
154
|
+
|
|
155
|
+
class EkmSolution(proto.Enum):
|
|
156
|
+
r"""Represents Google Cloud supported external key management partners
|
|
157
|
+
`Google Cloud EKM partners
|
|
158
|
+
docs <https://cloud.google.com/kms/docs/ekm#supported_partners>`__.
|
|
159
|
+
|
|
160
|
+
Values:
|
|
161
|
+
EKM_SOLUTION_UNSPECIFIED (0):
|
|
162
|
+
Unspecified EKM solution
|
|
163
|
+
FORTANIX (1):
|
|
164
|
+
EKM Partner Fortanix
|
|
165
|
+
FUTUREX (2):
|
|
166
|
+
EKM Partner FutureX
|
|
167
|
+
THALES (3):
|
|
168
|
+
EKM Partner Thales
|
|
169
|
+
VIRTRU (4):
|
|
170
|
+
EKM Partner Virtu
|
|
171
|
+
"""
|
|
172
|
+
EKM_SOLUTION_UNSPECIFIED = 0
|
|
173
|
+
FORTANIX = 1
|
|
174
|
+
FUTUREX = 2
|
|
175
|
+
THALES = 3
|
|
176
|
+
VIRTRU = 4
|
|
177
|
+
|
|
178
|
+
ekm_solution: EkmSolution = proto.Field(
|
|
179
|
+
proto.ENUM,
|
|
180
|
+
number=1,
|
|
181
|
+
enum=EkmSolution,
|
|
182
|
+
)
|
|
183
|
+
ekm_endpoint_uri: str = proto.Field(
|
|
184
|
+
proto.STRING,
|
|
185
|
+
number=2,
|
|
186
|
+
)
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
__all__ = tuple(sorted(__protobuf__.manifest))
|