strongdm 11.7.0__zip → 11.9.0__zip
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.
- {strongdm-11.7.0 → strongdm-11.9.0}/PKG-INFO +2 -2
- {strongdm-11.7.0 → strongdm-11.9.0}/setup.py +2 -2
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/access_requests_pb2.py +14 -10
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/client.py +7 -7
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/constants.py +21 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/drivers_pb2.py +428 -172
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/models.py +318 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/plumbing.py +152 -1
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/spec_pb2.py +4 -2
- strongdm-11.9.0/strongdm/spec_pb2_grpc.py +18 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/svc.py +83 -81
- strongdm-11.9.0/strongdm/tags_pb2_grpc.py +18 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm.egg-info/PKG-INFO +2 -2
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm.egg-info/SOURCES.txt +2 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/LICENSE +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/README.md +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/setup.cfg +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/__init__.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/access_request_events_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/access_requests_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/access_requests_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_attachments_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_attachments_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_grants_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_grants_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_grants_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_permissions_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_resources_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_resources_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/account_resources_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/accounts_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/accounts_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/accounts_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/activities_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/activities_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflows_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflows_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/control_panel_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/control_panel_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/drivers_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/errors.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_aliases_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_aliases_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_sets_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_sets_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/nodes_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/nodes_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/nodes_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/options_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/options_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/organization_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/organization_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_group_nodes_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_group_peers_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_group_resources_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_groups_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/policies_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/policies_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/policies_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/policies_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/queries_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/queries_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identities_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identities_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identity_groups_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/replays_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/replays_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/resources_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/resources_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/resources_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/resources_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/role_resources_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/role_resources_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/role_resources_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/roles_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/roles_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/roles_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/roles_pb2_grpc.py +0 -0
- /strongdm-11.7.0/strongdm/secret_store_types_pb2_grpc.py → /strongdm-11.9.0/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
- /strongdm-11.7.0/strongdm/spec_pb2_grpc.py → /strongdm-11.9.0/strongdm/secret_engine_types_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_store_healths_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_store_types_pb2.py +0 -0
- /strongdm-11.7.0/strongdm/tags_pb2_grpc.py → /strongdm-11.9.0/strongdm/secret_store_types_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_stores_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_stores_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/tags_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_approvers_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_assignments_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_assignments_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_assignments_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_assignments_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_roles_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_roles_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflows_history_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflows_pb2.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm/workflows_pb2_grpc.py +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm.egg-info/dependency_links.txt +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm.egg-info/requires.txt +0 -0
- {strongdm-11.7.0 → strongdm-11.9.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -1511,6 +1511,7 @@ class AccessRequest:
|
|
1511
1511
|
'''
|
1512
1512
|
__slots__ = [
|
1513
1513
|
'account_id',
|
1514
|
+
'duration',
|
1514
1515
|
'grant_id',
|
1515
1516
|
'id',
|
1516
1517
|
'reason',
|
@@ -1525,6 +1526,7 @@ class AccessRequest:
|
|
1525
1526
|
def __init__(
|
1526
1527
|
self,
|
1527
1528
|
account_id=None,
|
1529
|
+
duration=None,
|
1528
1530
|
grant_id=None,
|
1529
1531
|
id=None,
|
1530
1532
|
reason=None,
|
@@ -1539,6 +1541,10 @@ class AccessRequest:
|
|
1539
1541
|
'''
|
1540
1542
|
The account that initiated the request.
|
1541
1543
|
'''
|
1544
|
+
self.duration = duration if duration is not None else 0
|
1545
|
+
'''
|
1546
|
+
Duration of the access request.
|
1547
|
+
'''
|
1542
1548
|
self.grant_id = grant_id if grant_id is not None else ''
|
1543
1549
|
'''
|
1544
1550
|
The account grant created, if it exists.
|
@@ -1580,6 +1586,7 @@ class AccessRequest:
|
|
1580
1586
|
def __repr__(self):
|
1581
1587
|
return '<sdm.AccessRequest ' + \
|
1582
1588
|
'account_id: ' + repr(self.account_id) + ' ' +\
|
1589
|
+
'duration: ' + repr(self.duration) + ' ' +\
|
1583
1590
|
'grant_id: ' + repr(self.grant_id) + ' ' +\
|
1584
1591
|
'id: ' + repr(self.id) + ' ' +\
|
1585
1592
|
'reason: ' + repr(self.reason) + ' ' +\
|
@@ -1594,6 +1601,7 @@ class AccessRequest:
|
|
1594
1601
|
def to_dict(self):
|
1595
1602
|
return {
|
1596
1603
|
'account_id': self.account_id,
|
1604
|
+
'duration': self.duration,
|
1597
1605
|
'grant_id': self.grant_id,
|
1598
1606
|
'id': self.id,
|
1599
1607
|
'reason': self.reason,
|
@@ -1609,6 +1617,7 @@ class AccessRequest:
|
|
1609
1617
|
def from_dict(cls, d):
|
1610
1618
|
return cls(
|
1611
1619
|
account_id=d.get('account_id'),
|
1620
|
+
duration=d.get('duration'),
|
1612
1621
|
grant_id=d.get('grant_id'),
|
1613
1622
|
id=d.get('id'),
|
1614
1623
|
reason=d.get('reason'),
|
@@ -7778,6 +7787,293 @@ class ControlPanelVerifyJWTResponse:
|
|
7778
7787
|
)
|
7779
7788
|
|
7780
7789
|
|
7790
|
+
class CouchbaseDatabase:
|
7791
|
+
__slots__ = [
|
7792
|
+
'bind_interface',
|
7793
|
+
'egress_filter',
|
7794
|
+
'healthy',
|
7795
|
+
'hostname',
|
7796
|
+
'id',
|
7797
|
+
'n1ql_port',
|
7798
|
+
'name',
|
7799
|
+
'password',
|
7800
|
+
'port',
|
7801
|
+
'port_override',
|
7802
|
+
'secret_store_id',
|
7803
|
+
'subdomain',
|
7804
|
+
'tags',
|
7805
|
+
'tls_required',
|
7806
|
+
'username',
|
7807
|
+
]
|
7808
|
+
|
7809
|
+
def __init__(
|
7810
|
+
self,
|
7811
|
+
bind_interface=None,
|
7812
|
+
egress_filter=None,
|
7813
|
+
healthy=None,
|
7814
|
+
hostname=None,
|
7815
|
+
id=None,
|
7816
|
+
n1ql_port=None,
|
7817
|
+
name=None,
|
7818
|
+
password=None,
|
7819
|
+
port=None,
|
7820
|
+
port_override=None,
|
7821
|
+
secret_store_id=None,
|
7822
|
+
subdomain=None,
|
7823
|
+
tags=None,
|
7824
|
+
tls_required=None,
|
7825
|
+
username=None,
|
7826
|
+
):
|
7827
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
7828
|
+
'''
|
7829
|
+
The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
|
7830
|
+
'''
|
7831
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
7832
|
+
'''
|
7833
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
7834
|
+
'''
|
7835
|
+
self.healthy = healthy if healthy is not None else False
|
7836
|
+
'''
|
7837
|
+
True if the datasource is reachable and the credentials are valid.
|
7838
|
+
'''
|
7839
|
+
self.hostname = hostname if hostname is not None else ''
|
7840
|
+
'''
|
7841
|
+
The host to dial to initiate a connection from the egress node to this resource.
|
7842
|
+
'''
|
7843
|
+
self.id = id if id is not None else ''
|
7844
|
+
'''
|
7845
|
+
Unique identifier of the Resource.
|
7846
|
+
'''
|
7847
|
+
self.n1ql_port = n1ql_port if n1ql_port is not None else 0
|
7848
|
+
'''
|
7849
|
+
The port number for N1QL queries. Default HTTP is 8093. Default HTTPS is 18093.
|
7850
|
+
'''
|
7851
|
+
self.name = name if name is not None else ''
|
7852
|
+
'''
|
7853
|
+
Unique human-readable name of the Resource.
|
7854
|
+
'''
|
7855
|
+
self.password = password if password is not None else ''
|
7856
|
+
'''
|
7857
|
+
The password to authenticate with.
|
7858
|
+
'''
|
7859
|
+
self.port = port if port is not None else 0
|
7860
|
+
'''
|
7861
|
+
The port to dial to initiate a connection from the egress node to this resource.
|
7862
|
+
'''
|
7863
|
+
self.port_override = port_override if port_override is not None else 0
|
7864
|
+
'''
|
7865
|
+
The local port used by clients to connect to this resource.
|
7866
|
+
'''
|
7867
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
7868
|
+
'''
|
7869
|
+
ID of the secret store containing credentials for this resource, if any.
|
7870
|
+
'''
|
7871
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
7872
|
+
'''
|
7873
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
7874
|
+
'''
|
7875
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
7876
|
+
'''
|
7877
|
+
Tags is a map of key, value pairs.
|
7878
|
+
'''
|
7879
|
+
self.tls_required = tls_required if tls_required is not None else False
|
7880
|
+
'''
|
7881
|
+
If set, TLS must be used to connect to this resource.
|
7882
|
+
'''
|
7883
|
+
self.username = username if username is not None else ''
|
7884
|
+
'''
|
7885
|
+
The username to authenticate with.
|
7886
|
+
'''
|
7887
|
+
|
7888
|
+
def __repr__(self):
|
7889
|
+
return '<sdm.CouchbaseDatabase ' + \
|
7890
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
7891
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
7892
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
7893
|
+
'hostname: ' + repr(self.hostname) + ' ' +\
|
7894
|
+
'id: ' + repr(self.id) + ' ' +\
|
7895
|
+
'n1ql_port: ' + repr(self.n1ql_port) + ' ' +\
|
7896
|
+
'name: ' + repr(self.name) + ' ' +\
|
7897
|
+
'password: ' + repr(self.password) + ' ' +\
|
7898
|
+
'port: ' + repr(self.port) + ' ' +\
|
7899
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
7900
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
7901
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
7902
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
7903
|
+
'tls_required: ' + repr(self.tls_required) + ' ' +\
|
7904
|
+
'username: ' + repr(self.username) + ' ' +\
|
7905
|
+
'>'
|
7906
|
+
|
7907
|
+
def to_dict(self):
|
7908
|
+
return {
|
7909
|
+
'bind_interface': self.bind_interface,
|
7910
|
+
'egress_filter': self.egress_filter,
|
7911
|
+
'healthy': self.healthy,
|
7912
|
+
'hostname': self.hostname,
|
7913
|
+
'id': self.id,
|
7914
|
+
'n1ql_port': self.n1ql_port,
|
7915
|
+
'name': self.name,
|
7916
|
+
'password': self.password,
|
7917
|
+
'port': self.port,
|
7918
|
+
'port_override': self.port_override,
|
7919
|
+
'secret_store_id': self.secret_store_id,
|
7920
|
+
'subdomain': self.subdomain,
|
7921
|
+
'tags': self.tags,
|
7922
|
+
'tls_required': self.tls_required,
|
7923
|
+
'username': self.username,
|
7924
|
+
}
|
7925
|
+
|
7926
|
+
@classmethod
|
7927
|
+
def from_dict(cls, d):
|
7928
|
+
return cls(
|
7929
|
+
bind_interface=d.get('bind_interface'),
|
7930
|
+
egress_filter=d.get('egress_filter'),
|
7931
|
+
healthy=d.get('healthy'),
|
7932
|
+
hostname=d.get('hostname'),
|
7933
|
+
id=d.get('id'),
|
7934
|
+
n1ql_port=d.get('n1ql_port'),
|
7935
|
+
name=d.get('name'),
|
7936
|
+
password=d.get('password'),
|
7937
|
+
port=d.get('port'),
|
7938
|
+
port_override=d.get('port_override'),
|
7939
|
+
secret_store_id=d.get('secret_store_id'),
|
7940
|
+
subdomain=d.get('subdomain'),
|
7941
|
+
tags=d.get('tags'),
|
7942
|
+
tls_required=d.get('tls_required'),
|
7943
|
+
username=d.get('username'),
|
7944
|
+
)
|
7945
|
+
|
7946
|
+
|
7947
|
+
class CouchbaseWebUI:
|
7948
|
+
__slots__ = [
|
7949
|
+
'bind_interface',
|
7950
|
+
'egress_filter',
|
7951
|
+
'healthy',
|
7952
|
+
'id',
|
7953
|
+
'name',
|
7954
|
+
'password',
|
7955
|
+
'port_override',
|
7956
|
+
'secret_store_id',
|
7957
|
+
'subdomain',
|
7958
|
+
'tags',
|
7959
|
+
'url',
|
7960
|
+
'username',
|
7961
|
+
]
|
7962
|
+
|
7963
|
+
def __init__(
|
7964
|
+
self,
|
7965
|
+
bind_interface=None,
|
7966
|
+
egress_filter=None,
|
7967
|
+
healthy=None,
|
7968
|
+
id=None,
|
7969
|
+
name=None,
|
7970
|
+
password=None,
|
7971
|
+
port_override=None,
|
7972
|
+
secret_store_id=None,
|
7973
|
+
subdomain=None,
|
7974
|
+
tags=None,
|
7975
|
+
url=None,
|
7976
|
+
username=None,
|
7977
|
+
):
|
7978
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
7979
|
+
'''
|
7980
|
+
The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
|
7981
|
+
'''
|
7982
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
7983
|
+
'''
|
7984
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
7985
|
+
'''
|
7986
|
+
self.healthy = healthy if healthy is not None else False
|
7987
|
+
'''
|
7988
|
+
True if the datasource is reachable and the credentials are valid.
|
7989
|
+
'''
|
7990
|
+
self.id = id if id is not None else ''
|
7991
|
+
'''
|
7992
|
+
Unique identifier of the Resource.
|
7993
|
+
'''
|
7994
|
+
self.name = name if name is not None else ''
|
7995
|
+
'''
|
7996
|
+
Unique human-readable name of the Resource.
|
7997
|
+
'''
|
7998
|
+
self.password = password if password is not None else ''
|
7999
|
+
'''
|
8000
|
+
The password to authenticate with.
|
8001
|
+
'''
|
8002
|
+
self.port_override = port_override if port_override is not None else 0
|
8003
|
+
'''
|
8004
|
+
The local port used by clients to connect to this resource.
|
8005
|
+
'''
|
8006
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
8007
|
+
'''
|
8008
|
+
ID of the secret store containing credentials for this resource, if any.
|
8009
|
+
'''
|
8010
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
8011
|
+
'''
|
8012
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
8013
|
+
'''
|
8014
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
8015
|
+
'''
|
8016
|
+
Tags is a map of key, value pairs.
|
8017
|
+
'''
|
8018
|
+
self.url = url if url is not None else ''
|
8019
|
+
'''
|
8020
|
+
The base address of your website without the path.
|
8021
|
+
'''
|
8022
|
+
self.username = username if username is not None else ''
|
8023
|
+
'''
|
8024
|
+
The username to authenticate with.
|
8025
|
+
'''
|
8026
|
+
|
8027
|
+
def __repr__(self):
|
8028
|
+
return '<sdm.CouchbaseWebUI ' + \
|
8029
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
8030
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
8031
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
8032
|
+
'id: ' + repr(self.id) + ' ' +\
|
8033
|
+
'name: ' + repr(self.name) + ' ' +\
|
8034
|
+
'password: ' + repr(self.password) + ' ' +\
|
8035
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
8036
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
8037
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
8038
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
8039
|
+
'url: ' + repr(self.url) + ' ' +\
|
8040
|
+
'username: ' + repr(self.username) + ' ' +\
|
8041
|
+
'>'
|
8042
|
+
|
8043
|
+
def to_dict(self):
|
8044
|
+
return {
|
8045
|
+
'bind_interface': self.bind_interface,
|
8046
|
+
'egress_filter': self.egress_filter,
|
8047
|
+
'healthy': self.healthy,
|
8048
|
+
'id': self.id,
|
8049
|
+
'name': self.name,
|
8050
|
+
'password': self.password,
|
8051
|
+
'port_override': self.port_override,
|
8052
|
+
'secret_store_id': self.secret_store_id,
|
8053
|
+
'subdomain': self.subdomain,
|
8054
|
+
'tags': self.tags,
|
8055
|
+
'url': self.url,
|
8056
|
+
'username': self.username,
|
8057
|
+
}
|
8058
|
+
|
8059
|
+
@classmethod
|
8060
|
+
def from_dict(cls, d):
|
8061
|
+
return cls(
|
8062
|
+
bind_interface=d.get('bind_interface'),
|
8063
|
+
egress_filter=d.get('egress_filter'),
|
8064
|
+
healthy=d.get('healthy'),
|
8065
|
+
id=d.get('id'),
|
8066
|
+
name=d.get('name'),
|
8067
|
+
password=d.get('password'),
|
8068
|
+
port_override=d.get('port_override'),
|
8069
|
+
secret_store_id=d.get('secret_store_id'),
|
8070
|
+
subdomain=d.get('subdomain'),
|
8071
|
+
tags=d.get('tags'),
|
8072
|
+
url=d.get('url'),
|
8073
|
+
username=d.get('username'),
|
8074
|
+
)
|
8075
|
+
|
8076
|
+
|
7781
8077
|
class CreateResponseMetadata:
|
7782
8078
|
'''
|
7783
8079
|
CreateResponseMetadata is reserved for future use.
|
@@ -9672,6 +9968,28 @@ class Gateway:
|
|
9672
9968
|
)
|
9673
9969
|
|
9674
9970
|
|
9971
|
+
class GenericResponseMetadata:
|
9972
|
+
'''
|
9973
|
+
GenericResponseMetadata contains common headers for generic request
|
9974
|
+
responses.
|
9975
|
+
'''
|
9976
|
+
__slots__ = []
|
9977
|
+
|
9978
|
+
def __init__(self, ):
|
9979
|
+
pass
|
9980
|
+
|
9981
|
+
def __repr__(self):
|
9982
|
+
return '<sdm.GenericResponseMetadata ' + \
|
9983
|
+
'>'
|
9984
|
+
|
9985
|
+
def to_dict(self):
|
9986
|
+
return {}
|
9987
|
+
|
9988
|
+
@classmethod
|
9989
|
+
def from_dict(cls, d):
|
9990
|
+
return cls()
|
9991
|
+
|
9992
|
+
|
9675
9993
|
class GetResponseMetadata:
|
9676
9994
|
'''
|
9677
9995
|
GetResponseMetadata is reserved for future use.
|
@@ -73,9 +73,9 @@ from .role_resources_pb2 import *
|
|
73
73
|
from .role_resources_history_pb2 import *
|
74
74
|
from .roles_pb2 import *
|
75
75
|
from .roles_history_pb2 import *
|
76
|
-
from .secret_store_healths_pb2 import *
|
77
76
|
from .secret_store_types_pb2 import *
|
78
77
|
from .secret_stores_pb2 import *
|
78
|
+
from .secret_store_healths_pb2 import *
|
79
79
|
from .secret_stores_history_pb2 import *
|
80
80
|
from .workflow_approvers_pb2 import *
|
81
81
|
from .workflow_approvers_history_pb2 import *
|
@@ -716,6 +716,7 @@ def convert_access_request_to_porcelain(plumbing):
|
|
716
716
|
return None
|
717
717
|
porcelain = models.AccessRequest()
|
718
718
|
porcelain.account_id = (plumbing.account_id)
|
719
|
+
porcelain.duration = (plumbing.duration)
|
719
720
|
porcelain.grant_id = (plumbing.grant_id)
|
720
721
|
porcelain.id = (plumbing.id)
|
721
722
|
porcelain.reason = (plumbing.reason)
|
@@ -734,6 +735,7 @@ def convert_access_request_to_plumbing(porcelain):
|
|
734
735
|
if porcelain is None:
|
735
736
|
return plumbing
|
736
737
|
plumbing.account_id = (porcelain.account_id)
|
738
|
+
plumbing.duration = (porcelain.duration)
|
737
739
|
plumbing.grant_id = (porcelain.grant_id)
|
738
740
|
plumbing.id = (porcelain.id)
|
739
741
|
plumbing.reason = (porcelain.reason)
|
@@ -3933,6 +3935,116 @@ def convert_repeated_control_panel_verify_jwt_response_to_porcelain(plumbings):
|
|
3933
3935
|
]
|
3934
3936
|
|
3935
3937
|
|
3938
|
+
def convert_couchbase_database_to_porcelain(plumbing):
|
3939
|
+
if plumbing is None:
|
3940
|
+
return None
|
3941
|
+
porcelain = models.CouchbaseDatabase()
|
3942
|
+
porcelain.bind_interface = (plumbing.bind_interface)
|
3943
|
+
porcelain.egress_filter = (plumbing.egress_filter)
|
3944
|
+
porcelain.healthy = (plumbing.healthy)
|
3945
|
+
porcelain.hostname = (plumbing.hostname)
|
3946
|
+
porcelain.id = (plumbing.id)
|
3947
|
+
porcelain.n1ql_port = (plumbing.n1ql_port)
|
3948
|
+
porcelain.name = (plumbing.name)
|
3949
|
+
porcelain.password = (plumbing.password)
|
3950
|
+
porcelain.port = (plumbing.port)
|
3951
|
+
porcelain.port_override = (plumbing.port_override)
|
3952
|
+
porcelain.secret_store_id = (plumbing.secret_store_id)
|
3953
|
+
porcelain.subdomain = (plumbing.subdomain)
|
3954
|
+
porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
|
3955
|
+
porcelain.tls_required = (plumbing.tls_required)
|
3956
|
+
porcelain.username = (plumbing.username)
|
3957
|
+
return porcelain
|
3958
|
+
|
3959
|
+
|
3960
|
+
def convert_couchbase_database_to_plumbing(porcelain):
|
3961
|
+
plumbing = CouchbaseDatabase()
|
3962
|
+
if porcelain is None:
|
3963
|
+
return plumbing
|
3964
|
+
plumbing.bind_interface = (porcelain.bind_interface)
|
3965
|
+
plumbing.egress_filter = (porcelain.egress_filter)
|
3966
|
+
plumbing.healthy = (porcelain.healthy)
|
3967
|
+
plumbing.hostname = (porcelain.hostname)
|
3968
|
+
plumbing.id = (porcelain.id)
|
3969
|
+
plumbing.n1ql_port = (porcelain.n1ql_port)
|
3970
|
+
plumbing.name = (porcelain.name)
|
3971
|
+
plumbing.password = (porcelain.password)
|
3972
|
+
plumbing.port = (porcelain.port)
|
3973
|
+
plumbing.port_override = (porcelain.port_override)
|
3974
|
+
plumbing.secret_store_id = (porcelain.secret_store_id)
|
3975
|
+
plumbing.subdomain = (porcelain.subdomain)
|
3976
|
+
plumbing.tags.CopyFrom(convert_tags_to_plumbing(porcelain.tags))
|
3977
|
+
plumbing.tls_required = (porcelain.tls_required)
|
3978
|
+
plumbing.username = (porcelain.username)
|
3979
|
+
return plumbing
|
3980
|
+
|
3981
|
+
|
3982
|
+
def convert_repeated_couchbase_database_to_plumbing(porcelains):
|
3983
|
+
return [
|
3984
|
+
convert_couchbase_database_to_plumbing(porcelain)
|
3985
|
+
for porcelain in porcelains
|
3986
|
+
]
|
3987
|
+
|
3988
|
+
|
3989
|
+
def convert_repeated_couchbase_database_to_porcelain(plumbings):
|
3990
|
+
return [
|
3991
|
+
convert_couchbase_database_to_porcelain(plumbing)
|
3992
|
+
for plumbing in plumbings
|
3993
|
+
]
|
3994
|
+
|
3995
|
+
|
3996
|
+
def convert_couchbase_web_ui_to_porcelain(plumbing):
|
3997
|
+
if plumbing is None:
|
3998
|
+
return None
|
3999
|
+
porcelain = models.CouchbaseWebUI()
|
4000
|
+
porcelain.bind_interface = (plumbing.bind_interface)
|
4001
|
+
porcelain.egress_filter = (plumbing.egress_filter)
|
4002
|
+
porcelain.healthy = (plumbing.healthy)
|
4003
|
+
porcelain.id = (plumbing.id)
|
4004
|
+
porcelain.name = (plumbing.name)
|
4005
|
+
porcelain.password = (plumbing.password)
|
4006
|
+
porcelain.port_override = (plumbing.port_override)
|
4007
|
+
porcelain.secret_store_id = (plumbing.secret_store_id)
|
4008
|
+
porcelain.subdomain = (plumbing.subdomain)
|
4009
|
+
porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
|
4010
|
+
porcelain.url = (plumbing.url)
|
4011
|
+
porcelain.username = (plumbing.username)
|
4012
|
+
return porcelain
|
4013
|
+
|
4014
|
+
|
4015
|
+
def convert_couchbase_web_ui_to_plumbing(porcelain):
|
4016
|
+
plumbing = CouchbaseWebUI()
|
4017
|
+
if porcelain is None:
|
4018
|
+
return plumbing
|
4019
|
+
plumbing.bind_interface = (porcelain.bind_interface)
|
4020
|
+
plumbing.egress_filter = (porcelain.egress_filter)
|
4021
|
+
plumbing.healthy = (porcelain.healthy)
|
4022
|
+
plumbing.id = (porcelain.id)
|
4023
|
+
plumbing.name = (porcelain.name)
|
4024
|
+
plumbing.password = (porcelain.password)
|
4025
|
+
plumbing.port_override = (porcelain.port_override)
|
4026
|
+
plumbing.secret_store_id = (porcelain.secret_store_id)
|
4027
|
+
plumbing.subdomain = (porcelain.subdomain)
|
4028
|
+
plumbing.tags.CopyFrom(convert_tags_to_plumbing(porcelain.tags))
|
4029
|
+
plumbing.url = (porcelain.url)
|
4030
|
+
plumbing.username = (porcelain.username)
|
4031
|
+
return plumbing
|
4032
|
+
|
4033
|
+
|
4034
|
+
def convert_repeated_couchbase_web_ui_to_plumbing(porcelains):
|
4035
|
+
return [
|
4036
|
+
convert_couchbase_web_ui_to_plumbing(porcelain)
|
4037
|
+
for porcelain in porcelains
|
4038
|
+
]
|
4039
|
+
|
4040
|
+
|
4041
|
+
def convert_repeated_couchbase_web_ui_to_porcelain(plumbings):
|
4042
|
+
return [
|
4043
|
+
convert_couchbase_web_ui_to_porcelain(plumbing)
|
4044
|
+
for plumbing in plumbings
|
4045
|
+
]
|
4046
|
+
|
4047
|
+
|
3936
4048
|
def convert_create_response_metadata_to_porcelain(plumbing):
|
3937
4049
|
if plumbing is None:
|
3938
4050
|
return None
|
@@ -4726,6 +4838,34 @@ def convert_repeated_gateway_to_porcelain(plumbings):
|
|
4726
4838
|
return [convert_gateway_to_porcelain(plumbing) for plumbing in plumbings]
|
4727
4839
|
|
4728
4840
|
|
4841
|
+
def convert_generic_response_metadata_to_porcelain(plumbing):
|
4842
|
+
if plumbing is None:
|
4843
|
+
return None
|
4844
|
+
porcelain = models.GenericResponseMetadata()
|
4845
|
+
return porcelain
|
4846
|
+
|
4847
|
+
|
4848
|
+
def convert_generic_response_metadata_to_plumbing(porcelain):
|
4849
|
+
plumbing = GenericResponseMetadata()
|
4850
|
+
if porcelain is None:
|
4851
|
+
return plumbing
|
4852
|
+
return plumbing
|
4853
|
+
|
4854
|
+
|
4855
|
+
def convert_repeated_generic_response_metadata_to_plumbing(porcelains):
|
4856
|
+
return [
|
4857
|
+
convert_generic_response_metadata_to_plumbing(porcelain)
|
4858
|
+
for porcelain in porcelains
|
4859
|
+
]
|
4860
|
+
|
4861
|
+
|
4862
|
+
def convert_repeated_generic_response_metadata_to_porcelain(plumbings):
|
4863
|
+
return [
|
4864
|
+
convert_generic_response_metadata_to_porcelain(plumbing)
|
4865
|
+
for plumbing in plumbings
|
4866
|
+
]
|
4867
|
+
|
4868
|
+
|
4729
4869
|
def convert_get_response_metadata_to_porcelain(plumbing):
|
4730
4870
|
if plumbing is None:
|
4731
4871
|
return None
|
@@ -9220,6 +9360,12 @@ def convert_resource_to_plumbing(porcelain):
|
|
9220
9360
|
plumbing.clustrix.CopyFrom(convert_clustrix_to_plumbing(porcelain))
|
9221
9361
|
if isinstance(porcelain, models.Cockroach):
|
9222
9362
|
plumbing.cockroach.CopyFrom(convert_cockroach_to_plumbing(porcelain))
|
9363
|
+
if isinstance(porcelain, models.CouchbaseDatabase):
|
9364
|
+
plumbing.couchbase_database.CopyFrom(
|
9365
|
+
convert_couchbase_database_to_plumbing(porcelain))
|
9366
|
+
if isinstance(porcelain, models.CouchbaseWebUI):
|
9367
|
+
plumbing.couchbase_web_ui.CopyFrom(
|
9368
|
+
convert_couchbase_web_ui_to_plumbing(porcelain))
|
9223
9369
|
if isinstance(porcelain, models.DB2I):
|
9224
9370
|
plumbing.db_2_i.CopyFrom(convert_db_2_i_to_plumbing(porcelain))
|
9225
9371
|
if isinstance(porcelain, models.DB2LUW):
|
@@ -9431,6 +9577,11 @@ def convert_resource_to_porcelain(plumbing):
|
|
9431
9577
|
return convert_clustrix_to_porcelain(plumbing.clustrix)
|
9432
9578
|
if plumbing.HasField('cockroach'):
|
9433
9579
|
return convert_cockroach_to_porcelain(plumbing.cockroach)
|
9580
|
+
if plumbing.HasField('couchbase_database'):
|
9581
|
+
return convert_couchbase_database_to_porcelain(
|
9582
|
+
plumbing.couchbase_database)
|
9583
|
+
if plumbing.HasField('couchbase_web_ui'):
|
9584
|
+
return convert_couchbase_web_ui_to_porcelain(plumbing.couchbase_web_ui)
|
9434
9585
|
if plumbing.HasField('db_2_i'):
|
9435
9586
|
return convert_db_2_i_to_porcelain(plumbing.db_2_i)
|
9436
9587
|
if plumbing.HasField('db_2_luw'):
|
@@ -30,7 +30,7 @@ from . import options_pb2 as options__pb2
|
|
30
30
|
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
31
31
|
|
32
32
|
|
33
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\nspec.proto\x12\x02v1\x1a\roptions.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"<\n\x12\x41lreadyExistsError\x12\x1a\n\x06\x65ntity\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x06\"7\n\rNotFoundError\x12\x1a\n\x06\x65ntity\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x05\"\x1d\n\x0f\x42\x61\x64RequestError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x03\"!\n\x13\x41uthenticationError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x10\"\x1d\n\x0fPermissionError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x07\"\x1b\n\rInternalError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\r\"u\n\x0eRateLimitError\x12W\n\nrate_limit\x18\x01 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x08\"\x17\n\x15\x43reateRequestMetadata\"$\n\x16\x43reateResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"E\n\x12GetRequestMetadata\x12/\n\x0bsnapshot_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"!\n\x13GetResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x17\n\x15UpdateRequestMetadata\"$\n\x16UpdateResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x17\n\x15\x44\x65leteRequestMetadata\"$\n\x16\x44\x65leteResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x85\x01\n\x13ListRequestMetadata\x12\x0e\n\x06\x63ursor\x18\x01 \x01(\t\x12\x0c\n\x04page\x18\x02 \x01(\x05\x12\r\n\x05limit\x18\x03 \x01(\x05\x12\x10\n\x08order_by\x18\x04 \x01(\t\x12/\n\x0bsnapshot_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\">\n\x14ListResponseMetadata\x12\x13\n\x0bnext_cursor\x18\x01 \x01(\t\x12\x11\n\x05total\x18\x02 \x01(\x05\x42\x02\x18\x01\"\xaf\x01\n\x11RateLimitMetadata\x12\x19\n\x05limit\x18\x01 \x01(\x03\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\tremaining\x18\x02 \x01(\x03\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x38\n\x08reset_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1a\n\x06\x62ucket\x18\x04 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x18\n\x16GenericRequestMetadata\"\
|
33
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\nspec.proto\x12\x02v1\x1a\roptions.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"<\n\x12\x41lreadyExistsError\x12\x1a\n\x06\x65ntity\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x06\"7\n\rNotFoundError\x12\x1a\n\x06\x65ntity\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x05\"\x1d\n\x0f\x42\x61\x64RequestError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x03\"!\n\x13\x41uthenticationError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x10\"\x1d\n\x0fPermissionError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x07\"\x1b\n\rInternalError:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\r\"u\n\x0eRateLimitError\x12W\n\nrate_limit\x18\x01 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x08\"\x17\n\x15\x43reateRequestMetadata\"$\n\x16\x43reateResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"E\n\x12GetRequestMetadata\x12/\n\x0bsnapshot_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"!\n\x13GetResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x17\n\x15UpdateRequestMetadata\"$\n\x16UpdateResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x17\n\x15\x44\x65leteRequestMetadata\"$\n\x16\x44\x65leteResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x85\x01\n\x13ListRequestMetadata\x12\x0e\n\x06\x63ursor\x18\x01 \x01(\t\x12\x0c\n\x04page\x18\x02 \x01(\x05\x12\r\n\x05limit\x18\x03 \x01(\x05\x12\x10\n\x08order_by\x18\x04 \x01(\t\x12/\n\x0bsnapshot_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\">\n\x14ListResponseMetadata\x12\x13\n\x0bnext_cursor\x18\x01 \x01(\t\x12\x11\n\x05total\x18\x02 \x01(\x05\x42\x02\x18\x01\"\xaf\x01\n\x11RateLimitMetadata\x12\x19\n\x05limit\x18\x01 \x01(\x03\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\tremaining\x18\x02 \x01(\x03\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x38\n\x08reset_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1a\n\x06\x62ucket\x18\x04 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x18\n\x16GenericRequestMetadata\"%\n\x17GenericResponseMetadata:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x42R\n\x19\x63om.strongdm.api.plumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
|
34
34
|
|
35
35
|
|
36
36
|
|
@@ -238,6 +238,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
238
238
|
_RATELIMITMETADATA.fields_by_name['bucket']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
239
239
|
_RATELIMITMETADATA._options = None
|
240
240
|
_RATELIMITMETADATA._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
|
241
|
+
_GENERICRESPONSEMETADATA._options = None
|
242
|
+
_GENERICRESPONSEMETADATA._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
|
241
243
|
_ALREADYEXISTSERROR._serialized_start=66
|
242
244
|
_ALREADYEXISTSERROR._serialized_end=126
|
243
245
|
_NOTFOUNDERROR._serialized_start=128
|
@@ -277,5 +279,5 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
277
279
|
_GENERICREQUESTMETADATA._serialized_start=1103
|
278
280
|
_GENERICREQUESTMETADATA._serialized_end=1127
|
279
281
|
_GENERICRESPONSEMETADATA._serialized_start=1129
|
280
|
-
_GENERICRESPONSEMETADATA._serialized_end=
|
282
|
+
_GENERICRESPONSEMETADATA._serialized_end=1166
|
281
283
|
# @@protoc_insertion_point(module_scope)
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# Copyright 2020 StrongDM 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
|
+
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
16
|
+
"""Client and server classes corresponding to protobuf-defined services."""
|
17
|
+
import grpc
|
18
|
+
|