Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/workflows/branch-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ jobs:
with:
component: gateway
platform: linux/arm64
publish-manifest: false

build-supervisor:
needs: [pr_metadata]
Expand All @@ -45,6 +46,7 @@ jobs:
with:
component: supervisor
platform: linux/arm64
publish-manifest: false

e2e:
needs: [pr_metadata, build-gateway, build-supervisor]
Expand All @@ -54,5 +56,5 @@ jobs:
packages: read
uses: ./.github/workflows/e2e-test.yml
with:
image-tag: ${{ github.sha }}
image-tag: ${{ github.sha }}-arm64
runner: linux-arm64-cpu8
13 changes: 7 additions & 6 deletions .github/workflows/branch-kubernetes-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ jobs:
with:
component: gateway
platform: linux/amd64
publish-manifest: false

build-supervisor:
needs: [pr_metadata]
Expand All @@ -49,6 +50,7 @@ jobs:
with:
component: supervisor
platform: linux/amd64
publish-manifest: false

kubernetes-e2e:
name: Kubernetes E2E (Rust smoke)
Expand Down Expand Up @@ -106,16 +108,15 @@ jobs:
kind get kubeconfig --name "$KIND_CLUSTER_NAME" > "$GITHUB_WORKSPACE/kubeconfig"
chmod 600 "$GITHUB_WORKSPACE/kubeconfig"

# Pre-pull and side-load: kind nodes don't have ghcr credentials, and
# tagging IMAGE_TAG to a SHA means the chart's IfNotPresent pull policy
# is satisfied once the image is loaded into the node's containerd.
- name: Load gateway and supervisor images into kind
run: |
set -euo pipefail
for component in gateway supervisor; do
image="ghcr.io/nvidia/openshell/${component}:${{ github.sha }}"
docker pull "$image"
kind load docker-image "$image" --name "$KIND_CLUSTER_NAME"
src="ghcr.io/nvidia/openshell/${component}:${{ github.sha }}-amd64"
bare="ghcr.io/nvidia/openshell/${component}:${{ github.sha }}"
docker pull "$src"
docker tag "$src" "$bare"
kind load docker-image "$bare" --name "$KIND_CLUSTER_NAME"
done

- name: Run Kubernetes E2E (Rust smoke)
Expand Down
9 changes: 7 additions & 2 deletions .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,11 @@ on:
required: false
type: string
default: ""
publish-manifest:
description: "Push the bare-SHA manifest. Set false for single-arch branch workflows."
required: false
type: boolean
default: true

env:
MISE_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand Down Expand Up @@ -181,7 +186,7 @@ jobs:
# inside the container so setup-buildx can read it.
- /etc/buildkit:/etc/buildkit:ro
env:
IMAGE_TAG: ${{ needs.resolve.outputs.platform_count == '1' && needs.resolve.outputs.image_tag_base || format('{0}-{1}', needs.resolve.outputs.image_tag_base, matrix.arch) }}
IMAGE_TAG: ${{ format('{0}-{1}', needs.resolve.outputs.image_tag_base, matrix.arch) }}
IMAGE_REGISTRY: ghcr.io/nvidia/openshell
DOCKER_PUSH: ${{ inputs.push && '1' || '0' }}
DOCKER_PLATFORM: ${{ matrix.platform }}
Expand Down Expand Up @@ -257,7 +262,7 @@ jobs:
merge:
name: Merge ${{ inputs.component }} manifest
needs: [resolve, build]
if: ${{ inputs.push && needs.resolve.outputs.platform_count != '1' }}
if: ${{ inputs.push && inputs['publish-manifest'] }}
runs-on: linux-amd64-cpu8
timeout-minutes: 10
container:
Expand Down
Loading