Commit Graph

71 Commits (b9148c805198d5cc911da096b45aa8968b1a0fcb)

Author SHA1 Message Date
Prathamesh Musale cb84388d00 feat(k8s): auto-ConfigMap for file-level host-path compose volumes
File-level host-path compose volumes (e.g. `../config/foo.sh:/opt/foo.sh`)
were synthesized into a kind extraMount + hostPath PV chain with a
sanitized containerPath (`/mnt/host-path-<sanitized>`). The sanitized
name is derived from the compose volume source and is identical across
deployments of the same stack, so two deployments sharing a cluster
collided at the containerPath — kind only honors the first deployment's
bind, subsequent deployments' pods silently read the first's content.
The same code path was also broken on real k8s, which has no way to
populate `/mnt/host-path-*` on worker nodes.

File-level compose binds are conceptually k8s ConfigMaps. The snowball
stack already uses the ConfigMap-backed named-volume pattern by hand.
Make that automatic at the k8s object-generation layer, without
touching deployment-dir compose or spec files.

Behavior at deploy create (validation only, no file mutation):
- :rw on a host-path bind        -> DeployerException (use a named
                                     volume for writable data)
- Directory with subdirectories  -> DeployerException (embed in image,
                                     split into configmaps, or use
                                     initContainer)
- Directory or file > ~700 KiB   -> DeployerException (ConfigMap budget)
- File, or flat small directory  -> accepted, handled at deploy start

Behavior at deploy start:
- cluster_info.get_configmaps() additionally walks pod + job compose
  volumes and emits a V1ConfigMap per host-path bind (deduped by
  sanitized name across all pods/services). Content read from
  {deployment_dir}/config/<pod>/<file> (already populated by
  _copy_extra_config_dirs).
- volumes_for_pod_files emits V1ConfigMapVolumeSource instead of
  V1HostPathVolumeSource for host-path binds.
- volume_mounts_for_service stats the source and sets V1VolumeMount
  sub_path to the filename when source is a regular file — single-key
  ConfigMaps land as files, whole-dir ConfigMaps land as directories.
- _generate_kind_mounts no longer emits `/mnt/host-path-*` extraMounts
  for these binds (the ConfigMap path bypasses kind node FS entirely).

Deployment dir layout is unchanged. Compose files, spec.yml, and
{deployment_dir}/config/<pod>/ remain exactly as today — trivially
diffable against stack source, no synthetic volume names. ConfigMaps
are visible only in k8s (kubectl get cm -n <ns>).

The existing `/mnt/host-path-*` skip in check_mounts_compatible is
retained as a transition tolerance for deployments created before
this change.

Updates:
- deployment_create: _validate_host_path_mounts() called per pod/job
  in the create loops; 700 KiB ConfigMap budget (accounts for base64
  + metadata overhead)
- helpers: _generate_kind_mounts skips host-path entries;
  volumes_for_pod_files emits ConfigMap-backed V1Volume;
  volume_mounts_for_service takes optional deployment_dir and
  auto-sets sub_path for single-file sources
- cluster_info: new _host_path_bind_configmaps() walked from
  get_configmaps(); volume_mounts_for_service call passes
  deployment_dir from spec.file_path
- docs: document the behavior and the rejected shapes in
  deployment_patterns.md
- tests: k8s-deploy asserts the host-path ConfigMaps exist,
  compose/spec unchanged, and no `/mnt/host-path-*` extraMounts

Refs: so-b86

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 13:13:43 +00:00
prathamesh0 7f4b058066
so-o2o: kubectl-level Caddy cert backup/restore (#746)
Publish / Gate: k8s deploy e2e (push) Failing after 3s Details
Publish / Build and publish (push) Has been skipped Details
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 0s Details
Lint Checks / Run linter (push) Failing after 0s Details
Deploy Test / Run deploy test suite (push) Failing after 0s Details
Webapp Test / Run webapp test suite (push) Failing after 0s Details
Smoke Test / Run basic test suite (push) Failing after 0s Details
Replaces the etcd-surgery persistence approach with a CronJob that dumps `manager=caddy` Secrets to `{kind-mount-root}/caddy-cert-backup/` every 5 min, and a restore step that applies the file before Caddy starts on a fresh cluster. Closes so-o2o.

Deletes `_clean_etcd_keeping_certs` and the etcd+PKI extraMounts. No new spec keys - activates when `kind-mount-root` is set.
2026-04-17 15:36:40 +05:30
prathamesh0 fc5dc80058
so-l2l: in-place stop/restart via label-scoped cleanup (#743)
- `down()` scopes cleanup to a single stack via `app.kubernetes.io/stack` and keeps the namespace `Active` by default
- New `stop/down --delete-namespace` flag for opt-in full teardown
- `down()` is synchronous - waits until resources are actually gone before returning. Callers can drop their own wait loops
- `up()` skip-if-exists for Jobs completes the create-or-replace coverage (other kinds already had it)
- Orphan PVs from a prior `stop --delete-namespace` get cleaned on the next `stop --delete-volumes`
- Every k8s resource SO creates now carries `app.kubernetes.io/stack` via a new `ClusterInfo._stack_labels()` helper
- Closes so-l2l, so-076.2. Also includes pebble audit: closes so-c71, so-b2b, so-k1k; files so-328
2026-04-16 12:10:04 +05:30
prathamesh0 185ebf17f9
Fix failing k8s and external-stack CI test scripts (#739)
- Add `--perform-cluster-management` to container-registry, k8s-deployment-control, and database test scripts (`--skip-cluster-management` is now the default)
- Fix `wait_for_log_output()` in all k8s tests - "No logs available" is non-empty, so the check was passing prematurely
- Use HTTPS for container-registry catalog check (Caddy redirects HTTP->HTTPS)
- Fix external-stack sync test: sed pattern used `=` but spec is YAML (`: `), so the substitution never matched
- Workaround hyphenated env var name (`test-variable-1`) from upstream test-external-stack repo - docker compose v2 rejects hyphens
- Quote `echo $log_output` vars to prevent glob expansion in error output
- Use stack name (instead of cluster-id) derived namespace in k8s-deployment-control test
2026-04-02 15:00:57 +05:30
A. F. Dudley 87761c7041 fix: imagePullPolicy for kind, job images, duplicate registry call, test namespace
- deploy_k8s.py: default imagePullPolicy to IfNotPresent for kind
  (local images loaded via kind load, not pulled from registry)
- cluster_info.py: add job images to image_set so they're loaded into kind
- deploy_k8s.py: remove duplicate create_registry_secret call (merge artifact)
- deploy_k8s.py: fix indentation in run_job job_pull_policy (replace_all damage)
- tests/k8s-deploy: update namespace from laconic-{id} to laconic-{stack_name}
  to match the new stack-derived namespace scheme from wd-a7b

All 15 k8s deploy e2e tests pass.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 23:34:51 +00:00
A. F. Dudley 66da312f67 fix: base36 IDs for kind-compatible cluster names, test --perform-cluster-management
- ids.py: use base36 (lowercase+digits) instead of base62 — kind
  cluster names must match ^[a-z0-9.-]+$
- k8s deploy test: pass --perform-cluster-management on first start
  since 'start' defaults to --skip-cluster-management

Found by running tests/k8s-deploy/run-deploy-test.sh locally.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 21:50:53 +00:00
A. F. Dudley 5b8303f8f9 fix: resolve stack path from repo root + update deploy test
- chdir to git repo root before create_operation so relative stack
  paths in spec.yml resolve correctly via stack_is_external()
- Update deploy test: config.env is now regenerated from spec on
  --update (matching 72aabe7d behavior), verify backup exists

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 15:14:47 +00:00
Prathamesh Musale 5af6a83fa2 Add Job and secrets support for k8s-kind deployments (#995)
Publish / Build and publish (push) Failing after 0s Details
K8s Deployment Control Test / Run deployment control suite on kind/k8s (push) Failing after 0s Details
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 0s Details
Webapp Test / Run webapp test suite (push) Failing after 0s Details
Smoke Test / Run basic test suite (push) Failing after 0s Details
Lint Checks / Run linter (push) Failing after 0s Details
Deploy Test / Run deploy test suite (push) Failing after 0s Details
Part of https://plan.wireit.in/deepstack/browse/VUL-315

Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/995
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2026-03-11 03:56:21 +00:00
AFDudley 8cc0a9a19a add/local-test-runner (#996)
Publish / Build and publish (push) Failing after 0s Details
Deploy Test / Run deploy test suite (push) Failing after 0s Details
Webapp Test / Run webapp test suite (push) Failing after 0s Details
Lint Checks / Run linter (push) Failing after 0s Details
Smoke Test / Run basic test suite (push) Failing after 0s Details
Co-authored-by: A. F. Dudley <a.frederick.dudley@gmail.com>
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/996
2026-03-09 20:04:58 +00:00
Roy Crihfield 789b2dd3a7 Add --update option to deploy create
To allow updating an existing deployment

- Check the deployment dir exists when updating
- Write to temp dir, then safely copy tree
- Don't overwrite data dir or config.env
2026-01-29 08:25:05 -06:00
A. F. Dudley d07a3afd27 Merge origin/main into multi-port-service
Resolve conflicts:
- deployment_context.py: Keep single modify_yaml method from main
- fixturenet-optimism/commands.py: Use modify_yaml helper from main
- deployment_create.py: Keep helm-chart, network-dir, initial-peers options
- deploy_webapp.py: Update create_operation call signature

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 16:48:11 -05:00
A. F. Dudley 99db75da19 Fix invalid docker command in webapp-test
Change 'docker remove -f' to 'docker rm -f' - the 'remove' subcommand
doesn't exist in docker CLI.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 16:39:00 -05:00
A. F. Dudley 5a1399f2b2 Apply pre-commit linting fixes
Fix trailing whitespace and end-of-file issues across codebase.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 23:16:44 -05:00
Roy Crihfield ccccd9f957 Pass extra args to custom create command (#972)
Publish / Build and publish (push) Failing after 5s Details
Deploy Test / Run deploy test suite (push) Failing after 2s Details
Smoke Test / Run basic test suite (push) Failing after 2s Details
Lint Checks / Run linter (push) Failing after 2s Details
Webapp Test / Run webapp test suite (push) Failing after 2s Details
This is needed to allow custom deploy commands to handle arbitrary args.

* Adds a `DeploymentContext.modify_yaml` helper
* Removes `laconicd` from test stack to simplify it

Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/972
Reviewed-by: ashwin <ashwin@noreply.git.vdb.to>
2025-11-25 03:05:35 +00:00
David Boreham e56da7dcc1 Add support for k8s pod to node affinity and taint toleration (#917)
Deploy Test / Run deploy test suite (push) Failing after 4s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 4s Details
Publish / Build and publish (push) Failing after 4s Details
K8s Deployment Control Test / Run deployment control suite on kind/k8s (push) Failing after 3s Details
Lint Checks / Run linter (push) Failing after 3s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/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
Roy Crihfield 0d4f4509c8 Remove Eth fixturenet workflows (#906)
Smoke Test / Run basic test suite (push) Failing after 3s Details
Lint Checks / Run linter (push) Failing after 3s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Publish / Build and publish (push) Failing after 4s Details
Deletes the now-failing CI workflows for the old `fixturenet-eth` and `fixturenet-plugeth` stacks.

Part of https://git.vdb.to/cerc-io/stack-orchestrator/issues/905.

Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/906
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
2024-08-01 02:28:05 +00:00
David Boreham 7d18334953 Mainnet-laconic stack fixes for laconicd2 (#904)
Lint Checks / Run linter (push) Failing after 3s Details
Publish / Build and publish (push) Failing after 4s Details
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Failing after 3s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 3s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/904
2024-07-31 13:51:28 +00:00
zramsay dfedd9e9ff rename laconic-sdk to registry-sdk (#897)
Lint Checks / Run linter (push) Failing after 4s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Publish / Build and publish (push) Failing after 5s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 3s Details
Co-authored-by: zramsay <zach@bluecollarcoding.ca>
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/897
Reviewed-by: ashwin <ashwin@noreply.git.vdb.to>
Co-authored-by: zramsay <zramsay@noreply.git.vdb.to>
Co-committed-by: zramsay <zramsay@noreply.git.vdb.to>
2024-07-31 08:01:02 +00:00
Prathamesh Musale b26698b756 Update fixturenet-laconicd stack for renaming changes (#891)
Smoke Test / Run basic test suite (push) Failing after 4s Details
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Failing after 3s Details
Publish / Build and publish (push) Failing after 5s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Lint Checks / Run linter (push) Failing after 3s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Part of [Rename laconic2d to laconicd](https://www.notion.so/Rename-laconic2d-to-laconicd-9028d0c020d24d1288e92ebcb773d7a7)
Handles https://git.vdb.to/cerc-io/stack-orchestrator/issues/882, https://git.vdb.to/cerc-io/stack-orchestrator/issues/889

Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/891
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-07-25 08:50:15 +00:00
David Boreham c81fb9581a Fix stack path check (#877)
Webapp Test / Run webapp test suite (push) Failing after 5s Details
Lint Checks / Run linter (push) Failing after 3s Details
Publish / Build and publish (push) Failing after 5s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 3s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/877
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-07-19 17:16:40 +00:00
David Boreham 83397bbae4 Enable cors in laconicd http services (#875)
Webapp Test / Run webapp test suite (push) Failing after 4s Details
Smoke Test / Run basic test suite (push) Failing after 3s Details
Publish / Build and publish (push) Failing after 5s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Lint Checks / Run linter (push) Failing after 3s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/875
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-07-15 05:23:18 +00:00
Prathamesh Musale 3fd99a1522 Handle race condition in laconic registry CLI tests (#843)
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Failing after 4s Details
Lint Checks / Run linter (push) Failing after 2s Details
Publish / Build and publish (push) Failing after 5s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 3s Details
Part of https://git.vdb.to/cerc-io/laconic-registry-cli/issues/63

Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/843
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-06-19 06:41:58 +00:00
David Boreham 30db1f58d0 Refactor for new external stack directory layout under common parent (#815)
Lint Checks / Run linter (push) Failing after 4s Details
Publish / Build and publish (push) Failing after 4s Details
Deploy Test / Run deploy test suite (push) Failing after 3s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
External Stack Test / Run external stack test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 3s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/815
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-04-29 23:03:20 +00:00
David Boreham 6e4dae9777 Add external stack support (#806)
Deploy Test / Run deploy test suite (push) Failing after 5s Details
External Stack Test / Run external stack test suite (push) Failing after 3s Details
Webapp Test / Run webapp test suite (push) Failing after 3s Details
Smoke Test / Run basic test suite (push) Failing after 4s Details
Lint Checks / Run linter (push) Failing after 4s Details
Publish / Build and publish (push) Failing after 5s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/806
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-04-18 21:22:47 +00:00
Prathamesh Musale 515f6d16f5 Fix laconic registry CLI tests (#792)
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Failing after 3h9m58s Details
Deploy Test / Run deploy test suite (push) Successful in 11m54s Details
Webapp Test / Run webapp test suite (push) Successful in 3m56s Details
Smoke Test / Run basic test suite (push) Successful in 12m5s Details
Lint Checks / Run linter (push) Failing after 4s Details
Publish / Build and publish (push) Successful in 8m42s Details
Part of https://www.notion.so/Test-registry-cli-in-SO-fixturenet-laconicd-CI-ef1f497678264362931bd12643ba8a17

Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/792
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-04-04 10:50:02 +00:00
Prathamesh Musale 105805cb9b Run registry CLI tests as part of laconicd fixturenet tests (#791)
Deploy Test / Run deploy test suite (push) Successful in 3m32s Details
Lint Checks / Run linter (push) Failing after 3s Details
Publish / Build and publish (push) Successful in 49s Details
Webapp Test / Run webapp test suite (push) Successful in 2m27s Details
Smoke Test / Run basic test suite (push) Successful in 3m23s Details
Fixturenet-Laconicd-Test / Run Laconicd fixturenet and Laconic CLI tests (push) Failing after 3h9m42s Details
Part of https://www.notion.so/Test-registry-cli-in-SO-fixturenet-laconicd-CI-ef1f497678264362931bd12643ba8a17

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/791
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2024-04-04 07:16:46 +00:00
David Boreham 642c0ead0d Add test for two config parameters (#758)
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/758
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-02-22 19:35:55 +00:00
David Boreham 049ffcff71 Fix test failure
Publish / Build and publish (push) Successful in 12m11s Details
Deploy Test / Run deploy test suite (push) Successful in 16m31s Details
Webapp Test / Run webapp test suite (push) Successful in 12m11s Details
Lint Checks / Run linter (push) Failing after 3s Details
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Failing after 1m20s Details
Smoke Test / Run basic test suite (push) Successful in 11m17s Details
2024-02-18 12:28:48 -07:00
David Boreham f5314a979b Install ed to fix CI job 2024-02-18 12:20:01 -07:00
David Boreham 39f4fa4487 Container Registry Stack (#747)
Smoke Test / Run basic test suite (push) Successful in 3m57s Details
Lint Checks / Run linter (push) Failing after 3s Details
Publish / Build and publish (push) Successful in 50s Details
Webapp Test / Run webapp test suite (push) Successful in 2m42s Details
Container Registry Test / Run contaier registry hosting test on kind/k8s (push) Failing after 1m5s Details
Deploy Test / Run deploy test suite (push) Successful in 3m36s Details
Co-authored-by: David Boreham <david@bozemanpas.com>
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/747
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-02-18 18:55:55 +00:00
David Boreham 0b0394a940 Use absolute path for the data volume (#749)
Publish / Build and publish (push) Successful in 53s Details
Deploy Test / Run deploy test suite (push) Successful in 3m39s Details
Smoke Test / Run basic test suite (push) Successful in 3m59s Details
Lint Checks / Run linter (push) Failing after 3s Details
Database Test / Run database hosting test on kind/k8s (push) Failing after 1m3s Details
Webapp Test / Run webapp test suite (push) Successful in 2m39s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/749
Co-authored-by: David Boreham <david@bozemanpass.com>
Co-committed-by: David Boreham <david@bozemanpass.com>
2024-02-17 14:29:53 +00:00
David Boreham d9bb6b3588 Test Database Stack (#737)
Smoke Test / Run basic test suite (push) Successful in 3m54s Details
Deploy Test / Run deploy test suite (push) Successful in 3m40s Details
Publish / Build and publish (push) Successful in 50s Details
Webapp Test / Run webapp test suite (push) Successful in 2m33s Details
Lint Checks / Run linter (push) Failing after 3s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/737
2024-02-15 05:26:29 +00:00
Thomas E Lackey 65d67dba10 Fix k8s and enable it by default on PRs (#742)
Publish / Build and publish (push) Successful in 52s Details
Smoke Test / Run basic test suite (push) Successful in 3m45s Details
Lint Checks / Run linter (push) Failing after 3s Details
Deploy Test / Run deploy test suite (push) Successful in 3m32s Details
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 1m2s Details
Webapp Test / Run webapp test suite (push) Successful in 3m22s Details
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/742
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2024-02-14 23:50:09 +00:00
Thomas E Lackey b22c72e715 For k8s, use provisioner-managed volumes when an absolute host path is not specified. (#741)
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: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/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
David Boreham 8be1e684e8 Process environment variables defined in compose files (#736)
Reviewed-on: https://git.vdb.to/cerc-io/stack-orchestrator/pulls/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
Thomas E Lackey 36bb068983
Add ConfigMap test. (#726)
Publish / Build and publish (push) Successful in 1m24s Details
Deploy Test / Run deploy test suite (push) Successful in 2m52s Details
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 1m3s Details
Webapp Test / Run webapp test suite (push) Successful in 2m40s Details
Smoke Test / Run basic test suite (push) Successful in 4m24s Details
* Add ConfigMap test.

* eof

* Minor tweak

* Trigger test

---------

Co-authored-by: David Boreham <david@bozemanpass.com>
2024-02-05 14:15:11 -06:00
Thomas E Lackey 6629017d6a
Support other webapp types (react, static). (#721)
* Support other webapp types (react, static).
2024-02-02 18:04:06 -06:00
David Boreham a750b645b9
Merge Ci test branch fixes (#717) 2024-01-30 11:18:08 -07:00
David Boreham b7f215d9bf
k8s test fixes (#713)
Publish / Build and publish (push) Successful in 51s Details
Deploy Test / Run deploy test suite (push) Successful in 3m2s Details
K8s Deploy Test / Run deploy test suite on kind/k8s (push) Failing after 1m3s Details
Webapp Test / Run webapp test suite (push) Successful in 2m34s Details
Smoke Test / Run basic test suite (push) Successful in 3m48s Details
* Add cgroup setup, increase test timeouts

* Trigger from test script or CI job changes too
2024-01-28 16:21:39 -07:00
David Boreham 635aa7037b Build test container 2024-01-16 21:15:21 -07:00
David Boreham 90cebdb7a6
Add CI script for k8s deployment test (#705) 2024-01-16 16:16:07 -07:00
David Boreham 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
David Boreham c9c6a0eee3
Changes for remote k8s (#655)
Publish / Build and publish (push) Successful in 1m2s Details
Deploy Test / Run deploy test suite (push) Successful in 3m6s Details
K8s Deploy Test / Run deploy test suite (push) Failing after 3m4s Details
Webapp Test / Run webapp test suite (push) Failing after 3m36s Details
Smoke Test / Run basic test suite (push) Successful in 4m4s Details
2023-11-20 09:12:57 -07:00
Thomas E Lackey 4ae4d3b61d
Print docker container logs in webapp test. (#649)
Publish / Build and publish (push) Successful in 1m15s Details
Deploy Test / Run deploy test suite (push) Successful in 3m2s Details
K8s Deploy Test / Run deploy test suite (push) Failing after 3m27s Details
Webapp Test / Run webapp test suite (push) Failing after 3m35s Details
Smoke Test / Run basic test suite (push) Successful in 4m7s Details
2023-11-14 17:30:01 -06:00
Thomas E Lackey 414b887036
Allow setting build tool (npm/yarn) and next.js version. (#639)
Publish / Build and publish (push) Successful in 1m7s Details
Deploy Test / Run deploy test suite (push) Successful in 3m3s Details
K8s Deploy Test / Run deploy test suite (push) Failing after 2m58s Details
Webapp Test / Run webapp test suite (push) Failing after 3m38s Details
Smoke Test / Run basic test suite (push) Successful in 3m48s Details
* Allow setting build tool (npm/yarn) and next.js version.
2023-11-10 17:44:25 -06:00
David Boreham a27cf86748
Add basic k8s test (#635)
* Add CI job

* Add basic k8s test
2023-11-08 19:12:48 -07:00
Thomas E Lackey 36e13f7199
Remove test output from tree. (#628) 2023-11-07 23:10:32 -06:00
Thomas E Lackey d9bcc088a8
Enable webapp test in GitHub CI. (#627) 2023-11-07 18:27:08 -06:00
Thomas E Lackey 660326f713
Add new build-webapp command and related scripts and containers. (#626)
Publish / Build and publish (push) Successful in 59s Details
Deploy Test / Run deploy test suite (push) Successful in 2m57s Details
Webapp Test / Run webapp test suite (push) Failing after 3m31s Details
Smoke Test / Run basic test suite (push) Successful in 4m3s Details
* Add new build-webapp command and related scripts and containers.
2023-11-07 18:15:04 -06:00
Ian Kay 36d1e0eedd add fixturenet-laconicd test 2023-10-26 17:26:42 -04:00