Skip to content

docs: fix inaccurate/stale facts across docs, specs, and comments (#103) #358

docs: fix inaccurate/stale facts across docs, specs, and comments (#103)

docs: fix inaccurate/stale facts across docs, specs, and comments (#103) #358

Workflow file for this run

name: Integration
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
jobs:
local:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
- name: Install openshell
# Version is pinned in .openshell-version (the single source of truth,
# also read by `make openshell` and asserted against
# internal/gateway.MinOpenShellVersion). The install script otherwise
# grabs the latest tagged release, which can drift past the chart's
# supervisor image and break the sandbox ssh/tar relay with
# "supervisor session not found".
run: |
ver="$(cat .openshell-version)"
test -n "$ver" || { echo "error: .openshell-version is empty"; exit 1; }
tmp="$(mktemp)"
curl -fLsS https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh -o "$tmp"
OPENSHELL_VERSION="$ver" sh "$tmp"
- name: Wait for gateway
run: |
for i in $(seq 1 30); do
openshell inference get &>/dev/null && break
sleep 1
done
openshell gateway list
- name: Run local integration
run: |
CGO_ENABLED=0 go build -ldflags '-s -w -X main.version=ci' -o harness .
HARNESS_OS_IMAGE=profiles/images/sandbox-default ./test/test-flow.sh local-container
env:
TEST_LOG_FILE: /tmp/test-logs/test-flow-local.log
- name: Run config test suite (with live tests)
run: make test-suite-live
- name: Export logs
if: always()
run: |
mkdir -p /tmp/test-logs
journalctl --user -u openshell-gateway --no-pager > /tmp/test-logs/gateway.log 2>/dev/null || true
openshell status > /tmp/test-logs/status.txt 2>&1 || true
openshell gateway list > /tmp/test-logs/gateways.txt 2>&1 || true
- uses: actions/upload-artifact@v4
if: always()
with:
name: test-logs-local
path: /tmp/test-logs/
kind:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
- name: Install openshell
# Version is pinned in .openshell-version (the single source of truth,
# also read by `make openshell` and asserted against
# internal/gateway.MinOpenShellVersion). The install script otherwise
# grabs the latest tagged release, which can drift past the chart's
# supervisor image and break the sandbox ssh/tar relay with
# "supervisor session not found".
run: |
ver="$(cat .openshell-version)"
test -n "$ver" || { echo "error: .openshell-version is empty"; exit 1; }
tmp="$(mktemp)"
curl -fLsS https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh -o "$tmp"
OPENSHELL_VERSION="$ver" sh "$tmp"
- name: Wait for gateway
run: |
for i in $(seq 1 30); do
openshell inference get &>/dev/null && break
sleep 1
done
openshell gateway list
# install_only: kind-lifecycle.sh creates its own cluster with an
# isolated kubeconfig — only the kind binary is needed here.
- uses: helm/kind-action@v1
with:
install_only: true
- name: Install helm
uses: azure/setup-helm@v4
- name: Run kind integration
run: make test-kind
env:
CONTAINER_CLI: docker
TEST_LOG_FILE: /tmp/test-logs/test-flow-kind.log
- name: Export logs
if: always()
run: |
mkdir -p /tmp/test-logs
kubectl -n openshell logs statefulset/openshell > /tmp/test-logs/gateway.log 2>/dev/null || true
kubectl -n openshell get all > /tmp/test-logs/resources.txt 2>&1 || true
openshell gateway list > /tmp/test-logs/gateways.txt 2>&1 || true
- uses: actions/upload-artifact@v4
if: always()
with:
name: test-logs-kind
path: /tmp/test-logs/