Skip to content
Snippets Groups Projects
Select Git revision
  • 240-visual-indicator-to-track-bulk-deployment-progress
  • develop default protected
  • release/1.8.0 protected
  • renovate/typescript-5.x
  • try-use-dto-to-trim-request-data
  • renovate/major-angular-monorepo
  • renovate/major-angular-cli-monorepo
  • renovate/major-angularmaterial-monorepo
  • renovate/primeng-themes-20.x
  • renovate/major-jasmine-monorepo
  • enable-paging-support-for-list-of-instances-endpoint
  • renovate/bootstrap-5.x
  • renovate/karma-jasmine-html-reporter-2.x
  • renovate/formio-angular-9.x
  • renovate/formio-angular-7.x
  • release/1.9.0 protected
  • release/1.7.1 protected
  • release/1.7.0 protected
  • release/1.6.5 protected
  • release/1.5.3 protected
  • v1.8.0 protected
  • v1.7.1 protected
  • v1.7.0 protected
  • v1.6.5 protected
  • v1.6.4 protected
  • v1.6.3 protected
  • v1.6.2 protected
  • v1.6.1 protected
  • v1.6.0 protected
29 results

nmaas-portal

Skeleton Web App

Installation Process

Clone this repository using your favorite method, then:

$ python3 -m venv compendium-v2
$ .compendium-v2/bin/activate
$ pip install -r requirements.txt
$ tox -e py39

Overview

This module implements a Flask-based webservice and in-browser React front-end.

The webservice communicates with the front end over HTTP. Responses to valid requests are returned as JSON messages. The server will therefore return an error unless application/json is in the Accept request header field.

Configuration

This app allows specification of a few example configuration parameters. These parameters should be stored in a file formatted similarly to config-example.json, and the name of this file should be stored in the environment variable SETTINGS_FILENAME when running the service.

Building the web application

For instructions on building the React frontend see webapp/README.md.

Running this module

This module has been tested in the following execution environments:

  • As an embedded Flask application. For example, the application could be launched as follows:
$ export FLASK_APP=compendium_v2.app
$ export SETTINGS_FILENAME=config-example.json
$ flask run

See https://flask.palletsprojects.com/en/2.1.x/deploying/ for best practices about running in production environments.

Importing the historical data

Pip install can use the setup.py file to register the click cli commands:

pip install --editable .
survey-publisher-v1
survey-publisher-2022

Creating a db migration after editing the sqlalchemy models

cd compendium_v2
alembic revision --autogenerate -m "description"

Then go to the created migration file to make any necessary additions, for example to migrate data. Also see https://alembic.sqlalchemy.org/en/latest/autogenerate.html#what-does-autogenerate-detect-and-what-does-it-not-detect

Note that starting the application applies all upgrades.