openflighthpc / concertim-ansible-playbook

Ansible playbook for building a Concertim appliance
Eclipse Public License 2.0
0 stars 0 forks source link

Possible gotcha with static assets when upgrading a concertim deployment #87

Open benarmston opened 6 months ago

benarmston commented 6 months ago

On initial deployment a docker volume is created and automatically populated by docker with the contents of visualisers public/ directory. This volume is then shared with the proxy container to have nginx serve the static assets. There is a potential gotcha here when upgrading concertim.

If a new version of concertim has additional content under public/ say at public/images/irv/concertim/ is that additional content automatically copied to the volume too or do we need to manage this ourselves?

What about it content is removed in an upgrade? Is that removed automatically by docker?

benarmston commented 6 months ago

See https://alces.slack.com/archives/C06HN83FF5X/p1708097253658449 for discussion on slack.

jamesremuscat commented 6 months ago

The docker autopopulation only runs when creating a new volume.

If a new version of the visualisation image is launched as a container and mounts that volume, then it will receive the "old" version of its static assets. New content will not be added, and old content will not be removed.

As part of the upgrade process, we should have Docker trash the existing volume (docker volume rm concertim_static-content), and have it recreated when the new visualiser container is started.