08b50f983d
Check authorization
Lint Checks / Run linter (pull_request) Failing after 34s
Deploy Test / Run deploy test suite (pull_request) Successful in 4m54s
Webapp Test / Run webapp test suite (pull_request) Successful in 4m42s
K8s Deployment Control Test / Run deployment control suite on kind/k8s (pull_request) Successful in 6m43s
K8s Deploy Test / Run deploy test suite on kind/k8s (pull_request) Successful in 7m54s
Smoke Test / Run basic test suite (pull_request) Successful in 4m24s
2024-08-26 18:54:32 -05:00
e56da7dcc1
Add support for k8s pod to node affinity and taint toleration ( #917 )
...
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 13m12s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 7m24s
Lint Checks / Run linter (push) Successful in 38s
Publish / Build and publish (push) Successful in 1m15s
Smoke Test / Run basic test suite (push) Successful in 4m40s
Webapp Test / Run webapp test suite (push) Successful in 5m5s
Deploy Test / Run deploy test suite (push) Successful in 5m42s
K8s Deployment Control Test / Run deployment control suite on kind/k8s (push) Successful in 6m16s
Database Test / Run database hosting test on kind/k8s (push) Successful in 9m22s
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 3m30s
External Stack Test / Run external stack test suite (push) Successful in 4m31s
Reviewed-on: #917
Reviewed-by: Thomas E Lackey <telackey@noreply.git.vdb.to>
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-08-15 20:32:58 +00:00
8576137557
Convert port to string. ( #919 )
...
Lint Checks / Run linter (push) Successful in 40s
Publish / Build and publish (push) Successful in 1m19s
Smoke Test / Run basic test suite (push) Successful in 4m15s
Webapp Test / Run webapp test suite (push) Successful in 4m41s
Deploy Test / Run deploy test suite (push) Successful in 4m59s
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 13m12s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 7m48s
The str type check doesn't work if the port is a ruamel.yaml.scalarstring.SingleQuotedScalarString or ruamel.yaml.scalarstring.DoubleQuotedScalarString
Reviewed-on: #919
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-08-14 00:25:35 +00:00
65c1cdf6b1
Fix crash if port has int type in yaml ( #918 )
...
Lint Checks / Run linter (push) Successful in 38s
Publish / Build and publish (push) Successful in 1m18s
Deploy Test / Run deploy test suite (push) Successful in 4m36s
Webapp Test / Run webapp test suite (push) Successful in 4m24s
Smoke Test / Run basic test suite (push) Successful in 3m52s
Reviewed-on: #918
Reviewed-by: Thomas E Lackey <telackey@noreply.git.vdb.to>
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-08-13 20:47:09 +00:00
265699bc38
Allow to disable kind cluster management for testing ( #915 )
...
Lint Checks / Run linter (push) Successful in 37s
Publish / Build and publish (push) Successful in 1m9s
Smoke Test / Run basic test suite (push) Successful in 4m23s
Webapp Test / Run webapp test suite (push) Successful in 4m38s
Deploy Test / Run deploy test suite (push) Successful in 5m0s
Database Test / Run database hosting test on kind/k8s (push) Successful in 9m49s
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 3m37s
External Stack Test / Run external stack test suite (push) Successful in 4m54s
Reviewed-on: #915
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-08-13 17:48:14 +00:00
1def279d26
Support multiple NodePorts, static NodePort mapping, and add 'replicas' spec option ( #913 )
...
Lint Checks / Run linter (push) Successful in 33s
Publish / Build and publish (push) Successful in 1m7s
Smoke Test / Run basic test suite (push) Successful in 3m51s
Webapp Test / Run webapp test suite (push) Successful in 4m30s
Deploy Test / Run deploy test suite (push) Successful in 4m42s
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 12m52s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 7m27s
Database Test / Run database hosting test on kind/k8s (push) Successful in 9m35s
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 3m54s
External Stack Test / Run external stack test suite (push) Successful in 5m19s
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: #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
3fb025b5c9
Make remote image tags unique to the deployment ( #838 )
...
Lint Checks / Run linter (push) Successful in 34s
Publish / Build and publish (push) Successful in 1m22s
Deploy Test / Run deploy test suite (push) Successful in 4m41s
Webapp Test / Run webapp test suite (push) Successful in 4m24s
Smoke Test / Run basic test suite (push) Successful in 3m49s
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Successful in 13m45s
Fixturenet-Eth-Plugeth-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 55m4s
Fixturenet-Eth-Plugeth-Arm-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 3h8m0s
Reviewed-on: #838
Reviewed-by: Thomas E Lackey <telackey@noreply.git.vdb.to>
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-06-13 03:26:58 +00:00
523b5779be
Auto-detect which certificate to use (including wildcards). ( #779 )
...
Lint Checks / Run linter (push) Successful in 43s
Publish / Build and publish (push) Successful in 1m9s
Deploy Test / Run deploy test suite (push) Successful in 4m49s
Webapp Test / Run webapp test suite (push) Successful in 4m23s
Smoke Test / Run basic test suite (push) Successful in 5m5s
Fixturenet-Laconicd-Test / Run an Laconicd fixturenet test (push) Successful in 9m18s
Fixturenet-Eth-Plugeth-Arm-Test / Run an Ethereum plugeth fixturenet test (push) Successful in 54m22s
Fixturenet-Eth-Plugeth-Test / Run an Ethereum plugeth fixturenet test (push) Failing after 55m24s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Successful in 7m53s
Database Test / Run database hosting test on kind/k8s (push) Successful in 11m14s
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Successful in 4m22s
Rather than always requesting a certificate, attempt to re-use an existing certificate if it already exists in the k8s cluster. This includes matching to a wildcard certificate.
Reviewed-on: #779
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-03-07 17:38:36 +00:00
37b9500483
Support non-tls ingress for kind ( #748 )
...
Lint Checks / Run linter (push) Successful in 39s
Publish / Build and publish (push) Successful in 1m19s
Webapp Test / Run webapp test suite (push) Successful in 4m40s
Deploy Test / Run deploy test suite (push) Successful in 4m58s
Smoke Test / Run basic test suite (push) Successful in 4m44s
Reviewed-on: #748
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-02-17 01:54:30 +00:00
d9bb6b3588
Test Database Stack ( #737 )
...
Lint Checks / Run linter (push) Successful in 33s
Publish / Build and publish (push) Successful in 1m2s
Webapp Test / Run webapp test suite (push) Successful in 3m5s
Deploy Test / Run deploy test suite (push) Successful in 4m20s
Smoke Test / Run basic test suite (push) Successful in 4m50s
Reviewed-on: #737
2024-02-15 05:26:29 +00:00
b22c72e715
For k8s, use provisioner-managed volumes when an absolute host path is not specified. ( #741 )
...
Lint Checks / Run linter (push) Successful in 45s
Publish / Build and publish (push) Successful in 1m22s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 3m20s
Deploy Test / Run deploy test suite (push) Successful in 5m28s
Webapp Test / Run webapp test suite (push) Successful in 4m28s
Smoke Test / Run basic test suite (push) Successful in 4m58s
In kind, when we bind-mount a host directory it is first mounted into the kind container at /mnt, then into the pod at the desired location.
We accidentally picked this up for full-blown k8s, and were creating volumes at /mnt. This changes the behavior for both kind and regular k8s so that bind mounts are only allowed if a fully-qualified path is specified. If no path is specified at all, a default storageClass is assumed to be present, and the volume managed by a provisioner.
Eg, for kind, the default provisioner is: https://github.com/rancher/local-path-provisioner
```
stack: test
deploy-to: k8s-kind
config:
test-variable-1: test-value-1
network:
ports:
test:
- '80'
volumes:
# this will be bind-mounted to a host-path
test-data-bind: /srv/data
# this will be managed by the k8s node
test-data-auto:
configmaps:
test-config: ./configmap/test-config
```
Reviewed-on: #741
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-02-14 21:45:01 +00:00
903f3b10e2
Add support for annotations and labels in spec. ( #739 )
...
Lint Checks / Run linter (push) Successful in 30s
Publish / Build and publish (push) Successful in 1m36s
Webapp Test / Run webapp test suite (push) Successful in 2m38s
Deploy Test / Run deploy test suite (push) Successful in 3m58s
Smoke Test / Run basic test suite (push) Successful in 4m50s
Lint Checks / Run linter (pull_request) Successful in 51s
Webapp Test / Run webapp test suite (pull_request) Successful in 3m12s
Smoke Test / Run basic test suite (pull_request) Successful in 3m36s
Deploy Test / Run deploy test suite (pull_request) Successful in 5m40s
```
stack: webapp-deployer-backend
deploy-to: k8s
annotations:
foo.bar.annot/{name}: baz
labels:
a.b.c/{name}.blah: "value"
```
Reviewed-on: #739
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-02-09 00:11:07 +00:00
8be1e684e8
Process environment variables defined in compose files ( #736 )
...
Lint Checks / Run linter (push) Successful in 48s
Publish / Build and publish (push) Successful in 1m38s
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 4m28s
Deploy Test / Run deploy test suite (push) Successful in 5m8s
Webapp Test / Run webapp test suite (push) Successful in 5m50s
Smoke Test / Run basic test suite (push) Successful in 6m22s
Reviewed-on: #736
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-02-08 19:41:57 +00:00
3309782439
Refactor
Lint Checks / Run linter (pull_request) Successful in 58s
Deploy Test / Run deploy test suite (pull_request) Successful in 4m7s
Smoke Test / Run basic test suite (pull_request) Successful in 4m11s
Webapp Test / Run webapp test suite (pull_request) Successful in 4m41s
2024-02-08 00:47:46 -06:00
4b3b3478e7
Switch to Docker-style limits
Lint Checks / Run linter (pull_request) Successful in 51s
Deploy Test / Run deploy test suite (pull_request) Successful in 3m56s
Smoke Test / Run basic test suite (pull_request) Successful in 4m6s
Webapp Test / Run webapp test suite (pull_request) Successful in 4m45s
2024-02-08 00:43:41 -06:00
2a9955055c
debug
Lint Checks / Run linter (pull_request) Successful in 38s
Deploy Test / Run deploy test suite (pull_request) Successful in 2m47s
Webapp Test / Run webapp test suite (pull_request) Successful in 4m21s
Smoke Test / Run basic test suite (pull_request) Successful in 2m42s
2024-02-07 16:56:35 -06:00
8964e1c0fe
Add resource limit options to spec.
2024-02-07 16:48:02 -06:00
bfbcfb7904
Volume processing fixes ( #729 )
2024-02-06 12:32:10 -07:00
6848fc33cf
Implement dry run support for k8s deploy ( #727 )
2024-02-06 07:07:56 -07:00
36bb068983
Add ConfigMap test. ( #726 )
...
* Add ConfigMap test.
* eof
* Minor tweak
* Trigger test
---------
Co-authored-by: David Boreham <david@bozemanpass.com>
2024-02-05 14:15:11 -06:00
2fcd416e29
Basic webapp deployer stack. ( #722 )
2024-02-02 19:05:15 -07:00
12ec1bec43
Add ConfigMap support for k8s. ( #714 )
...
* Minor fixes for deploying with k8s and podman.
* ConfigMap support
2024-01-30 23:09:48 -06:00
62af03077f
Add deployed/error status output to the state file. ( #719 )
...
* More status info
* Up default resource limits.
* Need ps
2024-01-30 22:13:45 -06:00
1f9653e6f7
Fix kind mode and add k8s deployment test ( #704 )
...
* Fix kind mode and add k8s deployment test
* Fix lint errors
2024-01-16 15:55:58 -07:00
d8357df345
Add image pull secret to pods ( #692 )
2023-12-15 14:27:45 -07:00
88f66a3626
Add deployment update
and deploy-webapp-from-registry
commands. ( #676 )
2023-12-13 21:02:34 -06:00
077ea80c70
Add deployment status
command and fix k8s output for deployment ps
( #679 )
2023-12-06 09:27:47 -07:00
03a3645b3c
Add --port option to run-webapp. ( #667 )
...
* Add --port option to run-webapp
* Fixed merge
* lint
2023-11-29 11:32:28 -06:00
113c0bfbf1
Propagate env file for webapp deployment ( #669 )
2023-11-28 21:14:02 -07:00
a68cd5d65c
Webapp deploy ( #662 )
2023-11-27 22:02:16 -07:00
87bedde5cb
Support for k8s ingress and tls ( #659 )
2023-11-21 16:04:36 -07:00
01029cf7aa
Fix for code path that doesn't create a DeploymentContext ( #658 )
2023-11-21 08:35:31 -07:00
f6624cb33a
Add image push command ( #656 )
2023-11-20 20:23:55 -07:00
c9c6a0eee3
Changes for remote k8s ( #655 )
2023-11-20 09:12:57 -07:00
2059d67dca
Add run-webapp command. ( #651 )
2023-11-15 10:54:27 -07:00
ce587457d7
Add env var support for k8s ( #634 )
2023-11-08 17:53:46 -07:00
5e91c2224e
kind test stack ( #629 )
2023-11-08 01:11:00 -07:00
4456e70c93
Rename app -> stack_orchestrator ( #625 )
2023-11-07 00:06:55 -07:00