Skip to content

adfinis/mySAGW

Repository files navigation

mySAGW

Build Status Coverage Ruff License: GPL-3.0-or-later

Application management for SAGW

Getting started

Installation (dev)

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:

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

Configuration

mySAGW is a 12factor app which means that configuration is stored in environment variables. Different environment variable types are explained at django-environ.

Deployment

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

Contributing

Look at our contributing guidelines to start with your first contribution.