FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Implement `schemaValidation` mode handling in `dataconnect:sql:migrate` and `deploy` by rosalyntan · Pull Request #7639 · firebase/firebase-tools · GitHub

Implement schemaValidation mode handling in dataconnect:sql:migrate and deploy - #7639

Merged
rosalyntan merged 14 commits into
masterfrom
rosalyntan.migrate
Sep 16, 2024
Merged

Implement schemaValidation mode handling in dataconnect:sql:migrate and deploy#7639
rosalyntan merged 14 commits into
masterfrom
rosalyntan.migrate

Conversation

rosalyntan commented Sep 11, 2024
edited
Loading

Copy link
Copy Markdown
Member

Description

Updates firebase dataconnect:sql:migrate and firebase deploy per go/fdc-compat-mode-cli-api.

Scenarios Tested

schemaValidation unset, both required and optional changes:

  • firebase deploy
  • firebase deploy --force
  • firebase deploy --non-interactive
  • firebase deploy --non-interactive --force
  • firebase dataconnect:sql:migrate
  • firebase dataconnect:sql:migrate --force
  • firebase dataconnect:sql:migrate --non-interactive
  • firebase dataconnect:sql:migrate --non-interactive --force

schemaValidation unset, only required changes:

  • firebase deploy
  • firebase deploy --force
  • firebase deploy --non-interactive
  • firebase deploy --non-interactive --force
  • firebase dataconnect:sql:migrate
  • firebase dataconnect:sql:migrate --force
  • firebase dataconnect:sql:migrate --non-interactive
  • firebase dataconnect:sql:migrate --non-interactive --force

schemaValidation unset, only optional changes:

  • firebase deploy
  • firebase deploy --force
  • firebase deploy --non-interactive
  • firebase deploy --non-interactive --force
  • firebase dataconnect:sql:migrate
  • firebase dataconnect:sql:migrate --force
  • firebase dataconnect:sql:migrate --non-interactive
  • firebase dataconnect:sql:migrate --non-interactive --force

schemaValidation=COMPATIBLE, both required and optional changes:

  • firebase deploy
  • firebase deploy --force
  • firebase deploy --non-interactive
  • firebase deploy --non-interactive --force
  • firebase dataconnect:sql:migrate
  • firebase dataconnect:sql:migrate --force
  • firebase dataconnect:sql:migrate --non-interactive
  • firebase dataconnect:sql:migrate --non-interactive --force

schemaValidation=COMPATIBLE, only optional changes:

  • firebase deploy
  • firebase deploy --force
  • firebase deploy --non-interactive
  • firebase deploy --non-interactive --force
  • firebase dataconnect:sql:migrate
  • firebase dataconnect:sql:migrate --force
  • firebase dataconnect:sql:migrate --non-interactive
  • firebase dataconnect:sql:migrate --non-interactive --force

schemaValidation=STRICT, both required and optional changes:

  • firebase deploy
  • firebase deploy --force
  • firebase deploy --non-interactive
  • firebase deploy --non-interactive --force
  • firebase dataconnect:sql:migrate
  • firebase dataconnect:sql:migrate --force
  • firebase dataconnect:sql:migrate --non-interactive
  • firebase dataconnect:sql:migrate --non-interactive --force

Sample Commands

firebase deploy, with schemaValidation unset, both required and optional changes, and default options selected:

rosalyntan changed the title Implement schemaValidation mode handling in remaining commands. Implement schemaValidation mode handling in dataconnect:sql:migrate and deploy Sep 11, 2024
rosalyntan changed the title Implement schemaValidation mode handling in dataconnect:sql:migrate and deploy Implement schemaValidation mode handling in dataconnect:sql:migrate and deploy Sep 11, 2024
rosalyntan marked this pull request as ready for review September 14, 2024 01:38
rosalyntan requested a review from joehan September 14, 2024 01:38
options,
schema: serviceInfo.schema,
validateOnly: true,
schemaValidation: serviceInfo.dataConnectYaml.schema.datasource.postgresql?.schemaValidation,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Quick sanity check - does this get broken by our move from datasource -> datasources? @fredzqm might know off the top of his head.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Chatted offline -- based on go/fdc:multi-data-source it looks like the datasource field will still be supported, though we should also support datasources in #7589.

Comment thread src/dataconnect/schemaMigration.ts Outdated
Comment thread src/dataconnect/schemaMigration.ts Outdated
rosalyntan enabled auto-merge (squash) September 16, 2024 22:24
rosalyntan merged commit b89cb2f into master Sep 16, 2024
rosalyntan deleted the rosalyntan.migrate branch September 16, 2024 22:39
pr-Mais pushed a commit that referenced this pull request Sep 19, 2024
…e` and `deploy` (#7639)

* Support handling schema validation options in `diff`.

* Format.

* Don't output second set of diffs if they're equal to the first.

* Update dataconnect:sql:migrate

* Fix my failed rebase lol

* Finish handling schemaValidation mode in `dataconnect:sql:migrate`.

* Fix setSchemaValidationMode.

* Concat follow-up strict diffs, instead of replacing compat diffs.

* Don't display purely optional changes with  flag.

* Pass `schemaValidation` into `deploy` command.

* Address review comments.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
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


Back | FazBrowse Home | New Git URL