feat: allow db:drop with force for PostgreSQL >= v13 #1490
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request check-list
Please make sure to review and check all of these items:
npm run test
pass with this change (including linting)?Description of change
This pull request adds a new --force option to the Sequelize CLI for the
db:drop
command, enabling forced dropping of PostgreSQL databases on server versions higher than 13. See manualMotivation:
Currently, the Sequelize CLI lacks the option to force-drop databases on PostgreSQL versions greater than 13. In some scenarios, such as automated testing environments or CI/CD pipelines, it's necessary to forcibly drop databases without prompting for confirmation, especially when the PostgreSQL server version is 13 or above.
Changes Made:
db:drop
command in the Sequelize CLI.WITH(FORCE)
extra arguments to the SQL if permssible with a fallback to normal drop query .--force
option is passed and the dialect is PostgreSQL, the CLI now executes theDROP DATABASE
statement with theFORCE
option, allowing the database to be forcibly dropped without confirmation.Testing:
--force
option behaves as expected on different PostgreSQL server versions.--force
option.