@@ -69,28 +69,12 @@ mise run helm:skaffold:dev
6969mise run helm:skaffold:run
7070```
7171
72- ** Supervisor sidecar topology** (build once and leave running):
73- ``` bash
74- mise run helm:skaffold:run:sidecar
75- ```
76-
77- ** Supervisor sidecar topology with TLS/mTLS enabled** (build once and leave running):
78- ``` bash
79- mise run helm:skaffold:run:sidecar-mtls
80- ```
81-
82- Both commands build the ` gateway ` and ` supervisor ` images and deploy the OpenShell Helm
83- chart. The sidecar profile renders an ` openshell-network-init ` init container for
84- nftables setup and an ` openshell-supervisor-network ` runtime sidecar for proxying.
85- Binary-aware policy mode runs that sidecar as UID 0 with ` SYS_PTRACE ` and
86- ` DAC_READ_SEARCH ` ; relaxed mode can run it as the configured proxy UID, which
87- must be at least ` 1000 ` and distinct from the workload UID. The
88- sidecar-mTLS profile reuses ` ci/values-sidecar.yaml ` and restores
89- ` server.disableTls=false ` inline for Skaffold. The ` pkiInitJob ` hook (a pre-install
90- Job that runs ` openshell-gateway generate-certs ` ) generates mTLS secrets on first
91- install. The default Skaffold values export gateway and Kubernetes-driver traces to
92- the collector service installed by ` helm:k3s:create ` . Envoy Gateway opt-in; see the
93- Optional Add-ons section below.
72+ Both commands build the gateway and trusted runtime image and deploy the
73+ OpenShell Helm chart. Kubernetes sandboxes always use the proxy-pod topology:
74+ a capability-free sandbox Pod behind an empty-egress NetworkPolicy and a
75+ separate capability-free supervisor Deployment. The default Skaffold values
76+ export gateway and Kubernetes-driver traces to the collector service installed
77+ by ` helm:k3s:create ` . Envoy Gateway is opt-in; see the Optional Add-ons section.
9478
9579The gateway Service uses ClusterIP. Access is via Envoy Gateway (port ` 8080 ` ) or
9680the unified local forwarding task:
@@ -102,8 +86,8 @@ mise run helm:k3s:forward
10286The task forwards OTLP/gRPC to ` http://127.0.0.1:4317 ` and the trace UI to
10387` http://127.0.0.1:18888 ` . When Skaffold has deployed a Kubernetes gateway, it
10488also forwards the gateway to ` http://127.0.0.1:8090 ` ; otherwise it continues
105- with the collector ports only. A successful plaintext ` helm:skaffold:run ` or
106- ` helm:skaffold:run:sidecar ` registers the gateway under the worktree-specific
89+ with the collector ports only. A successful plaintext ` helm:skaffold:run `
90+ registers the gateway under the worktree-specific
10791k3d cluster name and selects it as the active gateway. Keep the forwarding
10892task running while using those endpoints.
10993
@@ -134,8 +118,7 @@ create the Secret named `openshell-ha-pg` with a `uri` key, then run
134118### TLS behaviour
135119
136120` ci/values-skaffold.yaml ` sets ` server.disableTls: true ` , so Skaffold-based deploys run
137- plaintext by default. To test sidecar topology with TLS enabled, use
138- ` mise run helm:skaffold:run:sidecar-mtls ` .
121+ plaintext by default. Remove that override to test gateway TLS/mTLS locally.
139122
140123| Mode | ` server.disableTls ` | Gateway scheme |
141124| ------| ---------------------| ----------------|
@@ -188,12 +171,6 @@ openshell sandbox list --gateway-endpoint https://localhost:8090
188171mise run helm:skaffold:delete
189172```
190173
191- For a sidecar-profile deployment:
192-
193- ``` bash
194- mise run helm:skaffold:delete:sidecar
195- ```
196-
197174### Delete the cluster entirely
198175
199176``` bash
@@ -259,7 +236,7 @@ SPIFFE JWT-SVIDs for dynamic provider token grants:
259236` openshell.local ` and adds a ` ClusterSPIFFEID ` that maps sandbox pod
260237annotations to ` spiffe://openshell.local/openshell/sandbox/<sandbox-id> ` .
261238OpenShell mounts the SPIFFE CSI Workload API socket at
262- ` /spiffe-workload-api/spire-agent.sock ` into sandbox pods for provider token
239+ ` /spiffe-workload-api/spire-agent.sock ` only into supervisor Pods for provider token
263240grants. Supervisor-to-gateway authentication remains on the Kubernetes
264241ServiceAccount bootstrap and gateway-minted sandbox JWT path; the selected
265242Kubernetes compute driver validates the projected token before the gateway
@@ -320,7 +297,6 @@ for dependencies still declared in `Chart.yaml`.
320297| ` deploy/helm/openshell/ci/values-gateway.yaml ` | Envoy Gateway GRPCRoute + Gateway overlay |
321298| ` deploy/helm/openshell/ci/values-high-availability.yaml ` | HA test overlay (` replicaCount: 2 ` with external PostgreSQL Secret) |
322299| ` deploy/helm/openshell/ci/values-keycloak.yaml ` | Keycloak OIDC overlay |
323- | ` deploy/helm/openshell/ci/values-sidecar.yaml ` | Supervisor sidecar topology overlay for Kubernetes e2e/dev |
324300| ` deploy/helm/openshell/ci/values-spire.yaml ` | SPIFFE/SPIRE provider token grant overlay |
325301| ` deploy/helm/openshell/ci/values-spire-stack.yaml ` | SPIRE hardened chart values for local dev |
326302| ` deploy/helm/openshell/ci/values-tls-disabled.yaml ` | Lint-only: TLS + auth disabled (reverse-proxy edge termination) |
0 commit comments