Human Tissue Tracker¶
This page gives an overview of the Human Tissue Tracking application (HTA), describing its current status, where and how it's developed and deployed, and who is responsible for maintaining it.
Service Description¶
The Human Tissue Tracking application records information about Human Tissue stored within the University of Cambridge, and assists compliance with the Human Tissue Act.
Service Status¶
The HTA is currently live.
Contact¶
Technical queries and support should be directed to uis-devops-division@lists.cam.ac.uk and will be picked up by a member of the team working on the service. To ensure that you receive a response, always direct requests to uis-devops-division@lists.cam.ac.uk rather than reaching out to team members directly.
Issues discovered in the service or new feature requests should be opened as GitLab issues here
Environments¶
The HTA is currently deployed to the following environments:
Name | URL | Supporting VMs |
---|---|---|
Production | https://tissue.apps.cam.ac.uk/ | hta-live1.srv.uis.private.cam.ac.uk hta-live2.srv.uis.private.cam.ac.uk |
Database | hta-live-db.srv.uis.private.cam.ac.uk | |
Production (Poole Group) | https://poolegroup.tissue.apps.cam.ac.uk/ | poole-hta-live1.srv.uis.private.cam.ac.uk poole-hta-live2.srv.uis.private.cam.ac.uk |
Database | poole-hta-live-db.srv.uis.private.cam.ac.uk | |
Staging | https://hta-test.apps.cam.ac.uk/ | hta-test1.srv.uis.private.cam.ac.uk hta-test2.srv.uis.private.cam.ac.uk |
Database | devgroup-test-db.srv.uis.private.cam.ac.uk |
Source code¶
The source code for the HTA is spread over the following repositories:
Repository | Description |
---|---|
Application Server | The source code for the main application server |
Technologies used¶
The following gives an overview of the technologies the HTA is built on.
Category | Language | Framework(s) |
---|---|---|
Web application | Groovy 2.4.12 | Grails 1.3.10 |
DB | Postgres | 12.4 |
Operational documentation¶
The following gives an overview of how the HTA is deployed and maintained.
Deploying a new release¶
New releases are deployed via
Ansible.
Each server should be set to maintenance mode then the run-ansible-playbook.sh
should be run
limited to the node in maintenance mode. e.g.
# Setup environment
source hta-production-setup
# On hta-live1
touch /maintenance_mode
# On client machine
./run-ansible-playbook.sh hta-production ihta-playbook.yml --diff --limit hta-live1
# On hta-live1
rm /maintenance_mode
# On hta-live2
touch /maintenance_mode
# On client machine
./run-ansible-playbook.sh -i hta-production hta-playbook.yml --diff --limit hta-live2
# On hta-live2
rm /maintenance_mode
Monitoring¶
The HTA database is monitored by nagios.
There is also an application status page.
Backups¶
See legacy application backups
Service Management and tech lead¶
The service owner for the HTA is currently unknown. See the associated GitLab issue
The service manager for the HTA is Nick Stocks.
The tech lead for the HTA is Paul Badcock
The following engineers have operational experience with the HTA and are able to respond to support requests or incidents: