diff --git a/.gitattributes b/.gitattributes index d852a5d4..76d12aa4 100755 --- a/.gitattributes +++ b/.gitattributes @@ -235,12 +235,16 @@ examples/token_management/list_create_obo_token_on_aws.py linguist-generated=tru examples/tokens/create_tokens.py linguist-generated=true examples/tokens/get_tokens.py linguist-generated=true examples/tokens/list_tokens.py linguist-generated=true +examples/users/create_account_users.py linguist-generated=true examples/users/create_clusters_api_integration.py linguist-generated=true -examples/users/create_users.py linguist-generated=true +examples/users/create_workspace_users.py linguist-generated=true +examples/users/delete_account_users.py linguist-generated=true examples/users/delete_clusters_api_integration.py linguist-generated=true -examples/users/delete_users.py linguist-generated=true -examples/users/get_users.py linguist-generated=true -examples/users/list_users.py linguist-generated=true +examples/users/delete_workspace_users.py linguist-generated=true +examples/users/get_account_users.py linguist-generated=true +examples/users/get_workspace_users.py linguist-generated=true +examples/users/list_workspace_users.py linguist-generated=true +examples/users/patch_account_users.py linguist-generated=true examples/volumes/create_volumes.py linguist-generated=true examples/volumes/list_volumes.py linguist-generated=true examples/volumes/read_volumes.py linguist-generated=true diff --git a/databricks/sdk/service/compute.py b/databricks/sdk/service/compute.py index af2f6e6b..474252cb 100755 --- a/databricks/sdk/service/compute.py +++ b/databricks/sdk/service/compute.py @@ -1521,9 +1521,9 @@ class EventType(Enum): INIT_SCRIPTS_FINISHED = 'INIT_SCRIPTS_FINISHED' INIT_SCRIPTS_STARTED = 'INIT_SCRIPTS_STARTED' METASTORE_DOWN = 'METASTORE_DOWN' + NODES_LOST = 'NODES_LOST' NODE_BLACKLISTED = 'NODE_BLACKLISTED' NODE_EXCLUDED_DECOMMISSIONED = 'NODE_EXCLUDED_DECOMMISSIONED' - NODES_LOST = 'NODES_LOST' PINNED = 'PINNED' RESIZING = 'RESIZING' RESTARTING = 'RESTARTING' diff --git a/databricks/sdk/service/iam.py b/databricks/sdk/service/iam.py index abd2692f..035352c5 100755 --- a/databricks/sdk/service/iam.py +++ b/databricks/sdk/service/iam.py @@ -537,7 +537,7 @@ class PatchOp(Enum): class PatchSchema(Enum): - URN_IETF_PARAMS_SCIM_API_MESSAGES20_PATCH_OP = 'urn:ietf:params:scim:api:messages:2.0:PatchOp' + URN_IETF_PARAMS_SCIM_API_MESSAGES_2_0_PATCH_OP = 'urn:ietf:params:scim:api:messages:2.0:PatchOp' @dataclass diff --git a/examples/users/create_account_users.py b/examples/users/create_account_users.py new file mode 100755 index 00000000..6e9618e8 --- /dev/null +++ b/examples/users/create_account_users.py @@ -0,0 +1,10 @@ +import time + +from databricks.sdk import AccountClient + +a = AccountClient() + +user = a.users.create(display_name=f'sdk-{time.time_ns()}', user_name=f'sdk-{time.time_ns()}@example.com') + +# cleanup +a.users.delete(delete=user.id) diff --git a/examples/users/create_users.py b/examples/users/create_workspace_users.py similarity index 100% rename from examples/users/create_users.py rename to examples/users/create_workspace_users.py diff --git a/examples/users/delete_account_users.py b/examples/users/delete_account_users.py new file mode 100755 index 00000000..d9463ed3 --- /dev/null +++ b/examples/users/delete_account_users.py @@ -0,0 +1,9 @@ +import time + +from databricks.sdk import AccountClient + +a = AccountClient() + +user = a.users.create(display_name=f'sdk-{time.time_ns()}', user_name=f'sdk-{time.time_ns()}@example.com') + +a.users.delete(delete=user.id) diff --git a/examples/users/delete_users.py b/examples/users/delete_workspace_users.py similarity index 100% rename from examples/users/delete_users.py rename to examples/users/delete_workspace_users.py diff --git a/examples/users/get_account_users.py b/examples/users/get_account_users.py new file mode 100755 index 00000000..f5cc0bec --- /dev/null +++ b/examples/users/get_account_users.py @@ -0,0 +1,12 @@ +import time + +from databricks.sdk import AccountClient + +a = AccountClient() + +user = a.users.create(display_name=f'sdk-{time.time_ns()}', user_name=f'sdk-{time.time_ns()}@example.com') + +by_id = a.users.get(get=user.id) + +# cleanup +a.users.delete(delete=user.id) diff --git a/examples/users/get_users.py b/examples/users/get_workspace_users.py similarity index 100% rename from examples/users/get_users.py rename to examples/users/get_workspace_users.py diff --git a/examples/users/list_users.py b/examples/users/list_workspace_users.py similarity index 100% rename from examples/users/list_users.py rename to examples/users/list_workspace_users.py diff --git a/examples/users/patch_account_users.py b/examples/users/patch_account_users.py new file mode 100755 index 00000000..316d9e9d --- /dev/null +++ b/examples/users/patch_account_users.py @@ -0,0 +1,18 @@ +import time + +from databricks.sdk import AccountClient +from databricks.sdk.service import iam + +a = AccountClient() + +user = a.users.create(display_name=f'sdk-{time.time_ns()}', user_name=f'sdk-{time.time_ns()}@example.com') + +a.users.patch(id=user.id, + schema=[iam.PatchSchema.URN_IETF_PARAMS_SCIM_API_MESSAGES_2_0_PATCH_OP], + operations=[ + iam.Patch(op=iam.PatchOp.ADD, + value=iam.User(roles=[iam.ComplexValue(value="account_admin")])) + ]) + +# cleanup +a.users.delete(delete=user.id)