Skip to content
Snippets Groups Projects
user avatar
John Swanson authored
* Nicer error messages for linting migrations

In general, just throw exceptions instead of using clojure spec here.

You'll only get one error per run, but that seems fine.

I did keep some specs around, but run them slightly differently. Rather
than validating the whole collection of changeSets at once with `s/+`,
just `doseq` through the changeSets and validate each one separately.

That way, the value that's presented as erroneous is much smaller (a
single changeSet) and it's easier to see what went wrong.

* Update bin/lint-migrations-file/test/lint_migrations_file_test.clj



* Update bin/lint-migrations-file/src/lint_migrations_file.clj



* Require preConditions for certain liquibase change types to encourage idempotence (#44578)



* remove `!`s from non-side-effecty fns

* add preConditions to a few v51 migrations

---------

Co-authored-by: default avatarNoah Moss <32746338+noahmoss@users.noreply.github.com>
Co-authored-by: default avatarNgoc Khuat <qn.khuat@gmail.com>
c975b675
History
Code owners
Assign users and groups as approvers for specific file changes. Learn more.