Skip to content

Dynamic configuration

Øyvind Evju requested to merge 1520-dynamic-configuration into dev

Description

Remove hard coded config, and provide a yaml instead.

Closes issues: LA-1520, LA-1513 Related issues:

  • Read config from file at the environment variable ELLA_CONFIG
  • Extracted most of the config into an example config.
  • Removed default filter configuration. Filters now needs to be fully defined in the json-file.
  • Frequency groups in filterconfig is now taken from filter config and not global config (LA-1513). This obviously require groups to be set explicitly in the filter config.
  • Create shadow tables in temporary tables, before overwriting the existing shadow tables.
  • Add checks on filter config import and usergroup import, that the configurations for frequency filter and ACMG are valid with the current AnnotationShadowFrequency table.
  • Added json schema for config

Notes to reviewer

Some fields are left hardcoded in config.py (VEP consequences, clinvar descriptions). These are not really config-values, and should ideally not be in the config-object. Left it as is for now.

Type of change

Application (affects UI or general functionality):

  • New feature
  • Bug fix
  • Improvement

Ops / admin / CI related only (not impacting users):

  • New feature
  • Bug fix
  • Improvement

Tests

General

  • Tests have been added that prove my fix is effective or that my feature works
  • Related tests have been modified/removed

Hypothesis testing:

  • Soak testing has been done
  • Distribution between positive / negative cases has been checked

Database

  • Includes changes to database schema
  • Includes necessary database migrations

Configuration

  • Includes changes to configuration
  • Includes configuration migration instructions in documentation

Merge checklist

  • Self-review of code performed
  • Feature review against specification (if applicable)
  • Need for documentation has been evaluated and, if necessary, updated
  • Code and implementation is reviewed by other core developer (all changes, inc. changes based on initial review)
Edited by Morten C. Eike

Merge request reports