Sync CAMSIS data from Albatross to SMI
How to test:
System
- Create a docker network:
docker network create -d bridge poolbridge
- Ensure you are forwarding ports:
echo 1 > /proc/sys/net/ipv4/ip_forward
SMI
- Pull the latest SMI branch
- Update docker-compose for SMI:
+networks:
+ default:
+ external: true
+ name: poolbridge
Also change references of port 8000 to 8001
Also change the service name to smi since development_app is invalid as a hostname
- Edit the GUNICORN_OPTIONS in the Dockerfile to increase the number of threads and optionally other options
Albatross
- Pull the latest albatross branch
- Update docker for Albatross
+networks:
+ default:
+ external: true
+ name: poolbridge
Pool applicant document management
- Pull the branch for this MR
- Follow the launch instructions for the pool-applicant-document-management tool but change the port to 8002 and add the
--network=poolbridge
option
Data
- Ensure there are valid records in Albatross with camsis data
- Ensure there are corresponding, valid records in SMI
- Update your jobspec.yml file as per the
albatross
section in jobspec.example.yml - Create a valid Albatross token at localhost:8000 and paste it in ugraddrivesync/albatross.py
Trigger the update
- Run
curl -X POST http://localhost:8002/albatross/sync
Observe
-
The log reports successful updates
-
The SMI records have been updated
-
The SMI Albatross update_id has been updated
Unfinished parts
-
Add request concurrency -
Consider log verbosity and message text
-
Consider schema of settings data
-
Improve token handling (requires albatross service account jwt tokens)
-
Improve exception handling
Closes uis/devops/digital-admissions/synchronisation-service#136