929 Commits

Author SHA1 Message Date
E M
5c22e5d7bd
wait for an existing pod before completing step 2026-04-24 10:27:12 +10:00
E M
8f13be1dc4
chore: reduce GKE release test cluster provisioning time and cost
- Configure runners-ci node pool inline in the cluster resource instead
  of using remove_default_node_pool=true, eliminating the
  provision-then-delete cycle that added ~5 min to terraform apply
- Remove the separate infra pool; runners-ci is now the only pool on
  the critical path of cluster creation
- Set tests-pods pool min_node_count=0 so no node is provisioned at
  apply time — nodes scale up only when test pods are scheduled
- Enable spot instances on the tests-pods pool for ~60-91% cost saving
- Add 60 min job timeout to release-tests to bound hung cluster cost
- Add Terraform plugin cache keyed on the lock file to skip provider
  re-downloads on subsequent runs (~30-60s saved)
- Install gke-gcloud-auth-plugin via setup-gcloud to fix kubectl auth

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 09:46:59 +10:00
E M
00a6264030
chore: use zonal GKE cluster to reduce provisioning time
Switch cluster and all node pools from regional to zonal (`europe-west4-b`) to avoid the 40+ minute provisioning time of a regional (multi-zone) cluster. Adds a `zone` variable to the GKE module and cluster config, and updates the workflow's `gcloud get-credentials` call to use `--zone` instead of `--region`.
2026-04-23 17:10:08 +10:00
E M
229cff0065
ignore claude files 2026-04-23 16:01:29 +10:00
E M
9a45095a98
rename cluster to match previous change 2026-04-23 16:01:28 +10:00
E M
5cb9cc3379
reduce length of cluster name 2026-04-23 16:01:28 +10:00
E M
1bc1336268
add permissions to gcp auth 2026-04-23 16:01:28 +10:00
E M
5da037fb11
Port terraform cluster creation/destruction from digital ocean to gcp 2026-04-23 16:01:28 +10:00
E M
661308deb1
chore: rename Codex references to Logos Storage in release tests
Replace all "Codex" branding in the release test workflow and supporting
files: rename the K8s cluster, Terraform state key, secret, log paths,
env var (CODEXDOCKERIMAGE → STORAGEDOCKERIMAGE), and test runner image
(cs-codex-dist-tests → logos-storage-dist-tests) to align with the
already-updated logos-storage-nim-cs-dist-tests repo in https://github.com/logos-storage/logos-storage-nim-cs-dist-tests/pull/124. Also fix the
dotnet test path to the correct Tests/LogosStorageReleaseTests directory.
2026-04-23 16:01:28 +10:00
E M
117bc74099
Update workflow success condition 2026-04-23 16:01:27 +10:00
E M
c6a9320648
export kubeconfig values so template works 2026-04-23 16:01:27 +10:00
E M
fc50479c1e
Create static kubeconfig with bearer token
Replace the use of doctl as a credential manager for executing k8s calls with a freshly created bearer token (expires after 2h). Avoids passing a DO personal access token to the cs-dist-tests runner pod.
2026-04-23 16:01:27 +10:00
E M
fdb47887d2
restore using latest cs-dist-tests image 2026-04-23 16:01:27 +10:00
E M
2b13ed9c07
WIP update cs-dist-tests docker image tag
The change to the cs-dist-tests image name was to test if installing doctl to the image would fix the release tests not being able to authenticate into the cluster. This is mainly due to the kubeconfig being generated and stored in a DO secret, as opposed to a static kubeconfig for a permanent cluster as before.

IMPORTANT:
The image tag should be changed back to 'latest'!
2026-04-23 16:01:27 +10:00
E M
122ad42038
wait for pod to start before streaming logs 2026-04-23 16:01:26 +10:00
E M
df880b959b
prefix repository secret names with RELEASE_TESTS_ 2026-04-23 16:01:26 +10:00
E M
fc9923a0a4
Allow workflows to be tested manually by branch 2026-04-23 16:01:26 +10:00
E M
90d96a1a01
update workflow inputs, k8s namespace
- remove RUNNER_IMAGE because the cs-dist-tests image is dumb -- it clones the cs-dist-tests repo, checkouts the branch in BRANCH and then runs the release tests. So instead, always use the :latest image (which is built when there are commits to master)
- add the BRANCH workflow input so you can test cs-dist-test changes in the runner if needed
- remove COMMAND arg, it's always going to be 'dotnet test Tests/CodexReleaseTests'
- remove NAMESPACE env variable and just use 'default'. The cluster is ephermal and so all resources deployed are for the release tests, no namespaces needed.
2026-04-23 16:01:26 +10:00
E M
271d2aec51
Add workflow input for cs-dist-tests docker image
By default, the logosstorage/logos-storage-nim-cs-dist-tests:latest image will be used for the test runner in the release tests. However, if developers want to run the release tests and test changes to the runner (eg changes in the logos-storage-nim-cs-dist-tests repo), they can push their changes to a branch and manually run the `docker-runner` workflow in the logos-storage-nim-cs-dist-tests repo. This will create an image like logosstorage/logos-storage-nim-cs-dist-tests:sha-c0465a5. This image can then be used as a release tests workflow input for 'cs-dist-tests runner image'
2026-04-23 16:01:26 +10:00
E M
99eb388362
Add release tests workflow
Adds a workflow for release tests:
- builds a docker image for launching nodes in the tests (basically has additional nimflags set)
- creates a K8s cluster in Digital Ocean
- one pod in the cluster is dedicated as the test runner (uses the logos-storage-nim-cs-dist-tests:latest image)
- the release will fail if the docker image build or the release tests fail
- the K8s cluster is torn down after the tests finish (failure or not)
2026-04-23 16:01:26 +10:00
Arnaud
2dd97631ed
chore: update nim 2.2.8 (#1424)
Signed-off-by: Arnaud <arno.deville@gmail.com>
Co-authored-by: Eric <5089238+emizzle@users.noreply.github.com>
2026-04-22 13:57:14 +00:00
Arnaud
4c9ecd0766
feat: add a warning when private address only (#1423)
Signed-off-by: Arnaud <arno.deville@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-21 11:36:02 +00:00
Arnaud
8dd2356000
chore: update chronicles (#1422) 2026-04-21 06:05:00 +00:00
Arnaud
79d59dc66c
fix: cleanup chronicles writer in close function (#1413)
Signed-off-by: Arnaud <arno.deville@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-13 08:40:14 +00:00
Arnaud
ffc86c23d7
fix: nph build (#1419) 2026-04-13 08:20:00 +00:00
Arnaud
e8bc5c46e9
chore: cleanup dependencies (#1415)
Signed-off-by: Arnaud <arno.deville@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-13 06:07:38 +00:00
Eric
4ea8350612
fix(repostore): prevent underflow when deleting datasets (#1412) 2026-03-31 05:25:08 +00:00
5ecd82eeaa
mit-license: add copyright owner Logos
Signed-off-by: markoburcul <marko@status.im>
2026-03-24 18:19:06 +01:00
Eric
3bc6aa8b8d
feat(cli)!: change listen addr to listen port (#1409) v0.3.2 2026-02-24 10:03:48 +00:00
Eric
ab413bdfcf
chore!: Finish renaming Codex to Logos Storage (#1399) 2026-02-19 04:59:15 +00:00
Eric
4068bcb2ed
fix: bump nph and refactor build process in makefile (#1410) 2026-02-19 02:12:45 +00:00
Eric
fef46aee35
feat(testing): local libstorage c bindings test (#1407) 2026-02-18 04:29:59 +00:00
e375223500
fix: nix /tmp permission errors on MacOS
Because on MacOS Nix does not have proper filesystem namespacing like on
linux the /tmp filesystem is the real /tmp on the machine.

This can cause permission issues when different Nix build users creat it:

> cannot create directory: /tmp/nim/koch_d

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2026-02-13 12:28:50 +01:00
Eric
d02f44ffd6
feat(libstorage): enable rest api in libstorage in debug builds (#1406) 2026-02-11 08:25:53 +00:00
Giuliano Mega
3830ecc9e6
chore: bump nim-datastore (#1405) 2026-02-09 13:59:25 -03:00
Giuliano Mega
61791536e8
fix: add callback call to storage_destroy to keep consistency (#1401) 2026-02-09 14:03:55 +00:00
Giuliano Mega
a5ce5e1fb6
chore: bump nim-datastore (#1402) 2026-02-06 17:10:20 -03:00
Giuliano Mega
1a7cf2d335
fix: propagate callback cancellation (#1400) 2026-02-05 14:33:23 +00:00
Arnaud
3203dfba41
chore: remove circom compat from nix (#1388) 2026-02-03 06:51:30 +00:00
Eric
0a6c2a5796
fix(ci): release process producing wrong artifacts (#1398) 2026-02-03 02:47:46 +00:00
Eric
44ad291b16
refactor!: move merkletree to own repo (#1390) 2026-02-02 22:43:14 +00:00
Adam Uhlíř
c6345fd6f7
build(docker): ignore ipv6 for NAT_IP_AUTO (#1393) 2026-01-30 08:41:28 +00:00
Giuliano Mega
9ab8e1d671
fix: don't release unless there's a tag (#1394) 2026-01-29 16:09:37 +00:00
Giuliano Mega
7c3894da54
fix: actually put the port mapper thread to sleep (#1392) 2026-01-29 13:17:27 +00:00
Eric
52d27485cd
fix(ci): Add version and tagged release variables to release workflow (#1391) 2026-01-28 06:09:17 +00:00
Eric
1c970e9ff6
chore(ci): Rename release artifacts (#1389) 2026-01-27 23:47:13 +00:00
Adam Uhlíř
e596de78c2
build(docker): rename codex to logos-storage (#1387) 2026-01-27 17:32:02 +00:00
Arnaud
7d51740f91
fix: correct zip name for libstorage zip (#1386) 2026-01-27 07:11:01 +00:00
Adam Uhlíř
4fecccc539
ci: don't run empty contract and tools tests (#1385) 2026-01-26 16:44:16 +00:00
Adam Uhlíř
f8d3e0d3be
ci: build images for dist-tests (#1384) 2026-01-22 15:16:48 +00:00