photo / frontend

The official @github repository of the Trovebox frontend software. A photo sharing and photo management web interface for data stored "in the cloud" (i.e. Amazon S3, Rackspace CloudFiles, Google Storage).
https://trovebox.com
Apache License 2.0
1.38k stars 244 forks source link

Apply db schema changes when upgrading and testing release candiates #1497

Open jmathai opened 10 years ago

jmathai commented 10 years ago

Database schema changes require a version upgrade to be applied. This poses a problem when release candidates within the same version number have multiple db schema changes. The first RC installed will be the last time the upgrade is run until there's an entirely new version. See the comments on commit cf3a72c for context.

barclay-reg commented 10 years ago

simplest option is: create a database delta script for each RC (so also track the rc suffix in version identifier within admin-table

a solution for this is also a solution for the general release and git-branch topic from #1482

with the current deployment ... which says "git clone .." each commit becomes a release and somehow needs to be tracked in DB

have you thought about using something like liquibase or dbv.php (http://dbv.vizuina.com)

jmathai commented 10 years ago

dbv.php looks great but seems targeted more at developers. We need that to be automated such that the upgrade script automatically applies the changes needed.

I think including the RC suffix in the identifier makes a lot of sense and might solve this altogether. From #1482 we might reserve the PATCH for changes within a release candidate which should always adhere to the semver definition of

PATCH version when you make backwards-compatible bug fixes.