Bonnes pratiques Liquibase
Cette page décrit un certain nombre de bonnes pratiques que vous pouvez appliquer à votre projet.
Organiser vos changelogs
La façon la plus commune d'organiser vos changelogs est par version majeure. Choisissez un package dans votre classpath pour stocker les changelogs, de préférence à proximité de vos classes d'accès aux bases de données. Dans cet exemple, nous allons utiliser com/exemple/db/changelog
Structure de répertoire
com
example
db
changelog
db.changelog-master.xml
db.changelog-1.0.xml
db.changelog-1.1.xml
db.changelog-2.0.xml
DatabasePool.java
AbstractDAO.java
db.changelog-master.xml
Le master.xml inclut le changelog des versions dans l'ordre correct d’exécution des modifications. Dans l'exemple ci-dessus il pourrait ressembler à ceci:
<?xml version="1.0" encoding="utf-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.9
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.9.xsd">
<include file="com/example/db/changelog/db.changelog-1.0.xml"/>
<include file="com/example/db/changelog/db.changelog-1.1.xml"/>
<include file="com/example/db/changelog/db.changelog-2.0.xml"/>
</databaseChangeLog>
Le db.changelog-master.xml est le changelog que vous passez pour tous les appels Liquibase.
Identification des ChangeSet
Choisissez ce qui fonctionne pour vous. Certains utilisent un numéro de séquence à partir de 1 et unique dans le changelog, certains préfèrent un nom plus descriptif (par exemple 'nouvelle-table-adresse').
Procédure pour le développeur
- Grâce à votre éditeur favori, créer un nouveau changeSet contenant les modifications à effectuer.
- Exécuter le changeSet sur Liquibase (ceci teste le code SQL).
- Effectuer les changements correspondants dans le code de l'application (par exemple, le code Java).
- Tester le code de l'application avec les changements en base de données.
- Commiter le code et le changeSet ensemble.
