mcpField
3
313-frameworks-spring-db-migrations-flyway

313-frameworks-spring-db-migrations-flyway

github.com/jabrenaData & databases456358 installsUpdated 1d ago
Repository

About 313-frameworks-spring-db-migrations-flyway

A skill for applying Flyway database migration practices in Spring Boot projects. It covers migration layout and configuration, favors forward-only changes, and uses an expand-migrate-contract approach for risky schema changes.

Key features

  1. 01Configure Flyway for Spring Boot
  2. 02Organize versioned SQL migrations
  3. 03Use optional Java migrations
  4. 04Keep applied migrations forward-only
  5. 05Apply expand-migrate-contract changes
  6. 06Verify with Maven build commands

Use cases

  1. 01Adding a versioned SQL migration
  2. 02Reviewing migration order and configuration
  3. 03Planning a breaking schema change

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/jabrena/plinth --skill 313-frameworks-spring-db-migrations-flyway

After installing, type/313-frameworks-spring-db-migrations-flywayin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
313-frameworks-spring-db-migrations-flyway-parallel-change.md
313-frameworks-spring-db-migrations-flyway.md
313-frameworks-spring-db-migrations-flyway-antipatterns.md

Details

From the project README

Spring — Database migrations (Flyway)

Apply Flyway migration guidelines for Spring Boot.

What is covered in this Skill?

  • flyway-core and database-specific Flyway modules (e.g. PostgreSQL) with Spring Boot BOM
  • Versioned SQL under src/main/resources/db/migration (V{version}__{description}.sql)
  • spring.flyway.* properties: locations, baseline-on-migrate, validate-on-migrate
  • Optional Java migrations (BaseJavaMigration) for data backfills
  • Forward-only discipline: do not rewrite applied migrations in shared environments
  • Parallel Change as the safe expand, migrate, contract workflow for breaking or data-sensitive schema changes
  • Coordination with @311-frameworks-spring-jdbc and @312-frameworks-spring-data-jdbc

Scope: Apply recommendations based on the reference rules and good/bad examples.

Constraints

Before applying Flyway or SQL changes, ensure the project compiles. After improvements, run full verification.

  • MANDATORY: Run ./mvnw compile or mvn compile before applying any change
  • SAFETY: If compilation fails, stop immediately
  • VERIFY: Run ./mvnw clean verify or mvn clean verify after applying improvements
  • BEFORE APPLYING: Read the reference for detailed rules and good/bad patterns
  • BREAKING CHANGE REVIEW: Before recommending or applying a migration, assess whether it can break deployed application versions, dependent services, reports, jobs, or production data interpretation; if yes, require explicit human review before proceeding
  • EDGE CASE: If the user goal is ambiguous, stop and ask a clarifying question before editing files or running project-wide commands
  • EDGE CASE: If required context, files, credentials, or tools are missing, report the blocker explicitly and ask whether to proceed with setup or fallback guidance
  • EDGE CASE: If requested changes conflict with project constraints or safety boundaries, explain the conflict and ask for user confirmation on the preferred trade-off

When to use this skill

  • Add or review Flyway migrations in a Spring Boot project
  • Configure spring.flyway or db/migration layout
  • Add versioned Flyway SQL migrations for Spring Boot
  • Review Spring Boot database migration ordering
  • Fix repeatable Flyway migrations in a Spring project

Workflow

  1. Read references and assess project context

Read references/313-frameworks-spring-db-migrations-flyway.md, references/313-frameworks-spring-db-migrations-flyway-antipatterns.md, and references/313-frameworks-spring-db-migrations-flyway-parallel-change.md, then inspect the current project setup before proposing changes.

  1. Gather scope and decide target improvements

Identify requested outcomes, constraints, and the minimum safe set of changes to apply.

  1. Apply framework-aligned changes

Implement or refactor configuration/code following the reference patterns and project conventions. Use Parallel Change (expand, migrate, contract) as the safe default for breaking or data-sensitive schema changes.

  1. Run verification and report results

Execute appropriate build/tests and summarize what changed, what was verified, and any follow-up actions.

Reference

For detailed guidance, examples, and constraints, see:

Comments

Markdown supported