git.iko.soy/typeable/octopod
on v0.2.0 help sign in
typeable/octopod/README.md
77 lines 1.6 kB history raw
1# DM
3Multi-staging Deployment Manager (DM). MD consists of the client and server parts (DMC and DMS accordingly).
5# Installation
71. Install Nix
9```bash
10curl https://nixos.org/nix/install | sh
11```
132. Build the project
15```bash
16make build
17```
19# Interact with DMC
21```bash
22$ result/bin/dmc-exe --help
23DMC
25Usage: dmc-exe (create | list | edit | destroy | update | info)
27Available options:
28 -h,--help Show this help text
30Available commands:
31 create
32 list
33 edit
34 destroy
35 update
36 info
37```
39# Interact with DMS
41```bash
42$ result/bin/dms-exe --help
43DMS
45Usage: dms-exe --port INT --db TEXT --db-pool-size INT
47Available options:
48 -h,--help Show this help text
49```
51# How to deploy a new staging
53```bash
54dmc create --name STAGING_NAME -t DOCKER_IMAGE_TAG -e b2b-app.env.ENV_VAR1=env_val1 -e b2b-app.env.ENV_VAR2=env_val2
55```
57Note that in our ECR(hosted docker registry) we use a convention of
58DOCKER_IMAGE_TAG = GIT_SHA. So, if this build was successfully built on github
59actions CI and docker image was pushed to ECR, you can deploy it without any
60intermediate steps.
62# How to override an environment variable in an application
64```bash
65dmc edit --name STAGING_NAME
66```
68`dmc edit` opens an `$EDITOR` where you can override staging variables. To
69override an environment variable `FOO` with a value `foo`, add a line like this:
71```
72b2b-app.env.FOO=foo
73```
75To commit the changes, save the file and quit your default `$EDITOR`. `:wq` in
76vim. Note that to discard your changes, you have to exit your `$EDITOR` with a
77not-zero exit code. You can do this by typing `:cq` in vim.