Uh oh!
There was an error while loading. Please reload this page.
Add DABs support for Unity Catalog volumes - #1762
Conversation
Uh oh!
There was an error while loading. Please reload this page.
| // We don't need to display any prompts in this case. | ||
| if len(dltActions) == 0 && len(schemaActions) == 0 { | ||
| if len(schemaActions) == 0 && len(dltActions) == 0 && len(volumeActions) == 0 { |
There was a problem hiding this comment.
This PR introduces yet again interactive flow to DABs. At this point, I think it's worth it to invest some time in adding proper end to end tests for this. I'd like to pick it up in the next ~month.
There was a problem hiding this comment.
Let's pick this next quarter as in scope for terminal UX improvements.
shreyas-goenka
commented
Sep 16, 2024
Nightlies passed once. Triggered another round after some minor updates. |
pietern
left a comment
There was a problem hiding this comment.
Thanks! Remaining comments on error/warning text.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
pietern
left a comment
There was a problem hiding this comment.
One more on consistency in messages.
Approving to unblock merge once that is addressed.
Uh oh!
There was an error while loading. Please reload this page.
| if errors.Is(err, apierr.ErrNotFound) { | ||
| // Since the API returned a 404, the volume does not exist in the workspace. | ||
| // Modify the error message to provide more context. | ||
| baseErr.Summary = fmt.Sprintf("volume %s does not exist: %s", volumePath, err) |
There was a problem hiding this comment.
This results in:
Error: volume /Volumes/my/artifact/path does not exist: Not Found
The suffix is superfluous.
There was a problem hiding this comment.
Discussed this on DM: error conditions need more work but will be done in a separate PR.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
If integration tests don't run automatically, an authorized user can run them manually by following the instructions below: Trigger: Inputs:
Checks will be approved automatically on success. |
eng-dev-ecosystem-bot
commented
Dec 2, 2024
Test Details: go/deco-tests/12122596769 |
Changes
This PR adds support for UC volumes to DABs.
Can I use a UC volume managed by DABs in
artifact_path?Yes, but we require the volume to exist before being referenced in
artifact_path. Otherwise you'll see an error that the volume does not exist. For this case, this PR also adds a warning if we detect that the UC volume is defined in the DAB itself, which informs the user to deploy the UC volume in a separate deployment first before using it inartifact_path.We cannot create the UC volume and then upload the artifacts to it in the same
bundle deploybecausebundle deployalways uploads the artifacts toartifact_pathbefore materializing any resources defined in the bundle. Supporting this in a single deployment requires us to migrate away from our dependency on the Databricks Terraform provider to manage the CRUD lifecycle of DABs resources.Why do we not support
preset.name_prefixfor UC volumes?UC volumes will not have a
dev_shreyas_goenkaprefix added inmode: development. Configuringpresets.name_prefixwill be a no-op for UC volumes. We have decided not to support prefixing for UC resources. This is because:${workspace.current_user.short_name}to configure the prefixes manually.Customers often manually set up a UC hierarchy for dev and prod, including a schema or catalog per developer. Thus, it's often unnecessary for us to add prefixing in
mode: developmentby default for UC resources.In retrospect, supporting prefixing for UC schemas and registered models was a mistake and will be removed in a future release of DABs.
Tests
Unit, integration test, and manually.
Manual Testing cases: