Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run tests to verify backend tag validation behavior #814

Merged
merged 5 commits into from
Sep 29, 2023

Conversation

pietern
Copy link
Contributor

@pietern pietern commented Sep 28, 2023

Changes

Validation rules on tags are different per cloud (they are passed through to the underlying clusters and as such must comply with cloud-specific validation rules). This change adds tests to confirm the current behavior to ensure the normalization we can apply is in line with how the backend behaves.

Tests

The new integration tests pass (tested locally).

@pietern
Copy link
Contributor Author

pietern commented Sep 28, 2023

Related to #810.

@pietern pietern added this pull request to the merge queue Sep 29, 2023
Merged via the queue into main with commit 3685eb1 Sep 29, 2023
4 checks passed
@pietern pietern deleted the verify-tag-behavior branch September 29, 2023 08:47
github-merge-queue bot pushed a commit that referenced this pull request Sep 29, 2023
## Changes

Prompted by the proposed fix for a tagging-related problem in #810, I
investigated how tag validation works. This turned out to be quite a bit
more complex than anticipated. Tags at the job level (or cluster level)
are passed through to the underlying compute infrastructure and as such
are tested against cloud-specific validation rules. GCP appears to be
the most restrictive. It would be disappointing to always restrict to
`\w+`, so this package implements validation and normalization rules for
each cloud. It can pick the right cloud to use using a Go SDK
configuration.

## Tests

Exhaustive unit tests. The regular expressions were pulled by #814.
@andrewnester andrewnester mentioned this pull request Oct 4, 2023
andrewnester added a commit that referenced this pull request Oct 4, 2023
CLI:
 * Refactor change computation for sync ([#785](#785)).

Bundles:
 * Allow digits in the generated short name ([#820](#820)).
 * Emit an error when incompatible all purpose cluster used with Python wheel tasks ([#823](#823)).
 * Use normalized short name for tag value in development mode ([#821](#821)).
 * Added `python.DetectInterpreters` and other utils ([#805](#805)).
 * Mark artifacts properties as optional ([#834](#834)).
 * Added support for glob patterns in pipeline libraries section ([#833](#833)).

Internal:
 * Run tests to verify backend tag validation behavior ([#814](#814)).
 * Library to validate and normalize cloud specific tags ([#819](#819)).
 * Added test to submit and run various Python tasks on multiple DBR versions ([#806](#806)).
 * Create a release PR in setup-cli repo on tag push ([#827](#827)).

API Changes:
 * Changed `databricks account metastore-assignments list` command to return .
 * Changed `databricks jobs cancel-all-runs` command with new required argument order.
 * Added `databricks account o-auth-published-apps` command group.
 * Changed `databricks serving-endpoints query` command . New request type is .
 * Added `databricks serving-endpoints patch` command.
 * Added `databricks credentials-manager` command group.
 * Added `databricks settings` command group.
 * Changed `databricks clean-rooms list` command to require request of .
 * Changed `databricks statement-execution execute-statement` command with new required argument order.

OpenAPI commit bcbf6e851e3d82fd910940910dd31c10c059746c (2023-10-02)
Dependency updates:
 * Bump github.com/google/uuid from 1.3.0 to 1.3.1 ([#825](#825)).
 * Updated Go SDK to 0.22.0 ([#831](#831)).
github-merge-queue bot pushed a commit that referenced this pull request Oct 4, 2023
CLI:
* Refactor change computation for sync
([#785](#785)).

Bundles:
* Allow digits in the generated short name
([#820](#820)).
* Emit an error when incompatible all purpose cluster used with Python
wheel tasks ([#823](#823)).
* Use normalized short name for tag value in development mode
([#821](#821)).
* Added `python.DetectInterpreters` and other utils
([#805](#805)).
* Mark artifacts properties as optional
([#834](#834)).
* Added support for glob patterns in pipeline libraries section
([#833](#833)).

Internal:
* Run tests to verify backend tag validation behavior
([#814](#814)).
* Library to validate and normalize cloud specific tags
([#819](#819)).
* Added test to submit and run various Python tasks on multiple DBR
versions ([#806](#806)).
* Create a release PR in setup-cli repo on tag push
([#827](#827)).

API Changes:
* Changed `databricks account metastore-assignments list` command to
return .
* Changed `databricks jobs cancel-all-runs` command with new required
argument order.
 * Added `databricks account o-auth-published-apps` command group.
* Changed `databricks serving-endpoints query` command . New request
type is .
 * Added `databricks serving-endpoints patch` command.
 * Added `databricks credentials-manager` command group.
 * Added `databricks settings` command group.
 * Changed `databricks clean-rooms list` command to require request of .
* Changed `databricks statement-execution execute-statement` command
with new required argument order.

OpenAPI commit bcbf6e851e3d82fd910940910dd31c10c059746c (2023-10-02)
Dependency updates:
* Bump github.com/google/uuid from 1.3.0 to 1.3.1
([#825](#825)).
* Updated Go SDK to 0.22.0
([#831](#831)).
hectorcast-db pushed a commit that referenced this pull request Oct 13, 2023
## Changes

Validation rules on tags are different per cloud (they are passed
through to the underlying clusters and as such must comply with
cloud-specific validation rules). This change adds tests to confirm the
current behavior to ensure the normalization we can apply is in line
with how the backend behaves.

## Tests

The new integration tests pass (tested locally).
hectorcast-db pushed a commit that referenced this pull request Oct 13, 2023
## Changes

Prompted by the proposed fix for a tagging-related problem in #810, I
investigated how tag validation works. This turned out to be quite a bit
more complex than anticipated. Tags at the job level (or cluster level)
are passed through to the underlying compute infrastructure and as such
are tested against cloud-specific validation rules. GCP appears to be
the most restrictive. It would be disappointing to always restrict to
`\w+`, so this package implements validation and normalization rules for
each cloud. It can pick the right cloud to use using a Go SDK
configuration.

## Tests

Exhaustive unit tests. The regular expressions were pulled by #814.
hectorcast-db pushed a commit that referenced this pull request Oct 13, 2023
CLI:
* Refactor change computation for sync
([#785](#785)).

Bundles:
* Allow digits in the generated short name
([#820](#820)).
* Emit an error when incompatible all purpose cluster used with Python
wheel tasks ([#823](#823)).
* Use normalized short name for tag value in development mode
([#821](#821)).
* Added `python.DetectInterpreters` and other utils
([#805](#805)).
* Mark artifacts properties as optional
([#834](#834)).
* Added support for glob patterns in pipeline libraries section
([#833](#833)).

Internal:
* Run tests to verify backend tag validation behavior
([#814](#814)).
* Library to validate and normalize cloud specific tags
([#819](#819)).
* Added test to submit and run various Python tasks on multiple DBR
versions ([#806](#806)).
* Create a release PR in setup-cli repo on tag push
([#827](#827)).

API Changes:
* Changed `databricks account metastore-assignments list` command to
return .
* Changed `databricks jobs cancel-all-runs` command with new required
argument order.
 * Added `databricks account o-auth-published-apps` command group.
* Changed `databricks serving-endpoints query` command . New request
type is .
 * Added `databricks serving-endpoints patch` command.
 * Added `databricks credentials-manager` command group.
 * Added `databricks settings` command group.
 * Changed `databricks clean-rooms list` command to require request of .
* Changed `databricks statement-execution execute-statement` command
with new required argument order.

OpenAPI commit bcbf6e851e3d82fd910940910dd31c10c059746c (2023-10-02)
Dependency updates:
* Bump github.com/google/uuid from 1.3.0 to 1.3.1
([#825](#825)).
* Updated Go SDK to 0.22.0
([#831](#831)).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants