stack-orchestrator/stack_orchestrator
Thomas E Lackey 1def279d26 Support multiple NodePorts, static NodePort mapping, and add 'replicas' spec option (#913)
NodePort example:

```
network:
  ports:
    caddy:
     - 1234
     - 32020:2020
```

Replicas example:

```
replicas: 2
```

This also adds an optimization for k8s where if a directory matching the name of a configmap exists in beneath config/ in the stack, its contents will be copied into the corresponding configmap.

For example:

```
# Config files in the stack
❯ ls stack-orchestrator/config/caddyconfig
Caddyfile  Caddyfile.one-req-per-upstream-example

# ConfigMap in the spec
❯ cat foo.yml | grep config
...
configmaps:
  caddyconfig: ./configmaps/caddyconfig

# Create the deployment
❯ laconic-so --stack ~/cerc/caddy-ethcache/stack-orchestrator/stacks/caddy-ethcache deploy create --spec-file foo.yml

# The files from beneath config/<config_map_name> have been copied to the ConfigMap directory from the spec.
❯ ls deployment-001/configmaps/caddyconfig
Caddyfile  Caddyfile.one-req-per-upstream-example
```

Reviewed-on: cerc-io/stack-orchestrator#913
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-08-09 02:32:06 +00:00
..
build Fixes for external stack deployment (#851) 2024-07-09 15:37:35 +00:00
data Allow gentx-files to be omitted 2024-08-07 14:11:06 -06:00
deploy Support multiple NodePorts, static NodePort mapping, and add 'replicas' spec option (#913) 2024-08-09 02:32:06 +00:00
repos Fixes for external stack deployment (#851) 2024-07-09 15:37:35 +00:00
__init__.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
__main__.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
base.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
command_types.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
constants.py Support multiple NodePorts, static NodePort mapping, and add 'replicas' spec option (#913) 2024-08-09 02:32:06 +00:00
main.py Add external stack support (#806) 2024-04-18 21:22:47 +00:00
opts.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
update.py Rename app -> stack_orchestrator (#625) 2023-11-07 00:06:55 -07:00
util.py Fix stack path check (#877) 2024-07-19 17:16:40 +00:00
version.py Fixes for external stack deployment (#851) 2024-07-09 15:37:35 +00:00