NotifyBC
Home
Docs
Help
GitHub
Home
Docs
Help
GitHub
  • Getting Started

    • Welcome
    • Overview
    • Quick Start
    • Installation
    • Web Console
    • What's New
  • Configuration

    • Configuration Overview
    • Database
    • Admin IP List
    • Reverse Proxy IP Lists
    • HTTP Host
    • Internal HTTP Host
    • Email
    • SMS
    • Subscription
    • Notification
    • Node Roles
    • Cron Jobs
    • RSA Keys
    • Worker Process Count
    • Middleware
    • OIDC
    • TLS Certificates
    • Queue
    • Logging
  • API

    • API Overview
    • Subscription
    • Notification
    • Configuration
    • Administrator
    • Bounce
  • Miscellaneous

    • Health Check
    • Disaster Recovery
    • Memory Dump
    • Benchmarks
    • Bulk Import
    • Developer Notes
    • Upgrade Guide
  • Meta

    • Code of Conduct
    • Security Reporting
    • Acknowledgments

Configuration Overview

Helm Chart Configurations

The document pages in this section cover NotifyBC app level configurations only. If your NotifyBC is deployed to Kubernetes using Helm, you can also customize infrastructure level configurations.

There are two types of configurations - static and dynamic. Static configurations are defined in files or environment variables, requiring restarting NotifyBC to take effect, whereas dynamic configurations are defined in databases and updates take effect immediately.

Static Configurations

Most static configurations are specified in file src/config.ts. If you need to change, instead of updating src/config.ts file, create local file src/config.local.js or environment specific file src/config.<env>.js, which is only included when environment variable NODE_ENV equals <env>. Besides js, ts and json file extensions are also supported. The rest of the documentation assumes the file extension is js. Content in these files are deeply merged in following ascending precedence

  • default file /src/config.ts
  • environment specific file src/config.<env>.js
  • local file src/config.local.js

Run build script whenever changing file in /src

Every time a file under src, including config files, is updated, run npm run build before restarting NotifyBC to take effect.

Following configs should be customized per installation

  • Admin IP List
  • Reverse Proxy IP Lists
  • HTTP Host
  • SMTP

In addition, if installing from source code

  • Database
  • Queue
  • Internal HTTP Host

Customizing other configs only if needed.

Dynamic Configurations

Dynamic configs are managed using REST configuration api. At the time of installing NotifyBC, no dynamic configs need to be setup.

Why Dynamic Configs?

Dynamic configs are needed in cases such as

  • to allow define service-specific configs such as message templates
  • in a multi-node deployment, configs can be generated by one node (typically primary) and shared with other nodes
Prev
What's New
Next
Database