Management portal for UCL ARC services.
The Service Portal aims to serve as a single entry point for researchers and other users to manage and engage with the various services and platforms supported by ARC, e.g. TRE, DSH.
Currently, the entities within the portal have the following relationships:
- Fork this repository and create a branch, or Clone it if you're on the project team.
- Install pre-commit (e.g.
pip install pre-commitorbrew install pre-commit), then runpre-commit installto set up the git hooks. - Install the prerequisites: node, go, and Docker.
- Run
cd web && npm installto install frontend dependencies. - Create
deploy/dev/oauth2-proxy.cfgfrom deploy/dev/oauth2-proxy.sample.cfg. - Create
deploy/dev/config.yamlfrom deploy/dev/config.sample.yaml. - Spin up a development environment by running
make dev.
Then go to http://localhost:8000.
To destroy the dev environment run make dev-destroy. To see other commands run make help.
Modify, commit, push and open a pull request against main for review.
Note that you will need entra credentials to allow logging in to the portal as different users. Speak to a senior member of the team to set these up.
Staging is deployed automatically approximately 1 hour after merging
into main.
Production is deployed by updating the portal version in a separate deployment repository to the latest release. Releases are made at the team's discretion — typically once a set of changes has been verified on staging. Once agreed, create a release by creating a tag on main (replacing <x.y.z> with the version number)
git switch main && git pull
git tag v<x.y.z>
git push origin tag v<x.y.z>then create a release based on the tag on GitHub. Pre-release release versions will not be deployed.
For more information on production deployments, refer to the project Slack channel docs.
Get in touch with the portal team.