SolutionGuidance / psm

Welcome to the Medicare/Medicaid Provider Enrollment Screening Portal
http://projectpsm.org/
Other
26 stars 20 forks source link

Improve the way seed data is migrated #980

Closed slifty closed 6 years ago

slifty commented 6 years ago

We moved to liquibase migrations as part of #254 and selected a changeSet called loadUpdateData as our method of choice for managing seed data. It was nice because you could add or update seed data by simply editing a csv and liquibase would magically update or insert new data when migrations were run.

Unfortunately, like all magic, it came at a cost.

In short, this kind of "hot migration" broke some migration metaphors, meaning that if we changed table structure or dropped a table we would potentially need to edit or modify the seed data changeSets. They also made inconsistent rollback numbering, which was a pain for developers who rely on rollbacks.

We're going to move to the less dynamic loadData changeSet type. This still uses csvs, but it will only get loaded once per migration.

This needs to be done before #57 is really possible.