Liquibase best practice to setup for multi Schema/Database repository on different environments

321 views Asked by At

Suppose I have below repo with folder structure with changelog and properties files-

    projectRepo/
        DB_A/changelog.xml
        DB_B/changelog.xml
        DB_C/changelog.xml
      masterChangelog.xml
      liquibase.properties
  • Above we have 3 DB folders(A,B,C) and masterChangelog.xml file calls the changelog presented inside different DB folders.
  • And let's say we have 3 Environments - DEV, STAGING and PROD.
  • Now in order to run any liquibase command(ex: update), how the changelog and properties files should be structured?
  • Goal is achive by running single command like - liquibase update --changeLogFile=masterChangelog.xml, but username and password of all DB are different and that too will change based on the environment.
    • For ex: credentials for DB_A is different in DEV, STAGING and PROD.
    • credentials for DB_B(differs from DB_A) is also different in different environments.
    • Same for DB_C

Any help to suggest best practice or solution to be followed?

0

There are 0 answers