-
Notifications
You must be signed in to change notification settings - Fork 10
docs(specs): add OpenShell branch build spec for kind-openshell-up #148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -179,12 +179,15 @@ A Gateway SHALL include provisioning configuration fields that the control plane | |
| |---|---|---| | ||
| | `image` | string | Gateway container image reference (e.g., `ghcr.io/nvidia/openshell/gateway:21da343c9f838bd9ac85dc61bf44889de1a72873`) | | ||
| | `supervisor_image` | string | Supervisor sidecar container image (default: `ghcr.io/nvidia/openshell/supervisor:0.0.109`) | | ||
| | `sandbox_image` | string | Sandbox base image the gateway uses when launching sandboxes (default: `ghcr.io/nvidia/openshell-community/sandboxes/base:latest`). See [`openshell-gateway.spec.md`](./openshell-gateway.spec.md) | | ||
| | `server_dns_names` | string[] | DNS names for TLS certificate SANs | | ||
| | `oidc` | JSONB | OIDC authentication config: `{issuer, audience, jwks_ttl, roles_claim, admin_role, user_role, scopes_claim}` | | ||
| | `route` | JSONB | Route exposure config for GRPCRoute provisioning: `{host}` | | ||
| | `route_address` | text | Read-only external address populated by the control plane (e.g., `grpcs://hostname:443`) | | ||
| | `database` | JSONB | Database backend config: `{storageSize, image, externalSecretRef}` | | ||
| | `credential_driver` | JSONB | Credential storage driver config: `{type, kubernetes_secrets, vault}`. See [`openshell-gateway-credentials.spec.md`](./openshell-gateway-credentials.spec.md) | | ||
| | `dev_build` | boolean | Marks this Gateway as a dev/branch build (default: false). Control plane copies to `hypershell.redhat.io/openshell-dev-build` label on K8s resources. See [`openshell-branch-build.spec.md`](./openshell-branch-build.spec.md) | | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Cross-PR coordination (#151). #151 adds Gateway |
||
| | `dev_build_metadata` | JSONB | Dev build provenance: `{ref, sha, repo}`. Control plane copies to annotations on K8s resources. See [`openshell-branch-build.spec.md`](./openshell-branch-build.spec.md) | | ||
|
|
||
| See [`openshell-gateway.spec.md`](./openshell-gateway.spec.md) and its sub-specs for full provisioning details. | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -783,6 +783,9 @@ The system SHALL deploy a Jaeger all-in-one instance in the local environment an | |
| | `CLOUD_PROVIDER_KIND_REPO` | (pinned in Makefile) | Git repository URL for cloud-provider-kind fork (BackendTLSPolicy + ALPN h2 support) | | ||
| | `CLOUD_PROVIDER_KIND_REF` | (pinned in Makefile) | Exact commit SHA of the cloud-provider-kind fork to build (deterministic; idempotent-by-SHA rebuild) | | ||
| | `CLOUD_PROVIDER_KIND_BRANCH` | (unset) | Optional testing override: build from a branch tip or arbitrary git ref instead of the pinned SHA; always rebuilds when set | | ||
| | `OPENSHELL_REPO` | (canonical upstream OpenShell repo) | Git repository URL to build OpenShell from for `make kind-openshell-up`; override to target a fork | | ||
| | `OPENSHELL_BRANCH` | (unset) | OpenShell git ref (branch, tag, or commit) to build gateway/supervisor/sandbox images from for `make kind-openshell-up` | | ||
| | `OPENSHELL_PR` | (unset) | Convenience for `make kind-openshell-up`: OpenShell pull request number, resolved to its head ref | | ||
| | `KIND_RESTART_CPK` | (unset) | Set to `true` to force `make kind-up` to restart cloud-provider-kind (republishes ephemeral LB ports; otherwise the running instance is reused to keep ports stable) | | ||
| | `CERT_MANAGER_VERSION` | `v1.21.1` | cert-manager release version | | ||
| | `CNPG_VERSION` | `v1.30.0` | CloudNativePG operator release version | | ||
|
|
@@ -801,6 +804,7 @@ All targets operate on `KIND_NAMESPACE` (default: `hypershell-system`). | |
| | `make kind-teardown` | Destroy the Kind cluster + stop cloud-provider-kind + stop CoreDNS + flush port forwarding rules + revert resolver | | ||
| | `make kind-status` | Show cluster info, pods, services, hostnames, DNS status, port forwarding status, and active component swaps | | ||
| | `make kind-fix-ports` | Re-establish host port forwarding (443 + 8080) after a cloud-provider-kind restart; re-discovers ephemeral ports and re-runs the stop-then-start flush | | ||
| | `make kind-openshell-up` | Build OpenShell (gateway + supervisor + sandbox base) from `OPENSHELL_BRANCH`/`OPENSHELL_PR` + load into cluster (creating it if needed) + seed a dev-labeled gateway running those images. See [`openshell-branch-build.spec.md`](./openshell-branch-build.spec.md) | | ||
|
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [Major] The follow-up correctly dropped sandbox from the OpenShell checkout. This row (and Fix both rows to: build gateway and supervisor from Confidence: High
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [Major] When Fix both rows to: build gateway and supervisor from Confidence: High |
||
| | `make kind-api-server-up` | Build api-server from working tree + load + replace deployment + wait (cluster must exist; idempotent - rebuilds and replaces on every call) | | ||
| | `make kind-api-server-down` | Revert api-server to baseline image + restart + wait | | ||
| | `make kind-control-plane-up` | Build control-plane from working tree + load + replace deployment + wait (cluster must exist; idempotent - rebuilds and replaces on every call) | | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[Minor] Default uses
:latest. Same determinism concern as in openshell-branch-build.spec.md - a mutable default here meanssandbox_imageis not reproducible unless every caller overrides it.Cross-PR: #201 configures the sandbox base globally via a
GATEWAY_SANDBOX_IMAGEenv var (images.DefaultSandboxImage()), whereas this PR adds it as a per-Gateway field. Maintainers should decide whether the sandbox base is a global default, a per-Gateway field, or both (env default + field override).