Skip to content

Design st2::profile::server split

Nick Maludy edited this page Sep 15, 2021 · 9 revisions

This is a design document for splitting up st2::profile::server

Goals:

  • Split up st2::profile::server into individual services
  • Would like each service to be independent so that they can be installed/configured/managed individually
    • This is ideal for HA deployments / scaling where we might want only a select few services on a host, and maybe no MongoDB, etc.
  • To follow the pattern setup by other common/popular modules, move st2::profile::* into st2::server::* or other appropriate places

Design:

  • Each service would have its own class, example st2::server::actionrunner, st2::server::mongodb
  • Configs should have their own classes, because many of the services share common configs like [db]
  • Configs should live in its own directory st2::server::config (st2/server/config
  • Each config section should have its own config class st2::server::config::db, st2::server::config::actionrunner, etc
Clone this wiki locally