We are building a webapp which is shipped to several client as a debian package. Each client runs his own server. But the update and support is done by us. We make regular releases of the product, with a clean version number. Most of the users get an automatic update (by Puppet), some others don t.
We want to keep a trace of the version of the application (in order to allow the user to check the version in an "about" section, and for our support to help the user more accurately).
We plan to store the version of the code and the version of the base in our database, and to keep the info up to date automatically.
Is that a good idea ?
The other alternative we see is a file.
EDIT : The code and database schema are updated together. ( if we update to version x.y.z , both code and database go to x.y.z )