From c6019ad8ee6b2f97e42e41f2d9345cc9ae5900b2 Mon Sep 17 00:00:00 2001 From: Serge Smertin <259697+nfx@users.noreply.github.com> Date: Mon, 18 Sep 2023 21:11:50 +0200 Subject: [PATCH] Release v0.1.0 (#213) # Version changelog ## 0.1.0 Features * Added interactive installation wizard ([#184](https://github.com/databricks/ucx/pull/184), [#117](https://github.com/databricks/ucx/pull/117)). * Added schedule of jobs as part of `install.sh` flow and created some documentation ([#187](https://github.com/databricks/ucx/pull/187)). * Added debug notebook companion to troubleshoot the installation ([#191](https://github.com/databricks/ucx/pull/191)). * Added support for Hive Metastore Table ACLs inventory from all databases ([#78](https://github.com/databricks/ucx/pull/78), [#122](https://github.com/databricks/ucx/pull/122), [#151](https://github.com/databricks/ucx/pull/151)). * Created `$inventory.tables` from Scala notebook ([#207](https://github.com/databricks/ucx/pull/207)). * Added local group migration support for ML-related objects ([#56](https://github.com/databricks/ucx/pull/56)). * Added local group migration support for SQL warehouses ([#57](https://github.com/databricks/ucx/pull/57)). * Added local group migration support for all compute-related resources ([#53](https://github.com/databricks/ucx/pull/53)). * Added local group migration support for security-related objects ([#58](https://github.com/databricks/ucx/pull/58)). * Added local group migration support for workflows ([#54](https://github.com/databricks/ucx/pull/54)). * Added local group migration support for workspace-level objects ([#59](https://github.com/databricks/ucx/pull/59)). * Added local group migration support for dashboards, queries, and alerts ([#144](https://github.com/databricks/ucx/pull/144)). Stability * Added `codecov.io` publishing ([#204](https://github.com/databricks/ucx/pull/204)). * Added more tests to group.py ([#148](https://github.com/databricks/ucx/pull/148)). * Added tests for group state ([#133](https://github.com/databricks/ucx/pull/133)). * Added tests for inventorizer and typed ([#125](https://github.com/databricks/ucx/pull/125)). * Added tests WorkspaceListing ([#110](https://github.com/databricks/ucx/pull/110)). * Added `make_*_permissions` fixtures ([#159](https://github.com/databricks/ucx/pull/159)). * Added reusable fixtures module ([#119](https://github.com/databricks/ucx/pull/119)). * Added testing for permissions ([#126](https://github.com/databricks/ucx/pull/126)). * Added inventory table manager tests ([#153](https://github.com/databricks/ucx/pull/153)). * Added `product_info` to track as SDK integration ([#76](https://github.com/databricks/ucx/pull/76)). * Added failsafe permission get operations ([#65](https://github.com/databricks/ucx/pull/65)). * Always install the latest `pip` version in `./install.sh` ([#201](https://github.com/databricks/ucx/pull/201)). * Always store inventory in `hive_metastore` and make only `inventory_database` configurable ([#178](https://github.com/databricks/ucx/pull/178)). * Changed default logging level from `TRACE` to `DEBUG` log level ([#124](https://github.com/databricks/ucx/pull/124)). * Consistently use `WorkspaceClient` from `databricks.sdk` ([#120](https://github.com/databricks/ucx/pull/120)). * Convert pipeline code to use fixtures. ([#166](https://github.com/databricks/ucx/pull/166)). * Exclude mixins from coverage ([#130](https://github.com/databricks/ucx/pull/130)). * Fixed codecov.io reporting ([#212](https://github.com/databricks/ucx/pull/212)). * Fixed configuration path in job task install code ([#210](https://github.com/databricks/ucx/pull/210)). * Fixed a bug with dependency definitions ([#70](https://github.com/databricks/ucx/pull/70)). * Fixed failing `test_jobs` ([#140](https://github.com/databricks/ucx/pull/140)). * Fixed the issues with experiment listing ([#64](https://github.com/databricks/ucx/pull/64)). * Fixed integration testing configuration ([#77](https://github.com/databricks/ucx/pull/77)). * Make project runnable on nightly testing infrastructure ([#75](https://github.com/databricks/ucx/pull/75)). * Migrated cluster policies to new fixtures ([#174](https://github.com/databricks/ucx/pull/174)). * Migrated clusters to the new fixture framework ([#162](https://github.com/databricks/ucx/pull/162)). * Migrated instance pool to the new fixture framework ([#161](https://github.com/databricks/ucx/pull/161)). * Migrated to `databricks.labs.ucx` package ([#90](https://github.com/databricks/ucx/pull/90)). * Migrated token authorization to new fixtures ([#175](https://github.com/databricks/ucx/pull/175)). * Migrated experiment fixture to standard one ([#168](https://github.com/databricks/ucx/pull/168)). * Migrated jobs test to fixture based one. ([#167](https://github.com/databricks/ucx/pull/167)). * Migrated model fixture to the standard fixtures ([#169](https://github.com/databricks/ucx/pull/169)). * Migrated warehouse fixture to standard one ([#170](https://github.com/databricks/ucx/pull/170)). * Organise modules by domain ([#197](https://github.com/databricks/ucx/pull/197)). * Prefetch all account-level and workspace-level groups ([#192](https://github.com/databricks/ucx/pull/192)). * Programmatically create a dashboard ([#121](https://github.com/databricks/ucx/pull/121)). * Properly integrate Python `logging` facility ([#118](https://github.com/databricks/ucx/pull/118)). * Refactored code to use Databricks SDK for Python ([#27](https://github.com/databricks/ucx/pull/27)). * Refactored configuration and remove global provider state ([#71](https://github.com/databricks/ucx/pull/71)). * Removed `pydantic` dependency ([#138](https://github.com/databricks/ucx/pull/138)). * Removed redundant `pyspark`, `databricks-connect`, `delta-spark`, and `pandas` dependencies ([#193](https://github.com/databricks/ucx/pull/193)). * Removed redundant `typer[all]` dependency and its usages ([#194](https://github.com/databricks/ucx/pull/194)). * Renamed `MigrationGroupsProvider` to `GroupMigrationState` ([#81](https://github.com/databricks/ucx/pull/81)). * Replaced `ratelimit` and `tenacity` dependencies with simpler implementations ([#195](https://github.com/databricks/ucx/pull/195)). * Reorganised integration tests to align more with unit tests ([#206](https://github.com/databricks/ucx/pull/206)). * Run `build` workflow also on `main` branch ([#211](https://github.com/databricks/ucx/pull/211)). * Run integration test with a single group ([#152](https://github.com/databricks/ucx/pull/152)). * Simplify `SqlBackend` and table creation logic ([#203](https://github.com/databricks/ucx/pull/203)). * Updated `migration_config.yml` ([#179](https://github.com/databricks/ucx/pull/179)). * Updated legal information ([#196](https://github.com/databricks/ucx/pull/196)). * Use `make_secret_scope` fixture ([#163](https://github.com/databricks/ucx/pull/163)). * Use fixture factory for `make_table`, `make_schema`, and `make_catalog` ([#189](https://github.com/databricks/ucx/pull/189)). * Use new fixtures for notebooks and folders ([#176](https://github.com/databricks/ucx/pull/176)). * Validate toolkit notebook test ([#183](https://github.com/databricks/ucx/pull/183)). Contributing * Added a note on external dependencies ([#139](https://github.com/databricks/ucx/pull/139)). * Added ability to run SQL queries on Spark when in Databricks Runtime ([#108](https://github.com/databricks/ucx/pull/108)). * Added some ground rules for contributing ([#82](https://github.com/databricks/ucx/pull/82)). * Added contributing instructions link from main readme ([#109](https://github.com/databricks/ucx/pull/109)). * Added info about environment refreshes ([#155](https://github.com/databricks/ucx/pull/155)). * Clarified documentation ([#137](https://github.com/databricks/ucx/pull/137)). * Enabled merge queue ([#146](https://github.com/databricks/ucx/pull/146)). * Improved `CONTRIBUTING.md` guide ([#135](https://github.com/databricks/ucx/pull/135), [#145](https://github.com/databricks/ucx/pull/145)). --- CHANGELOG.md | 86 +++++++++++++++++++++ README.md | 17 ++-- USAGE.md | 67 ---------------- docs/{logic.md => local-group-migration.md} | 17 ++++ src/databricks/labs/ucx/__about__.py | 2 +- 5 files changed, 116 insertions(+), 73 deletions(-) create mode 100644 CHANGELOG.md delete mode 100644 USAGE.md rename docs/{logic.md => local-group-migration.md} (61%) diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000000..f358c6f70b --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,86 @@ +# Version changelog + +## 0.1.0 + +Features + +* Added interactive installation wizard ([#184](https://github.com/databricks/ucx/pull/184), [#117](https://github.com/databricks/ucx/pull/117)). +* Added schedule of jobs as part of `install.sh` flow and created some documentation ([#187](https://github.com/databricks/ucx/pull/187)). +* Added debug notebook companion to troubleshoot the installation ([#191](https://github.com/databricks/ucx/pull/191)). +* Added support for Hive Metastore Table ACLs inventory from all databases ([#78](https://github.com/databricks/ucx/pull/78), [#122](https://github.com/databricks/ucx/pull/122), [#151](https://github.com/databricks/ucx/pull/151)). +* Created `$inventory.tables` from Scala notebook ([#207](https://github.com/databricks/ucx/pull/207)). +* Added local group migration support for ML-related objects ([#56](https://github.com/databricks/ucx/pull/56)). +* Added local group migration support for SQL warehouses ([#57](https://github.com/databricks/ucx/pull/57)). +* Added local group migration support for all compute-related resources ([#53](https://github.com/databricks/ucx/pull/53)). +* Added local group migration support for security-related objects ([#58](https://github.com/databricks/ucx/pull/58)). +* Added local group migration support for workflows ([#54](https://github.com/databricks/ucx/pull/54)). +* Added local group migration support for workspace-level objects ([#59](https://github.com/databricks/ucx/pull/59)). +* Added local group migration support for dashboards, queries, and alerts ([#144](https://github.com/databricks/ucx/pull/144)). + +Stability + +* Added `codecov.io` publishing ([#204](https://github.com/databricks/ucx/pull/204)). +* Added more tests to group.py ([#148](https://github.com/databricks/ucx/pull/148)). +* Added tests for group state ([#133](https://github.com/databricks/ucx/pull/133)). +* Added tests for inventorizer and typed ([#125](https://github.com/databricks/ucx/pull/125)). +* Added tests WorkspaceListing ([#110](https://github.com/databricks/ucx/pull/110)). +* Added `make_*_permissions` fixtures ([#159](https://github.com/databricks/ucx/pull/159)). +* Added reusable fixtures module ([#119](https://github.com/databricks/ucx/pull/119)). +* Added testing for permissions ([#126](https://github.com/databricks/ucx/pull/126)). +* Added inventory table manager tests ([#153](https://github.com/databricks/ucx/pull/153)). +* Added `product_info` to track as SDK integration ([#76](https://github.com/databricks/ucx/pull/76)). +* Added failsafe permission get operations ([#65](https://github.com/databricks/ucx/pull/65)). +* Always install the latest `pip` version in `./install.sh` ([#201](https://github.com/databricks/ucx/pull/201)). +* Always store inventory in `hive_metastore` and make only `inventory_database` configurable ([#178](https://github.com/databricks/ucx/pull/178)). +* Changed default logging level from `TRACE` to `DEBUG` log level ([#124](https://github.com/databricks/ucx/pull/124)). +* Consistently use `WorkspaceClient` from `databricks.sdk` ([#120](https://github.com/databricks/ucx/pull/120)). +* Convert pipeline code to use fixtures. ([#166](https://github.com/databricks/ucx/pull/166)). +* Exclude mixins from coverage ([#130](https://github.com/databricks/ucx/pull/130)). +* Fixed codecov.io reporting ([#212](https://github.com/databricks/ucx/pull/212)). +* Fixed configuration path in job task install code ([#210](https://github.com/databricks/ucx/pull/210)). +* Fixed a bug with dependency definitions ([#70](https://github.com/databricks/ucx/pull/70)). +* Fixed failing `test_jobs` ([#140](https://github.com/databricks/ucx/pull/140)). +* Fixed the issues with experiment listing ([#64](https://github.com/databricks/ucx/pull/64)). +* Fixed integration testing configuration ([#77](https://github.com/databricks/ucx/pull/77)). +* Make project runnable on nightly testing infrastructure ([#75](https://github.com/databricks/ucx/pull/75)). +* Migrated cluster policies to new fixtures ([#174](https://github.com/databricks/ucx/pull/174)). +* Migrated clusters to the new fixture framework ([#162](https://github.com/databricks/ucx/pull/162)). +* Migrated instance pool to the new fixture framework ([#161](https://github.com/databricks/ucx/pull/161)). +* Migrated to `databricks.labs.ucx` package ([#90](https://github.com/databricks/ucx/pull/90)). +* Migrated token authorization to new fixtures ([#175](https://github.com/databricks/ucx/pull/175)). +* Migrated experiment fixture to standard one ([#168](https://github.com/databricks/ucx/pull/168)). +* Migrated jobs test to fixture based one. ([#167](https://github.com/databricks/ucx/pull/167)). +* Migrated model fixture to the standard fixtures ([#169](https://github.com/databricks/ucx/pull/169)). +* Migrated warehouse fixture to standard one ([#170](https://github.com/databricks/ucx/pull/170)). +* Organise modules by domain ([#197](https://github.com/databricks/ucx/pull/197)). +* Prefetch all account-level and workspace-level groups ([#192](https://github.com/databricks/ucx/pull/192)). +* Programmatically create a dashboard ([#121](https://github.com/databricks/ucx/pull/121)). +* Properly integrate Python `logging` facility ([#118](https://github.com/databricks/ucx/pull/118)). +* Refactored code to use Databricks SDK for Python ([#27](https://github.com/databricks/ucx/pull/27)). +* Refactored configuration and remove global provider state ([#71](https://github.com/databricks/ucx/pull/71)). +* Removed `pydantic` dependency ([#138](https://github.com/databricks/ucx/pull/138)). +* Removed redundant `pyspark`, `databricks-connect`, `delta-spark`, and `pandas` dependencies ([#193](https://github.com/databricks/ucx/pull/193)). +* Removed redundant `typer[all]` dependency and its usages ([#194](https://github.com/databricks/ucx/pull/194)). +* Renamed `MigrationGroupsProvider` to `GroupMigrationState` ([#81](https://github.com/databricks/ucx/pull/81)). +* Replaced `ratelimit` and `tenacity` dependencies with simpler implementations ([#195](https://github.com/databricks/ucx/pull/195)). +* Reorganised integration tests to align more with unit tests ([#206](https://github.com/databricks/ucx/pull/206)). +* Run `build` workflow also on `main` branch ([#211](https://github.com/databricks/ucx/pull/211)). +* Run integration test with a single group ([#152](https://github.com/databricks/ucx/pull/152)). +* Simplify `SqlBackend` and table creation logic ([#203](https://github.com/databricks/ucx/pull/203)). +* Updated `migration_config.yml` ([#179](https://github.com/databricks/ucx/pull/179)). +* Updated legal information ([#196](https://github.com/databricks/ucx/pull/196)). +* Use `make_secret_scope` fixture ([#163](https://github.com/databricks/ucx/pull/163)). +* Use fixture factory for `make_table`, `make_schema`, and `make_catalog` ([#189](https://github.com/databricks/ucx/pull/189)). +* Use new fixtures for notebooks and folders ([#176](https://github.com/databricks/ucx/pull/176)). +* Validate toolkit notebook test ([#183](https://github.com/databricks/ucx/pull/183)). + +Contributing + +* Added a note on external dependencies ([#139](https://github.com/databricks/ucx/pull/139)). +* Added ability to run SQL queries on Spark when in Databricks Runtime ([#108](https://github.com/databricks/ucx/pull/108)). +* Added some ground rules for contributing ([#82](https://github.com/databricks/ucx/pull/82)). +* Added contributing instructions link from main readme ([#109](https://github.com/databricks/ucx/pull/109)). +* Added info about environment refreshes ([#155](https://github.com/databricks/ucx/pull/155)). +* Clarified documentation ([#137](https://github.com/databricks/ucx/pull/137)). +* Enabled merge queue ([#146](https://github.com/databricks/ucx/pull/146)). +* Improved `CONTRIBUTING.md` guide ([#135](https://github.com/databricks/ucx/pull/135), [#145](https://github.com/databricks/ucx/pull/145)). \ No newline at end of file diff --git a/README.md b/README.md index 6445c6561f..d88a23e36c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,13 @@ # UCX - Unity Catalog Migration Toolkit -Your best companion for enabling the Unity Catalog. +[![build](https://github.com/databrickslabs/ucx/actions/workflows/push.yml/badge.svg)](https://github.com/databrickslabs/ucx/actions/workflows/push.yml) [![codecov](https://codecov.io/github/databrickslabs/ucx/graph/badge.svg?token=p0WKAfW5HQ)](https://codecov.io/github/databrickslabs/ucx) + +Your best companion for enabling the Unity Catalog. It helps you to migrate all Databricks workspace assets: +Entitlements, AWS instance profiles, Clusters, Cluster policies, Instance Pools, Databricks SQL warehouses, Delta Live +Tables, Jobs, MLflow experiments, MLflow registry, SQL Dashboards & Queries, SQL Alerts, Token and Password usage +permissions that are set on the workspace level, Secret scopes, Notebooks, Directories, Repos, Files. + +See [contributing instructions](CONTRIBUTING.md) to help improve this project. ## Installation @@ -18,7 +25,7 @@ export DATABRICKS_CONFIG_PROFILE=ABC ``` You can also specify environment variables in a more direct way, like in this example for installing -on a Azure Databricks Workspace using the Azure CLI authentication: +on an Azure Databricks Workspace using the Azure CLI authentication: ```shell az login @@ -26,11 +33,11 @@ export DATABRICKS_HOST=https://adb-123....azuredatabricks.net/ ./install.sh ``` -## Latest working version and how-to +Please follow the instructions in `./install.sh`, which will open a notebook with the description of all jobs to trigger. The journey starts with assessment. -Please note that current project statis is 🏗️ **WIP**, but we have a minimal set of already working utilities. +## Star History -See [contributing instructions](CONTRIBUTING.md). +[![Star History Chart](https://api.star-history.com/svg?repos=databrickslabs/ucx&type=Date)](https://star-history.com/#databrickslabs/ucx) ## Project Support Please note that all projects in the /databrickslabs github account are provided for your exploration only, and are not formally supported by Databricks with Service Level Agreements (SLAs). They are provided AS-IS and we do not make any guarantees of any kind. Please do not submit a support ticket relating to any issues arising from the use of these projects. diff --git a/USAGE.md b/USAGE.md deleted file mode 100644 index 6468cf5302..0000000000 --- a/USAGE.md +++ /dev/null @@ -1,67 +0,0 @@ -# Group migration - -During the UC adoption, it's critical to move the groups from the workspace to account level. - -To deliver this migration, the following steps are performed: - - -| Step description | Relevant API method | -|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| -| A set of groups to be migrated is identified (either via `groups.selected` config property, or automatically).
Group existence is verified against the account level.
**If there is no group on the account level, an error is thrown.**
Backup groups are created on the workspace level. | `toolkit.prepare_groups_in_environment()` | -| Inventory table is cleaned up. | `toolkit.cleanup_inventory_table()` | -| Workspace local group permissions are inventorized and saved into a Delta Table. | `toolkit.inventorize_permissions()` | -| Backup groups are entitled with permissions from the inventory table. | `toolkit.apply_permissions_to_backup_groups()` | -| Workspace-level groups are deleted. Account-level groups are granted with access to the workspace.
Workspace-level entitlements are synced from backup groups to newly added account-level groups. | `toolkit.replace_workspace_groups_with_account_groups()` | -| Account-level groups are entitled with workspace-level permissions from the inventory table. | `toolkit.apply_permissions_to_account_groups()` | -| Backup groups are deleted | `toolkit.delete_backup_groups()` | -| Inventory table is cleaned up. This step is optional. | `toolkit.cleanup_inventory_table()` | - -## Permissions and entitlements that we inventorize - -> Please note that inherited permissions will not be inventorized / migrated. -> We only cover direct permissions. - -Group-level: - -- [x] Entitlements (One of `workspace-access`, `databricks-sql-access`, `allow-cluster-create`, `allow-instance-pool-create`) -- [x] Roles (AWS Only, represents Instance Profile) - -Compute infrastructure: - -- [x] Clusters -- [x] Cluster policies -- [x] Pools -- [x] Databricks SQL warehouses - -Workflows: - -- [x] Delta Live Tables -- [x] Jobs - -ML: - -- [x] MLflow experiments -- [x] MLflow registry - -SQL: - -- [ ] Dashboard -- [ ] Queries -- [ ] Alerts - -Security: - -- [x] Tokens (token permissions are set on the workspace level. It basically says "this group can use tokens or not") -- [x] Passwords (only for AWS, it defines which groups can log in with passwords) -- [x] Secrets - -Workspace: - -- [x] Notebooks -- [x] Directories -- [x] Repos -- [x] Files - -Data access: - -- [ ] Table ACLS diff --git a/docs/logic.md b/docs/local-group-migration.md similarity index 61% rename from docs/logic.md rename to docs/local-group-migration.md index 22fc52060c..4f77277581 100644 --- a/docs/logic.md +++ b/docs/local-group-migration.md @@ -1,5 +1,22 @@ # Permissions migration logic and data structures +During the UC adoption, it's critical to move the groups from the workspace to account level. + +To deliver this migration, the following steps are performed: + +| Step description | Relevant API method | +|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------| +| A set of groups to be migrated is identified (either via `groups.selected` config property, or automatically).
Group existence is verified against the account level.
**If there is no group on the account level, an error is thrown.**
Backup groups are created on the workspace level. | `toolkit.prepare_groups_in_environment()` | +| Inventory table is cleaned up. | `toolkit.cleanup_inventory_table()` | +| Workspace local group permissions are inventorized and saved into a Delta Table. | `toolkit.inventorize_permissions()` | +| Backup groups are entitled with permissions from the inventory table. | `toolkit.apply_permissions_to_backup_groups()` | +| Workspace-level groups are deleted. Account-level groups are granted with access to the workspace.
Workspace-level entitlements are synced from backup groups to newly added account-level groups. | `toolkit.replace_workspace_groups_with_account_groups()` | +| Account-level groups are entitled with workspace-level permissions from the inventory table. | `toolkit.apply_permissions_to_account_groups()` | +| Backup groups are deleted | `toolkit.delete_backup_groups()` | +| Inventory table is cleaned up. This step is optional. | `toolkit.cleanup_inventory_table()` | + +> Please note that inherited permissions will not be inventorized / migrated. We only cover direct permissions. + On a very high-level, the permissions inventorization process is split into two steps: 1. collect all existing permissions into a persistent storage. diff --git a/src/databricks/labs/ucx/__about__.py b/src/databricks/labs/ucx/__about__.py index 27fdca497c..3dc1f76bc6 100644 --- a/src/databricks/labs/ucx/__about__.py +++ b/src/databricks/labs/ucx/__about__.py @@ -1 +1 @@ -__version__ = "0.0.3" +__version__ = "0.1.0"