Flyway

Source:: https://documentation.red-gate.com/fd/quickstart-gradle-184127577.html

Π‘Ρ…Π΅ΠΌΠ° Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΉ: V1__name.sql

  • V - Ρ‚ΠΈΠΏΠ° ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ
  • 1 - Π΅Ρ‘ Π½ΠΎΠΌΠ΅Ρ€
  • __ - Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ.
  • name - Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π³Π΄Π΅ вмСсто ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°ΠΊ _

Gradle

buildscript {
    dependencies {
        classpath 'org.postgresql:postgresql:42.6.0'
    }
}
 
plugins {
    id "org.flywaydb.flyway" version "9.19.0"
}
 
flyway {
    url = 'jdbc:postgresql://localhost:5432/trino'
    user = 'maksim'
    cleanDisabled = false
}

Π‘Π°ΠΌΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π»Π΅ΠΆΠ°Ρ‚ΡŒ Π² ΠΏΠ°ΠΏΠΊΠ΅ src/main/resources/db/migration/.

Π—Π°Π΄Π°Ρ‡ΠΈ gradle:

  • flywayMigration - ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ
  • flywayClean - очистка Π‘Π” ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ схСмы. Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ настройкС cleanDisabled = false.