Skip to content

Latest commit

 

History

History
88 lines (59 loc) · 2.21 KB

File metadata and controls

88 lines (59 loc) · 2.21 KB

Local Development

The local stack runs on Minikube with Podman and Helm.

Prerequisites

Install Minikube, Podman, kubectl, Helm, and Google Cloud CLI when using BigQuery.

devenv --profile default shell
cluster up

The script writes credentials to the ignored repository .kubeconfig. It does not change the user kubeconfig.

Installed services include KEDA, k6, Istio, SeaweedFS, OIDC, PostgreSQL with the pg_duckdb extension, Valkey, PostgREST, and Data Proxy.

cluster

Seed BigQuery data

gcloud auth application-default login
seed --project rj-ia-desenvolvimento

Run one producer job when needed:

kubectl -n data-proxy create job \
  --from=cronjob/data-proxy-producer \
  data-proxy-producer-manual

Access the API

Add this local host entry:

127.0.0.1 data-proxy.local
kubectl -n istio-ingress port-forward svc/istio-ingressgateway 3111:80
token

See Using the API.

k6 commands

Command Purpose
cluster k6 e2e Validates sync, RLS, fallback, cache, and local data.
cluster k6 migrate Runs shared → HA → shared migration validation.
cluster k6 load Runs the normal load profile.
cluster k6 stress Runs the stepped stress profile.

Run cluster k6 e2e after changing local images, sync configuration, fallback, SeaweedFS, or pg_duckdb behavior. Run cluster k6 migrate only after the baseline E2E is healthy. It recovers a failed transition, creates a shared baseline, validates both mode changes, and checks source-resource pruning.

Development checks

Run the static and focused checks with devenv tasks:

devenv --profile default tasks run dp:lint dp:test

E2E and migration tests run against the local cluster or staging environment, not in CI.

Stop the cluster

cluster down

If Helm installation fails, recreate the cluster:

cluster down
cluster up

← Previous · Home