Skip to main content

Liquibase migrations with django

Project description

License: BSD Liquibase license: Apache 2.0 Author: Marek Wywiał <>

Quick start

  • install liquimigrate, python install

  • add ‘liquimigrate’ to INSTALLED_APPS

  • configure LIQUIMIGRATE_CHANGELOG_FILE = os.path.join(os.path.dirname(__file__), “migrations”, “migrations.xml”) in settings

  • ensure that you have java on your path, liquibase and java drivers are embedded into package


Just run ./ liquibase update or ./ liquibase -h

To learn how to use liquibase look at liquibase documentation:

Configuration settings

  • LIQUIMIGRATE_CHANGELOG_FILE - path to change log file f.e. ‘os.path.join(os.path.dirname(__file__), “migrations”, “migrations.xml”)’

  • LIQUIMIGRATE_DATABASE - selected database - default ‘default’

How it works

Database settings are got from DATEBASES, from key ‘default’ or key configured in as LIQUIMIGRATE_DATABASE.

Changelog path are got from LIQUIMIGRATE_CHANGELOG_FILE or from command line (check -h).

Supported drivers:
  • postgresql

  • mysql

  • more in future


Whole command code is put in:
  • liquimigrate/management/commands/

  • java connectors are stored in liquimigrate/vendor/connectors

  • available drivers mapping is stored in liquimigrate/

  • mapping to create db url for drivers is stored in liquimigrate/management/commands/ in DB_DEFAULTS

Project details

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page