Companion code for the Flyway vs Liquibase article: checksum validation, out-of-order and repeatable migrations, baselining an existing schema, Flyway Community's undo/diff/deploy stubs, concurrent-startup locking for both tools, Liquibase changeset identity and rollback (auto-generated vs explicit), a verified Liquibase 5.0.3 filename-caching defect, the new OSS license service, the FSL license change, and running both tools against one database. Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Q6XdRjtsp4862EM44T7i9a
18 lines
731 B
Bash
Executable File
18 lines
731 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Runs the demo app with an optional Spring profile, so you can watch each scenario for real
|
|
# instead of only reading about it. See the README's "Try it yourself" table for what each does.
|
|
#
|
|
# ./scripts/run.sh quickstart — Flyway only, clean startup
|
|
# ./scripts/run.sh both-naive both tools enabled, no baseline — fails to start on purpose
|
|
# ./scripts/run.sh both-fixed both tools enabled, baseline-on-migrate + baseline-version=0
|
|
#
|
|
# Once it's up: curl http://localhost:8080/diag/migrations
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
PROFILE="${1:-}"
|
|
if [ -n "$PROFILE" ]; then
|
|
mvn -q spring-boot:run -Dspring-boot.run.profiles="$PROFILE"
|
|
else
|
|
mvn -q spring-boot:run
|
|
fi
|