Application management for SAGW
Requirements
- docker
- docker-compose
After installing and configuring those, download docker-compose.yml and run the following command:
echo "UID=$(id -u)" > .env
touch ./caluma/.env
docker-compose up -d
Wait for the database migrations to complete for the API and Caluma.
Load the config data into Caluma:
make caluma-loadconfig
Import the Keycloak config:
docker-compose exec keycloak /opt/keycloak/bin/kc.sh import --override true --file /opt/keycloak/data/import/test-config.json
Add mysagw.local
to /etc/hosts
:
echo "127.0.0.1 mysagw.local" | sudo tee -a /etc/hosts
You can now access the application under the following URIs:
- https://mysagw.local/ --> frontend
- https://mysagw.local/auth/ --> keycloak
- https://mysagw.local/api/ --> backend
- https://mysagw.local/graphql/ --> caluma
- https://mysagw.local:8025 --> mailhog
The default users are:
Username | Password | Used for |
---|---|---|
admin | keycloak | keycloak admin |
admin@example.com | mysagw | apps |
staff@example.com | mysagw | apps |
user@example.com | mysagw | apps |
mySAGW is a 12factor app which means that configuration is stored in environment variables. Different environment variable types are explained at django-environ.
cp -r ./.envs/.production.example ./.envs/.production
Then edit the files under ./.envs/.production/
to your needs.
For the staging environment, copy to ./.envs/.staging/
.
echo -e "UID=$(id -u)\nCOMPOSE_FILE=docker-compose.yml:docker-compose.prod.yml" > .env
# on staging environments:
# echo -e "UID=$(id -u)\nCOMPOSE_FILE=docker-compose.yml:docker-compose.staging.yml" > .env
# Also in .env file, set OIDC_HOST variable
docker compose up -d
# Wait for the database migrations to complete for the API and Caluma.
make caluma-loadconfig
# upload the templates to DMS
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/identity/templates/identity-labels.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/accounting/templates/accounting-cover.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/acknowledgement-de.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/acknowledgement-fr.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/acknowledgement-en.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/credit-approval-de.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/credit-approval-fr.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/credit-approval-en.docx
docker compose run --rm api poetry run ./manage.py upload_template -t mysagw/case/templates/application.docx
Look at our contributing guidelines to start with your first contribution.