JiscSD / archivematica

Free and open-source digital preservation system designed to maintain standards-based, long-term access to collections of digital objects.
http://www.archivematica.org
GNU Affero General Public License v3.0
0 stars 0 forks source link

Configure version strings from environment. #48

Closed helenst closed 6 years ago

helenst commented 6 years ago

This addresses https://github.com/JiscRDSS/rdss-archivematica/issues/112

We want to set the version string and agent code to both be of the form rdss-archivematica-0.2.0 so that removes some of the logic that assumes a certain relationship between the version string and agent code. Both are set from the environment so the deployment system can decide what those strings are and Archivematica makes no assumption about how they relate to one another.

The set_agent_code command should be called during deploy, it will set the agent code string in the database to ensure it is up to date, regardless of the migrations coming from core AM. (It will need to be called after the migrations).

The ARCHIVEMATICA_DASHBOARD_VERSION and ARCHIVEMATICA_DASHBOARD_AGENT_CODE will need to be set too.

helenst commented 6 years ago

As per discussion on the issue (https://github.com/JiscRDSS/rdss-archivematica/issues/112#issuecomment-345818905) I've changed this to take these values from a yaml file (/etc/archivematica/version.yml) which should be written by the deployment process.

There was also discussion of not storing the agent code in the database, I decided to leave that alone for now but it may be worth considering separately.

Related rdss-archivematica PR: https://github.com/JiscRDSS/rdss-archivematica/pull/129

helenst commented 6 years ago

This now takes the version and agent code from Docker build args. It's ready for review again.