feat: provision package refactor and a new mode, "mulocal" (multi-user with independent sessions)
Description
The main change introduced in this MR: mulocal
mode which allows having independent sessions. Now multiple users can change DB not interfering with each other – it feels like multiple "parralel" universes.
All changes introduced in the MR:
- Provision
- Separate to different files
- Add modes:
local
,mulocal
- Add runners which encapsulate systems calls
- Add separate Postgres and ZFS specific functions for reusability
- Inlined and simplified
aws
mode - Improved Postgres start and stop logic
- Configs
- Add
mode
param and mode specific configs - Rename
provision.yaml
config toprovisioning.aws.sample.yaml
(to not create git diff on config edits) - Updated samples configs
- New Postgres and ZFS configuration params
- Add
- Bot
- Start session of state changing commands
- Stop idle sessions
- Util
- Number of util functions
TODO for separate MRs:
- Refactor
aws
mode using runners - Ports synchornization in
mulocal
mode - Check ports availability on init in
mulocal
mode
Please, mark this checkboxes, if
-
the MR description has been reviewed -
this MR contains text changes and they have been reviewed OR there are no texts changes -
this MR contains GUI/CLI changes and they have been reviewed OR there are no GUI/CLI changes -
this MR contains API changes and they have been reviewed OR there are no API changes
Related issue
Closes #53.
Examples
[present examples for reviewers: new CLI output, screenshots, etc]
Edited by Nikolay Samokhvalov