Research Project Website
This repository contains the source code for I-Form's custom Invenio instance
Deployment
This project is deployed using an automated Python CLI. All commands should be
run from the repository root via uv.
1. Initial Server Setup (Bootstrap)
On the deployment server, first generate the .env configuration file:
uv run cli bootstrap server
mv .env.template .env
Populate the .env file with the specific configuration. (S3 credentials will
be fetched dynamically via AWS environment variables or Bitwarden during
deployment).
2. Pushing Updates
Before deploying, it is required to merge the local main branch into prod
and push it to the remote server. This can be done automatically from the local
machine:
uv run cli deploy merge-and-push-prod
3. First-Time Deployment
On the deployment server, spin up the infrastructure and initialize the databases and indices for the first time by running:
uv run cli deploy prod-deploy
4. Updating an Existing Deployment
For future code updates, pull and deploy the latest changes with automatic healthcheck rollbacks using:
uv run cli deploy prod-update --auto-rollback
License
This project is licensed under the MIT License - see the LICENSE file for details.