Skip to content

Commit 87c1697

Browse files
author
Matt Sokoloff
committed
integration valid if all checks pass, add settings
1 parent 0fa0e3a commit 87c1697

File tree

3 files changed

+16
-3
lines changed

3 files changed

+16
-3
lines changed

labelbox/client.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -551,7 +551,8 @@ def create_dataset(self, iam_integration=IAMIntegration._DEFAULT, **kwargs):
551551
"""mutation validateDatasetPyApi($id: ID!){validateDataset(where: {id : $id}){
552552
valid checks{name, success}}}
553553
""", {'id': dataset.uid})
554-
if not validation_result['validateDataset']['checks'][0]['success']:
554+
breakpoint()
555+
if not validation_result['validateDataset']['valid']:
555556
raise labelbox.exceptions.LabelboxError(
556557
f"IAMIntegration {validation_result['validateDataset']['checks']['name']} was not successfully added added to the project."
557558
)

labelbox/schema/iam_integration.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ class IAMIntegration(DbObject):
1515
is_org_default (boolean)
1616
1717
"""
18+
19+
def __init__(self, client, data):
20+
self.settings = data.pop('settings', {})
21+
super().__init__(client, data)
22+
1823
_DEFAULT = "DEFAULT"
1924

2025
name = Field.String("name")

labelbox/schema/organization.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,8 +135,15 @@ def get_iam_integrations(self):
135135
Returns all IAM Integrations for an organization
136136
"""
137137
res = self.client.execute(
138-
"""query getAllIntegrationsPyApi { iamIntegrations {%s} } """ %
139-
query.results_query_part(Entity.IAMIntegration))
138+
"""query getAllIntegrationsPyApi { iamIntegrations {
139+
%s
140+
settings {
141+
__typename
142+
... on AwsIamIntegrationSettings {roleArn}
143+
... on GcpIamIntegrationSettings {serviceAccountEmailId readBucket}
144+
}
145+
146+
} } """ % query.results_query_part(Entity.IAMIntegration))
140147
return [
141148
Entity.IAMIntegration(self.client, integration_data)
142149
for integration_data in res['iamIntegrations']

0 commit comments

Comments
 (0)