Skip to content

Created generic configuration framework to be used by all NFs

Stefan Spettel requested to merge refactor_config into develop

Code Changes

  • Created generic configuration framework where configuration values are stored in an unordered_map
  • Defined common configuration types: String, bool (support features), local interface, local SBI interface, remote SBI interface
  • Split code into NF-specific configuration and common configuration framework:
    • Set default values
    • Set mandatory values
    • Set member variables to not break old API (can be refactored further in the future)
  • Create YAML parser for new types with yaml-cpp
  • Read YAML file instead of libconfig

Config Changes

  • Defined YAML configuration file
  • Removed old configuration
  • Split HTTP1 and HTTP2 interface in configuration (supports different interfaces/IPs now)
  • Removed unused values:
    • Instance ID
    • PID directory
    • slice configuration

Build Changes

  • Removed libconfig build requirement in build scripts and Dockerfiles

Tests

  • Tested NRF registration/de-registration manually
  • API tested using the CURL requests described in Wiki

Merge request reports