Covid-19 Testing Pools Management¶
This page gives an overview of the Covid-19 Testing Pools Management service, describing its current status, where and how it's developed and deployed, and who is responsible for maintaining it.
A way for College administrators to be able to rapidly assign students to pools and households was
required for the Asymptomatic COVID-19 screening programme.
The quickest solution was to create Google Sheets for each College, each with a
Pools and a
Households worksheet. Additionally, a
Contacts worksheet was added for notification of failures
when processing the Sheet. College administrators were given permission to access these Google
Sheets and fill in rows for each pool and household, and continue to make adjustments throughout
This service is a combination of a GitLab Schedule calling endpoints in a webapp to cause the Google Sheet for a College to be read, parsed and stored in a database.
The webapp also has an endpoint exposing the current state of pools and households in the database. This is pulled from periodically and imported in to the Azure DB system managed by the Collaboration Team.
The service is currently live.
The Asymptomatic COVID-19 Screening Programme will continue to operate as normal until the end of Easter term, with the last days of pooled screening on Monday-Wednesday 28-30 June. It will NOT operate over the summer vacation.
It yet to be confirmed whether this service will be required for the next and academic year. If not, this it will be decommission.
Technical queries and support should be directed to email@example.com 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 firstname.lastname@example.org rather than reaching out to team members directly.
Issues discovered in the service or new feature requests should be opened as GitLab issues in the administration repository (DevOps team only).
Covid-19 Testing Pools Management Service is currently deployed to the following environments:
The source code for the Covid-19 Testing Pools Management service is spread over the following repositories:
|Application Server||The source code for the main webapp server|
|Infrastructure||The Terraform code for the GCP infrastructure|
|Deployment||The GitLab CI for deploying the webapp onto the infrastructure|
|Scheduled Tasks||The GitLab CI and python scripts to call the webapp|
The following gives an overview of the technologies the
<service_name> is built on.
|Application Server||Python 3.7||Django 2.2|
|Scheduled Tasks||Python 3.7||Requests|
How and where the service is deployed¶
Deploying a new release¶
Updates to the master branch in the Application Server
repository will automatically by deployed to the
staging instance. After testing this can be
production via GitLab CI manual trigger.
Failures of the Scheduled Tasks Gitlab CI pipeline will cause automatic notification to the schedule owner (UIS DevOps Division Robot).
Additionally, failures to process an individual College's sheet will notify the members of the
Contacts worksheet with details of the failure (such as more than 10 students in a pool).
compose.sh scripts existing the Application Server
in order to bring up a local development instance.
"Dry-run" attempts to parse a College sheet may be made using the
?dry_run=1 query string
Little other documentation exists outside the
README.md files in each of the repositories
Service Management and tech lead¶
The service owner for the service is Jon Holgate.
The service manager for the service is Rich Wareham.
The tech lead for the service is Robin Goodall.
The following engineers have operational experience with the service and are able to respond to support requests or incidents: