From c3ffd4c7349db561ed600de8a1d70f3a528c2dee Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Mon, 20 Apr 2026 23:53:45 +0000 Subject: [PATCH 01/12] feat(demo-bundled): add GPU-capable demo cluster image Adds a GPU variant of the demo-bundled image so users with NVIDIA GPUs can run `flyte start demo --image ghcr.io/flyteorg/flyte-demo:gpu-latest` and submit tasks with `Resources(gpu=1)`. - Dockerfile.gpu stages NVIDIA Container Toolkit v1.19.x binaries and their shared libs into the rancher/k3s final image. Libs are copied into /usr/lib// because the nvidia-ctk OCI hook runs without inheriting LD_LIBRARY_PATH. A statically-linked /sbin/ldconfig is also staged (rancher/k3s ships none) because the toolkit's update-ldcache hook bind-mounts it into workload pods. - containerd-config.toml.tmpl sets nvidia as the default containerd runtime. Pods requesting nvidia.com/gpu get GPUs without needing runtimeClassName in their spec; non-GPU pods are unaffected (nvidia-container-runtime is a passthrough when no GPU is requested). - nvidia-device-plugin.yaml installs a RuntimeClass and the NVIDIA k8s-device-plugin DaemonSet so nvidia.com/gpu is advertised on the node. Auto-applied by k3s at startup. - Makefile gains a build-gpu target producing flyte-demo:gpu-latest. - CI gains a build-and-push step publishing gpu-latest, gpu-nightly, and gpu- tags to both flyte-demo and flyte-sandbox-v2. The GPU plumbing was verified end-to-end with a layered test image on an A10G (torch 2.11.0+cu130 reported cuda_available=True). The full multi-stage Dockerfile.gpu has not been built locally; the CI run here is the first end-to-end test of the production Dockerfile and may need fixup iterations. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/flyte-binary-v2.yml | 21 +++ docker/demo-bundled/Dockerfile.gpu | 165 ++++++++++++++++++ docker/demo-bundled/Makefile | 6 + .../demo-bundled/containerd-config.toml.tmpl | 10 ++ docker/demo-bundled/nvidia-device-plugin.yaml | 45 +++++ 5 files changed, 247 insertions(+) create mode 100644 docker/demo-bundled/Dockerfile.gpu create mode 100644 docker/demo-bundled/containerd-config.toml.tmpl create mode 100644 docker/demo-bundled/nvidia-device-plugin.yaml diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index 23d2c70d9b..efb99c226b 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -167,3 +167,24 @@ jobs: tags: ${{ steps.image-names.outputs.tags }} build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} + - name: Prepare GPU Image Names + id: gpu-image-names + uses: docker/metadata-action@v3 + with: + images: | + ghcr.io/${{ github.repository_owner }}/flyte-demo + ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 + tags: | + type=raw,value=gpu-latest,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} + type=raw,value=gpu-nightly,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} + type=sha,format=long,prefix=gpu- + - name: Build and push GPU multi-arch image + uses: docker/build-push-action@v6 + with: + context: docker/demo-bundled + file: docker/demo-bundled/Dockerfile.gpu + allow: "security.insecure" + platforms: linux/arm64, linux/amd64 + tags: ${{ steps.gpu-image-names.outputs.tags }} + build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" + push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} diff --git a/docker/demo-bundled/Dockerfile.gpu b/docker/demo-bundled/Dockerfile.gpu new file mode 100644 index 0000000000..acaa4de582 --- /dev/null +++ b/docker/demo-bundled/Dockerfile.gpu @@ -0,0 +1,165 @@ +# syntax=docker/dockerfile:1.4-labs +FROM --platform=${BUILDPLATFORM} mgoltzsche/podman:minimal AS builder + +ARG TARGETARCH +ENV TARGETARCH "${TARGETARCH}" + +WORKDIR /build + +COPY images/manifest.txt images/preload ./ +RUN --security=insecure ./preload manifest.txt + + +FROM --platform=${BUILDPLATFORM} golang:1.24-bullseye AS bootstrap + +ARG TARGETARCH +ENV CGO_ENABLED 0 +ENV GOARCH "${TARGETARCH}" +ENV GOOS linux + +WORKDIR /flyteorg/build +COPY bootstrap/go.mod bootstrap/go.sum ./ +RUN go mod download +COPY bootstrap/ ./ +RUN --mount=type=cache,target=/root/.cache/go-build --mount=type=cache,target=/root/go/pkg/mod \ + go build -o dist/flyte-demo-bootstrap cmd/bootstrap/main.go && \ + go build -o dist/embedded-postgres cmd/embedded-postgres/main.go + + +# Pre-download PostgreSQL binaries from Maven for the embedded-postgres library. +# The library expects a cached .txz file; we also extract the dynamic linker since +# the K3s base image has no libc. +FROM debian:bookworm-slim AS pg-cache + +ARG TARGETARCH + +RUN apt-get update && apt-get install -y --no-install-recommends curl unzip xz-utils ca-certificates && rm -rf /var/lib/apt/lists/* + +RUN set -ex; \ + ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64v8" || echo "amd64"); \ + PG_VERSION="16.9.0"; \ + CACHE_FILE="embedded-postgres-binaries-linux-${ARCH}-${PG_VERSION}.txz"; \ + mkdir -p /cache /glibc-libs; \ + curl -fL "https://repo1.maven.org/maven2/io/zonky/test/postgres/embedded-postgres-binaries-linux-${ARCH}/${PG_VERSION}/embedded-postgres-binaries-linux-${ARCH}-${PG_VERSION}.jar" -o /tmp/pg.jar; \ + unzip -p /tmp/pg.jar "*.txz" > "/cache/${CACHE_FILE}"; \ + rm -f /tmp/pg.jar; \ + mkdir -p /tmp/pg-tmp && tar xJf "/cache/${CACHE_FILE}" -C /tmp/pg-tmp/; \ + for bin in /tmp/pg-tmp/bin/*; do \ + ldd "$bin" 2>/dev/null | grep "=>" | awk '{print $3}' | while read lib; do \ + [ -f "$lib" ] && cp -n "$lib" /glibc-libs/ 2>/dev/null || true; \ + done; \ + done; \ + cp /lib/ld-linux-aarch64.so.1 /glibc-libs/ 2>/dev/null || true; \ + cp /lib/aarch64-linux-gnu/ld-linux-aarch64.so.1 /glibc-libs/ 2>/dev/null || true; \ + cp /lib64/ld-linux-x86-64.so.2 /glibc-libs/ 2>/dev/null || true; \ + cp /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 /glibc-libs/ 2>/dev/null || true; \ + rm -rf /tmp/pg-tmp + + +# Stage NVIDIA Container Toolkit + libnvidia-container from NVIDIA's apt repo. +# k3s auto-registers a "nvidia" containerd runtime at startup if +# `nvidia-container-runtime` is on PATH in the final image. +FROM debian:bookworm-slim AS nvidia-toolkit + +ARG TARGETARCH + +RUN apt-get update && apt-get install -y --no-install-recommends \ + curl gnupg ca-certificates && \ + rm -rf /var/lib/apt/lists/* + +RUN curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \ + | gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg && \ + curl -fsSL https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list \ + | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' \ + > /etc/apt/sources.list.d/nvidia-container-toolkit.list && \ + apt-get update && \ + apt-get install -y --no-install-recommends \ + nvidia-container-toolkit-base \ + libnvidia-container1 \ + libnvidia-container-tools && \ + rm -rf /var/lib/apt/lists/* + +# Collect binaries, their shared-lib deps, and the dynamic linker so they run +# inside the minimal rancher/k3s image (which has no libc of its own). Also +# stage /sbin/ldconfig — the nvidia-container-runtime OCI hook bind-mounts it +# into workload pods to refresh /etc/ld.so.cache, so it must exist on the node. +RUN set -ex; \ + mkdir -p /nvidia-staging/bin /nvidia-staging/lib /nvidia-staging/sbin; \ + for bin in nvidia-ctk nvidia-container-runtime nvidia-container-runtime.cdi \ + nvidia-container-runtime.legacy nvidia-container-cli; do \ + [ -f "/usr/bin/$bin" ] && cp -a "/usr/bin/$bin" /nvidia-staging/bin/ || true; \ + done; \ + for bin in /nvidia-staging/bin/*; do \ + ldd "$bin" 2>/dev/null | grep "=>" | awk '{print $3}' | while read lib; do \ + [ -f "$lib" ] && cp -n "$lib" /nvidia-staging/lib/ 2>/dev/null || true; \ + done; \ + done; \ + cp /lib64/ld-linux-x86-64.so.2 /nvidia-staging/lib/ 2>/dev/null || true; \ + cp /lib/ld-linux-aarch64.so.1 /nvidia-staging/lib/ 2>/dev/null || true; \ + cp /sbin/ldconfig /nvidia-staging/sbin/ldconfig + + +FROM rancher/k3s:v1.34.6-k3s1 + +ARG TARGETARCH + +ARG FLYTE_DEMO_VERSION +ENV FLYTE_DEMO_VERSION "${FLYTE_DEMO_VERSION}" + +COPY --from=builder /build/images/ /var/lib/rancher/k3s/agent/images/ +COPY images/tar/${TARGETARCH}/ /var/lib/rancher/k3s/agent/images/ +COPY manifests/ /var/lib/rancher/k3s/server/manifests-staging/ +COPY bin/ /bin/ + +# Install bootstrap and embedded postgres +COPY --from=bootstrap /flyteorg/build/dist/flyte-demo-bootstrap /bin/ +COPY --from=bootstrap /flyteorg/build/dist/embedded-postgres /bin/ + +# Install pre-cached PostgreSQL binaries and glibc libraries +COPY --from=pg-cache /cache/ /var/cache/embedded-postgres/ +COPY --from=pg-cache /glibc-libs/ /usr/lib/pg-glibc/ + +# Install NVIDIA Container Toolkit binaries + supporting libs. The libs go +# into a default linker search path (/usr/lib/x86_64-linux-gnu) because the +# nvidia-ctk OCI hook is invoked by containerd without inheriting +# LD_LIBRARY_PATH. The statically-linked ldconfig at /sbin/ldconfig is +# required by the toolkit's update-ldcache hook. +COPY --from=nvidia-toolkit /nvidia-staging/bin/ /usr/bin/ +COPY --from=nvidia-toolkit /nvidia-staging/lib/ /usr/lib/nvidia/ +COPY --from=nvidia-toolkit /nvidia-staging/sbin/ldconfig /sbin/ldconfig +RUN ARCH_TRIPLE=$([ "$(uname -m)" = "aarch64" ] && echo "aarch64-linux-gnu" || echo "x86_64-linux-gnu") && \ + mkdir -p "/usr/lib/${ARCH_TRIPLE}" && \ + cp -a /usr/lib/nvidia/*.so* "/usr/lib/${ARCH_TRIPLE}/" 2>/dev/null || true + +# NVIDIA device-plugin DaemonSet + RuntimeClass (auto-applied by k3s at startup). +COPY nvidia-device-plugin.yaml /var/lib/rancher/k3s/server/manifests/nvidia-device-plugin.yaml + +# k3s reads this template at startup to generate containerd's config. +# Sets nvidia as the default runtime so GPU pods don't need runtimeClassName. +COPY containerd-config.toml.tmpl /var/lib/rancher/k3s/agent/etc/containerd/config.toml.tmpl + +# Create dynamic linker symlinks and add postgres user/group +RUN for f in /usr/lib/pg-glibc/ld-linux-aarch64*; do \ + [ -f "$f" ] && ln -sf "$f" /lib/$(basename "$f"); \ + done 2>/dev/null; \ + for f in /usr/lib/pg-glibc/ld-linux-x86-64*; do \ + [ -f "$f" ] && mkdir -p /lib64 && ln -sf "$f" /lib64/$(basename "$f"); \ + done 2>/dev/null; \ + echo "postgres:x:999:999:PostgreSQL:/tmp:/bin/sh" >> /etc/passwd && \ + echo "postgres:x:999:" >> /etc/group + +# Expose pg-glibc + nvidia libs to the dynamic linker. +ENV LD_LIBRARY_PATH="/usr/lib/pg-glibc:/usr/lib/nvidia" + +# Propagate host GPUs into containers scheduled on this node. These env vars +# are consumed by nvidia-container-runtime. +ENV NVIDIA_VISIBLE_DEVICES=all +ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility + +VOLUME /var/lib/flyte/storage + +# Set environment variable for picking up additional CA certificates +ENV SSL_CERT_DIR /var/lib/flyte/config/ca-certificates + +ENTRYPOINT [ "/bin/k3d-entrypoint.sh" ] +CMD [ "server", "--disable=servicelb", "--disable=metrics-server" ] diff --git a/docker/demo-bundled/Makefile b/docker/demo-bundled/Makefile index 40ae40005a..952390ac73 100644 --- a/docker/demo-bundled/Makefile +++ b/docker/demo-bundled/Makefile @@ -60,6 +60,12 @@ build: sync-crds flyte dep_update manifests docker buildx build --builder flyte-demo --allow security.insecure --load \ --tag flyte-demo:latest . +.PHONY: build-gpu +build-gpu: sync-crds flyte dep_update manifests + docker buildx build --builder flyte-demo --allow security.insecure --load \ + --file Dockerfile.gpu \ + --tag flyte-demo:gpu-latest . + # Port map # 6443 - k8s API server # 30000 - Docker Registry diff --git a/docker/demo-bundled/containerd-config.toml.tmpl b/docker/demo-bundled/containerd-config.toml.tmpl new file mode 100644 index 0000000000..7cda384aa0 --- /dev/null +++ b/docker/demo-bundled/containerd-config.toml.tmpl @@ -0,0 +1,10 @@ +{{ template "base" . }} + +# Override: make the NVIDIA runtime the default. k3s auto-registers a +# `nvidia` runtime at startup when /usr/bin/nvidia-container-runtime is +# present. By switching the default, pods requesting `nvidia.com/gpu` get +# GPU access without needing `runtimeClassName: nvidia` in their spec. +# nvidia-container-runtime is a passthrough when no GPU is requested, so +# non-GPU pods are unaffected. +[plugins.'io.containerd.cri.v1.runtime'.containerd] + default_runtime_name = "nvidia" diff --git a/docker/demo-bundled/nvidia-device-plugin.yaml b/docker/demo-bundled/nvidia-device-plugin.yaml new file mode 100644 index 0000000000..f0bbfcdb01 --- /dev/null +++ b/docker/demo-bundled/nvidia-device-plugin.yaml @@ -0,0 +1,45 @@ +apiVersion: node.k8s.io/v1 +kind: RuntimeClass +metadata: + name: nvidia +handler: nvidia +--- +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: nvidia-device-plugin-daemonset + namespace: kube-system +spec: + selector: + matchLabels: + name: nvidia-device-plugin-ds + updateStrategy: + type: RollingUpdate + template: + metadata: + labels: + name: nvidia-device-plugin-ds + spec: + tolerations: + - key: nvidia.com/gpu + operator: Exists + effect: NoSchedule + priorityClassName: system-node-critical + runtimeClassName: nvidia + containers: + - name: nvidia-device-plugin-ctr + image: nvcr.io/nvidia/k8s-device-plugin:v0.17.0 + env: + - name: FAIL_ON_INIT_ERROR + value: "false" + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: ["ALL"] + volumeMounts: + - name: device-plugin + mountPath: /var/lib/kubelet/device-plugins + volumes: + - name: device-plugin + hostPath: + path: /var/lib/kubelet/device-plugins From 7dee3ac0a1fff134a0e1d495aab83c10d24c89c5 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 00:22:53 +0000 Subject: [PATCH 02/12] Refactor Dockerfile.gpu to layer on the CPU image Removes the duplicated builder/bootstrap/pg-cache stages and final-stage setup by making Dockerfile.gpu a thin layer on top of flyte-demo:latest (parameterized via ARG BASE_IMAGE). CI now builds the CPU image first and passes its sha-tag in as BASE_IMAGE to the GPU build. - Dockerfile.gpu shrinks from ~165 to ~75 lines; inherits flyte-binary, embedded postgres, staging manifests, and k3d entrypoint from the base image unchanged. - Makefile build-gpu target now depends on build (not the full prereq chain) and passes BASE_IMAGE=flyte-demo:latest. - CI gates the GPU build on push/workflow_dispatch since PR builds don't push the CPU image to ghcr.io (nothing to pull for BASE_IMAGE). Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/flyte-binary-v2.yml | 7 +- docker/demo-bundled/Dockerfile.gpu | 119 ++++---------------------- docker/demo-bundled/Makefile | 3 +- 3 files changed, 25 insertions(+), 104 deletions(-) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index efb99c226b..c34ad5a577 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -179,6 +179,7 @@ jobs: type=raw,value=gpu-nightly,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} type=sha,format=long,prefix=gpu- - name: Build and push GPU multi-arch image + if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} uses: docker/build-push-action@v6 with: context: docker/demo-bundled @@ -186,5 +187,7 @@ jobs: allow: "security.insecure" platforms: linux/arm64, linux/amd64 tags: ${{ steps.gpu-image-names.outputs.tags }} - build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" - push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} + build-args: | + FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }} + BASE_IMAGE=ghcr.io/${{ github.repository_owner }}/flyte-demo:sha-${{ github.sha }} + push: true diff --git a/docker/demo-bundled/Dockerfile.gpu b/docker/demo-bundled/Dockerfile.gpu index acaa4de582..eaae887653 100644 --- a/docker/demo-bundled/Dockerfile.gpu +++ b/docker/demo-bundled/Dockerfile.gpu @@ -1,64 +1,17 @@ # syntax=docker/dockerfile:1.4-labs -FROM --platform=${BUILDPLATFORM} mgoltzsche/podman:minimal AS builder +# +# GPU-capable demo cluster image. Layers NVIDIA Container Toolkit + the +# k8s device-plugin on top of the CPU demo image so everything that ships +# in the base (flyte-binary, embedded postgres, auto-apply manifests) is +# inherited verbatim. CI builds the CPU image first and passes its tag in +# via BASE_IMAGE. -ARG TARGETARCH -ENV TARGETARCH "${TARGETARCH}" - -WORKDIR /build - -COPY images/manifest.txt images/preload ./ -RUN --security=insecure ./preload manifest.txt - - -FROM --platform=${BUILDPLATFORM} golang:1.24-bullseye AS bootstrap - -ARG TARGETARCH -ENV CGO_ENABLED 0 -ENV GOARCH "${TARGETARCH}" -ENV GOOS linux - -WORKDIR /flyteorg/build -COPY bootstrap/go.mod bootstrap/go.sum ./ -RUN go mod download -COPY bootstrap/ ./ -RUN --mount=type=cache,target=/root/.cache/go-build --mount=type=cache,target=/root/go/pkg/mod \ - go build -o dist/flyte-demo-bootstrap cmd/bootstrap/main.go && \ - go build -o dist/embedded-postgres cmd/embedded-postgres/main.go - - -# Pre-download PostgreSQL binaries from Maven for the embedded-postgres library. -# The library expects a cached .txz file; we also extract the dynamic linker since -# the K3s base image has no libc. -FROM debian:bookworm-slim AS pg-cache - -ARG TARGETARCH - -RUN apt-get update && apt-get install -y --no-install-recommends curl unzip xz-utils ca-certificates && rm -rf /var/lib/apt/lists/* - -RUN set -ex; \ - ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64v8" || echo "amd64"); \ - PG_VERSION="16.9.0"; \ - CACHE_FILE="embedded-postgres-binaries-linux-${ARCH}-${PG_VERSION}.txz"; \ - mkdir -p /cache /glibc-libs; \ - curl -fL "https://repo1.maven.org/maven2/io/zonky/test/postgres/embedded-postgres-binaries-linux-${ARCH}/${PG_VERSION}/embedded-postgres-binaries-linux-${ARCH}-${PG_VERSION}.jar" -o /tmp/pg.jar; \ - unzip -p /tmp/pg.jar "*.txz" > "/cache/${CACHE_FILE}"; \ - rm -f /tmp/pg.jar; \ - mkdir -p /tmp/pg-tmp && tar xJf "/cache/${CACHE_FILE}" -C /tmp/pg-tmp/; \ - for bin in /tmp/pg-tmp/bin/*; do \ - ldd "$bin" 2>/dev/null | grep "=>" | awk '{print $3}' | while read lib; do \ - [ -f "$lib" ] && cp -n "$lib" /glibc-libs/ 2>/dev/null || true; \ - done; \ - done; \ - cp /lib/ld-linux-aarch64.so.1 /glibc-libs/ 2>/dev/null || true; \ - cp /lib/aarch64-linux-gnu/ld-linux-aarch64.so.1 /glibc-libs/ 2>/dev/null || true; \ - cp /lib64/ld-linux-x86-64.so.2 /glibc-libs/ 2>/dev/null || true; \ - cp /lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 /glibc-libs/ 2>/dev/null || true; \ - rm -rf /tmp/pg-tmp +ARG BASE_IMAGE=ghcr.io/flyteorg/flyte-demo:nightly -# Stage NVIDIA Container Toolkit + libnvidia-container from NVIDIA's apt repo. -# k3s auto-registers a "nvidia" containerd runtime at startup if -# `nvidia-container-runtime` is on PATH in the final image. +# Stage NVIDIA Container Toolkit binaries + supporting libs + ldconfig. +# k3s auto-registers a `nvidia` containerd runtime at startup if +# /usr/bin/nvidia-container-runtime is on PATH in the final image. FROM debian:bookworm-slim AS nvidia-toolkit ARG TARGETARCH @@ -80,9 +33,9 @@ RUN curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey \ rm -rf /var/lib/apt/lists/* # Collect binaries, their shared-lib deps, and the dynamic linker so they run -# inside the minimal rancher/k3s image (which has no libc of its own). Also -# stage /sbin/ldconfig — the nvidia-container-runtime OCI hook bind-mounts it -# into workload pods to refresh /etc/ld.so.cache, so it must exist on the node. +# inside the minimal rancher/k3s base (no libc of its own). Also stage +# /sbin/ldconfig — the toolkit's update-ldcache OCI hook bind-mounts it +# into workload pods. RUN set -ex; \ mkdir -p /nvidia-staging/bin /nvidia-staging/lib /nvidia-staging/sbin; \ for bin in nvidia-ctk nvidia-container-runtime nvidia-container-runtime.cdi \ @@ -99,31 +52,12 @@ RUN set -ex; \ cp /sbin/ldconfig /nvidia-staging/sbin/ldconfig -FROM rancher/k3s:v1.34.6-k3s1 - -ARG TARGETARCH - -ARG FLYTE_DEMO_VERSION -ENV FLYTE_DEMO_VERSION "${FLYTE_DEMO_VERSION}" - -COPY --from=builder /build/images/ /var/lib/rancher/k3s/agent/images/ -COPY images/tar/${TARGETARCH}/ /var/lib/rancher/k3s/agent/images/ -COPY manifests/ /var/lib/rancher/k3s/server/manifests-staging/ -COPY bin/ /bin/ - -# Install bootstrap and embedded postgres -COPY --from=bootstrap /flyteorg/build/dist/flyte-demo-bootstrap /bin/ -COPY --from=bootstrap /flyteorg/build/dist/embedded-postgres /bin/ - -# Install pre-cached PostgreSQL binaries and glibc libraries -COPY --from=pg-cache /cache/ /var/cache/embedded-postgres/ -COPY --from=pg-cache /glibc-libs/ /usr/lib/pg-glibc/ +FROM ${BASE_IMAGE} # Install NVIDIA Container Toolkit binaries + supporting libs. The libs go -# into a default linker search path (/usr/lib/x86_64-linux-gnu) because the +# into a default linker search path (/usr/lib//) because the # nvidia-ctk OCI hook is invoked by containerd without inheriting -# LD_LIBRARY_PATH. The statically-linked ldconfig at /sbin/ldconfig is -# required by the toolkit's update-ldcache hook. +# LD_LIBRARY_PATH. COPY --from=nvidia-toolkit /nvidia-staging/bin/ /usr/bin/ COPY --from=nvidia-toolkit /nvidia-staging/lib/ /usr/lib/nvidia/ COPY --from=nvidia-toolkit /nvidia-staging/sbin/ldconfig /sbin/ldconfig @@ -138,28 +72,11 @@ COPY nvidia-device-plugin.yaml /var/lib/rancher/k3s/server/manifests/nvidia-devi # Sets nvidia as the default runtime so GPU pods don't need runtimeClassName. COPY containerd-config.toml.tmpl /var/lib/rancher/k3s/agent/etc/containerd/config.toml.tmpl -# Create dynamic linker symlinks and add postgres user/group -RUN for f in /usr/lib/pg-glibc/ld-linux-aarch64*; do \ - [ -f "$f" ] && ln -sf "$f" /lib/$(basename "$f"); \ - done 2>/dev/null; \ - for f in /usr/lib/pg-glibc/ld-linux-x86-64*; do \ - [ -f "$f" ] && mkdir -p /lib64 && ln -sf "$f" /lib64/$(basename "$f"); \ - done 2>/dev/null; \ - echo "postgres:x:999:999:PostgreSQL:/tmp:/bin/sh" >> /etc/passwd && \ - echo "postgres:x:999:" >> /etc/group - -# Expose pg-glibc + nvidia libs to the dynamic linker. +# Append nvidia libs to the base image's LD_LIBRARY_PATH (which already +# includes /usr/lib/pg-glibc for embedded postgres). ENV LD_LIBRARY_PATH="/usr/lib/pg-glibc:/usr/lib/nvidia" # Propagate host GPUs into containers scheduled on this node. These env vars # are consumed by nvidia-container-runtime. ENV NVIDIA_VISIBLE_DEVICES=all ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility - -VOLUME /var/lib/flyte/storage - -# Set environment variable for picking up additional CA certificates -ENV SSL_CERT_DIR /var/lib/flyte/config/ca-certificates - -ENTRYPOINT [ "/bin/k3d-entrypoint.sh" ] -CMD [ "server", "--disable=servicelb", "--disable=metrics-server" ] diff --git a/docker/demo-bundled/Makefile b/docker/demo-bundled/Makefile index 952390ac73..a1cd662907 100644 --- a/docker/demo-bundled/Makefile +++ b/docker/demo-bundled/Makefile @@ -61,9 +61,10 @@ build: sync-crds flyte dep_update manifests --tag flyte-demo:latest . .PHONY: build-gpu -build-gpu: sync-crds flyte dep_update manifests +build-gpu: build docker buildx build --builder flyte-demo --allow security.insecure --load \ --file Dockerfile.gpu \ + --build-arg BASE_IMAGE=flyte-demo:latest \ --tag flyte-demo:gpu-latest . # Port map From c0c552e33fd57fe08194521e6b813e1963efd5a6 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 00:30:50 +0000 Subject: [PATCH 03/12] ci: match GPU build step's push condition to CPU step Drops the `if:` gate and conditions `push:` on the same expression the CPU build uses, so both steps always build and only push on v2-branch pushes or workflow_dispatch. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/flyte-binary-v2.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index c34ad5a577..ae5a186ad0 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -179,7 +179,6 @@ jobs: type=raw,value=gpu-nightly,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} type=sha,format=long,prefix=gpu- - name: Build and push GPU multi-arch image - if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} uses: docker/build-push-action@v6 with: context: docker/demo-bundled @@ -190,4 +189,4 @@ jobs: build-args: | FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }} BASE_IMAGE=ghcr.io/${{ github.repository_owner }}/flyte-demo:sha-${{ github.sha }} - push: true + push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} From 7252dc2b9856d9efddc63f95d99567eb0506e1d2 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 07:54:27 +0000 Subject: [PATCH 04/12] ci: hand CPU image to GPU build via OCI archive On pull_request events the CPU build step runs with push=false, so the GPU build's FROM ghcr.io/.../flyte-demo:sha- fails to resolve (image not found in the registry). Fix by producing an OCI archive of the CPU image locally and passing it to the GPU build as a named build context (build-contexts: base=oci-layout://...) with BASE_IMAGE=base. Registry push happens in a separate step that only runs on push / workflow_dispatch, so PR builds no longer need ghcr credentials for the GPU step. --- .github/workflows/flyte-binary-v2.yml | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index ae5a186ad0..75aca89679 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -158,7 +158,24 @@ jobs: registry: ghcr.io username: "${{ secrets.FLYTE_BOT_USERNAME }}" password: "${{ secrets.FLYTE_BOT_PAT }}" - - name: Build and push multi-arch image + - name: Build CPU multi-arch image to OCI archive + # Produce an OCI archive locally so the GPU build below can use it as a + # named build context. This avoids the PR-gated push chicken-and-egg: + # on pull_request events we don't push to ghcr, so the GPU build can't + # resolve a ghcr-hosted FROM. + uses: docker/build-push-action@v6 + with: + context: docker/demo-bundled + allow: "security.insecure" + platforms: linux/arm64, linux/amd64 + build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" + outputs: type=oci,dest=/tmp/cpu-oci.tar + - name: Extract CPU OCI layout for GPU build + run: | + mkdir -p /tmp/cpu-oci + tar -xf /tmp/cpu-oci.tar -C /tmp/cpu-oci + - name: Push CPU multi-arch image + if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} uses: docker/build-push-action@v6 with: context: docker/demo-bundled @@ -166,7 +183,7 @@ jobs: platforms: linux/arm64, linux/amd64 tags: ${{ steps.image-names.outputs.tags }} build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" - push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} + push: true - name: Prepare GPU Image Names id: gpu-image-names uses: docker/metadata-action@v3 @@ -183,10 +200,13 @@ jobs: with: context: docker/demo-bundled file: docker/demo-bundled/Dockerfile.gpu + # Point Dockerfile.gpu's `FROM ${BASE_IMAGE}` at the OCI archive + # produced above — no registry round-trip needed. + build-contexts: base=oci-layout:///tmp/cpu-oci allow: "security.insecure" platforms: linux/arm64, linux/amd64 tags: ${{ steps.gpu-image-names.outputs.tags }} build-args: | FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }} - BASE_IMAGE=ghcr.io/${{ github.repository_owner }}/flyte-demo:sha-${{ github.sha }} + BASE_IMAGE=base push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} From 2885f57b5ccef695890bd82295f578b9c6027795 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 08:01:35 +0000 Subject: [PATCH 05/12] ci: cache docker layers for demo-bundled builds Add GHA cache (type=gha) to the three docker/build-push-action steps in build-and-push-demo-bundled-image. CPU archive and CPU push share the demo-cpu scope so the push reuses layers from the archive build; GPU gets its own demo-gpu scope. --- .github/workflows/flyte-binary-v2.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index 75aca89679..fbdea50bc2 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -170,6 +170,8 @@ jobs: platforms: linux/arm64, linux/amd64 build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" outputs: type=oci,dest=/tmp/cpu-oci.tar + cache-from: type=gha,scope=demo-cpu + cache-to: type=gha,mode=max,scope=demo-cpu - name: Extract CPU OCI layout for GPU build run: | mkdir -p /tmp/cpu-oci @@ -184,6 +186,7 @@ jobs: tags: ${{ steps.image-names.outputs.tags }} build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" push: true + cache-from: type=gha,scope=demo-cpu - name: Prepare GPU Image Names id: gpu-image-names uses: docker/metadata-action@v3 @@ -210,3 +213,5 @@ jobs: FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }} BASE_IMAGE=base push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} + cache-from: type=gha,scope=demo-gpu + cache-to: type=gha,mode=max,scope=demo-gpu From 65d5095e37468bb7d755c89f019919eb8b357b4e Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 01:29:51 -0700 Subject: [PATCH 06/12] Bump Dockerfile.gpu syntax to 1.7-labs for oci-layout build context The oci-layout:// build-context source requires Dockerfile frontend 1.5+. CI was failing with 'unsupported context source oci-layout for base'. Signed-off-by: Kevin Su --- docker/demo-bundled/Dockerfile.gpu | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/demo-bundled/Dockerfile.gpu b/docker/demo-bundled/Dockerfile.gpu index eaae887653..a6bba98fd7 100644 --- a/docker/demo-bundled/Dockerfile.gpu +++ b/docker/demo-bundled/Dockerfile.gpu @@ -1,4 +1,4 @@ -# syntax=docker/dockerfile:1.4-labs +# syntax=docker/dockerfile:1.7-labs # # GPU-capable demo cluster image. Layers NVIDIA Container Toolkit + the # k8s device-plugin on top of the CPU demo image so everything that ships From 44b1825d1d26bb35ef891481d89d166e5de8936d Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 10:17:42 -0700 Subject: [PATCH 07/12] Rename flyte-demo to flyte-devbox Rename all references of flyte-demo to flyte-devbox and demo-bundled to devbox-bundled across Helm charts, Docker files, Makefiles, CI workflows, Go source, and Kubernetes manifests. Signed-off-by: Kevin Su --- .github/workflows/flyte-binary-v2.yml | 40 +++--- .gitignore | 2 +- Makefile | 28 ++-- charts/flyte-binary/Makefile | 2 +- charts/flyte-binary/values.yaml | 2 +- .../{flyte-demo => flyte-devbox}/.helmignore | 0 .../{flyte-demo => flyte-devbox}/Chart.lock | 0 .../{flyte-demo => flyte-devbox}/Chart.yaml | 2 +- charts/{flyte-demo => flyte-devbox}/README.md | 10 +- .../templates/NOTES.txt | 0 .../templates/_helpers.tpl | 34 ++--- ...er-resource-template-inline-configmap.yaml | 2 +- .../configuration-inline-configmap.yaml | 2 +- .../templates/console/deployment.yaml | 6 +- .../templates/console/service.yaml | 4 +- .../templates/local/endpoint.yaml | 4 +- .../templates/local/service.yaml | 4 +- .../templates/proxy/ingress.yaml | 8 +- .../templates/proxy/traefik-config.yaml | 2 +- .../templates/storage/rustfs/deployment.yaml | 4 +- .../templates/storage/rustfs/pv.yaml | 4 +- .../templates/storage/rustfs/pvc.yaml | 6 +- .../templates/storage/rustfs/secret.yaml | 2 +- .../templates/storage/rustfs/service.yaml | 2 +- .../{flyte-demo => flyte-devbox}/values.yaml | 6 +- .../.gitignore | 0 .../Dockerfile | 8 +- .../Dockerfile.gpu | 2 +- .../{demo-bundled => devbox-bundled}/Makefile | 40 +++--- .../bin/k3d-entrypoint-cgroupv2.sh | 0 .../k3d-entrypoint-flyte-devbox-bootstrap.sh} | 6 +- .../bin/k3d-entrypoint.sh | 0 .../bootstrap/Makefile | 0 .../bootstrap/cmd/bootstrap/main.go | 8 +- .../bootstrap/cmd/bootstrap/main_test.go | 0 .../bootstrap/cmd/embedded-postgres/main.go | 0 .../cmd/embedded-postgres/main_test.go | 0 .../bootstrap/go.mod | 2 +- .../bootstrap/go.sum | 0 .../config/cluster_resource_templates.go | 2 +- .../transform/plugins/config/configuration.go | 2 +- .../transform/plugins/config/loader.go | 0 .../transform/plugins/config/loader_test.go | 2 +- .../plugins/config/testdata/base.yaml | 0 .../plugins/config/testdata/emptydir/.keep | 0 .../cluster-resource-templates/resource.yaml | 0 .../config/testdata/emptyfile/config.yaml | 0 .../cluster-resource-templates/resource.yaml | 0 .../plugins/config/testdata/happy/config.yaml | 0 .../internal/transform/plugins/vars/vars.go | 0 .../transform/plugins/vars/vars_test.go | 0 .../internal/transform/transformer.go | 0 .../internal/transform/transformer_test.go | 0 .../bootstrap/internal/utils/checksum.go | 0 .../bootstrap/internal/utils/checksum_test.go | 0 .../bootstrap/internal/utils/patch.go | 0 .../bootstrap/internal/utils/patch_test.go | 0 .../bootstrap/internal/utils/testdata/bar | 0 .../bootstrap/internal/utils/testdata/foo | 0 .../containerd-config.toml.tmpl | 0 .../images/manifest.txt | 0 .../images/preload | 0 .../kustomize/complete/kustomization.yaml | 4 +- .../kustomize/dev/kustomization.yaml | 4 +- .../kustomize/embedded-postgres-service.yaml | 0 .../kustomize/minio-patch.yaml | 0 .../kustomize/namespace.yaml | 0 .../manifests/complete.yaml | 134 +++++++++--------- .../manifests/dev.yaml | 124 ++++++++-------- .../nvidia-device-plugin.yaml | 0 manager/config.yaml | 4 +- secret/config/config.go | 2 +- 72 files changed, 260 insertions(+), 260 deletions(-) rename charts/{flyte-demo => flyte-devbox}/.helmignore (100%) rename charts/{flyte-demo => flyte-devbox}/Chart.lock (100%) rename charts/{flyte-demo => flyte-devbox}/Chart.yaml (98%) rename charts/{flyte-demo => flyte-devbox}/README.md (96%) rename charts/{flyte-demo => flyte-devbox}/templates/NOTES.txt (100%) rename charts/{flyte-demo => flyte-devbox}/templates/_helpers.tpl (71%) rename charts/{flyte-demo => flyte-devbox}/templates/config/cluster-resource-template-inline-configmap.yaml (65%) rename charts/{flyte-demo => flyte-devbox}/templates/config/configuration-inline-configmap.yaml (68%) rename charts/{flyte-demo => flyte-devbox}/templates/console/deployment.yaml (79%) rename charts/{flyte-demo => flyte-devbox}/templates/console/service.yaml (64%) rename charts/{flyte-demo => flyte-devbox}/templates/local/endpoint.yaml (77%) rename charts/{flyte-demo => flyte-devbox}/templates/local/service.yaml (74%) rename charts/{flyte-demo => flyte-devbox}/templates/proxy/ingress.yaml (84%) rename charts/{flyte-demo => flyte-devbox}/templates/proxy/traefik-config.yaml (84%) rename charts/{flyte-demo => flyte-devbox}/templates/storage/rustfs/deployment.yaml (93%) rename charts/{flyte-demo => flyte-devbox}/templates/storage/rustfs/pv.yaml (70%) rename charts/{flyte-demo => flyte-devbox}/templates/storage/rustfs/pvc.yaml (57%) rename charts/{flyte-demo => flyte-devbox}/templates/storage/rustfs/secret.yaml (84%) rename charts/{flyte-demo => flyte-devbox}/templates/storage/rustfs/service.yaml (86%) rename charts/{flyte-demo => flyte-devbox}/values.yaml (93%) rename docker/{demo-bundled => devbox-bundled}/.gitignore (100%) rename docker/{demo-bundled => devbox-bundled}/Dockerfile (94%) rename docker/{demo-bundled => devbox-bundled}/Dockerfile.gpu (98%) rename docker/{demo-bundled => devbox-bundled}/Makefile (70%) rename docker/{demo-bundled => devbox-bundled}/bin/k3d-entrypoint-cgroupv2.sh (100%) rename docker/{demo-bundled/bin/k3d-entrypoint-flyte-demo-bootstrap.sh => devbox-bundled/bin/k3d-entrypoint-flyte-devbox-bootstrap.sh} (86%) rename docker/{demo-bundled => devbox-bundled}/bin/k3d-entrypoint.sh (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/Makefile (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/cmd/bootstrap/main.go (90%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/cmd/bootstrap/main_test.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/cmd/embedded-postgres/main.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/cmd/embedded-postgres/main_test.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/go.mod (97%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/go.sum (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go (97%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/configuration.go (96%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/loader.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/loader_test.go (97%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/testdata/base.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/testdata/emptydir/.keep (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/testdata/emptyfile/cluster-resource-templates/resource.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/testdata/emptyfile/config.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/testdata/happy/cluster-resource-templates/resource.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/config/testdata/happy/config.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/vars/vars.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/plugins/vars/vars_test.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/transformer.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/transform/transformer_test.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/utils/checksum.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/utils/checksum_test.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/utils/patch.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/utils/patch_test.go (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/utils/testdata/bar (100%) rename docker/{demo-bundled => devbox-bundled}/bootstrap/internal/utils/testdata/foo (100%) rename docker/{demo-bundled => devbox-bundled}/containerd-config.toml.tmpl (100%) rename docker/{demo-bundled => devbox-bundled}/images/manifest.txt (100%) rename docker/{demo-bundled => devbox-bundled}/images/preload (100%) rename docker/{demo-bundled => devbox-bundled}/kustomize/complete/kustomization.yaml (93%) rename docker/{demo-bundled => devbox-bundled}/kustomize/dev/kustomization.yaml (91%) rename docker/{demo-bundled => devbox-bundled}/kustomize/embedded-postgres-service.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/kustomize/minio-patch.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/kustomize/namespace.yaml (100%) rename docker/{demo-bundled => devbox-bundled}/manifests/complete.yaml (91%) rename docker/{demo-bundled => devbox-bundled}/manifests/dev.yaml (89%) rename docker/{demo-bundled => devbox-bundled}/nvidia-device-plugin.yaml (100%) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index fbdea50bc2..f18149b4a5 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -24,13 +24,13 @@ jobs: - name: golangci-lint uses: golangci/golangci-lint-action@v3 with: - working-directory: docker/demo-bundled/bootstrap + working-directory: docker/devbox-bundled/bootstrap - name: Check formatting - working-directory: docker/demo-bundled/bootstrap + working-directory: docker/devbox-bundled/bootstrap run: | make check-fmt - name: Test - working-directory: docker/demo-bundled/bootstrap + working-directory: docker/devbox-bundled/bootstrap run: | make test @@ -70,7 +70,7 @@ jobs: uses: docker/setup-buildx-action@v2 - name: Setup destination directories for image tarballs run: | - mkdir -p docker/demo-bundled/images/tar/{arm64,amd64} + mkdir -p docker/devbox-bundled/images/tar/{arm64,amd64} - name: Export ARM64 Image uses: docker/build-push-action@v6 with: @@ -81,7 +81,7 @@ jobs: FLYTECONSOLE_VERSION=${{ env.FLYTECONSOLE_VERSION }} FLYTE_VERSION=${{ env.FLYTE_VERSION }} file: Dockerfile - outputs: type=docker,dest=docker/demo-bundled/images/tar/arm64/flyte-binary.tar + outputs: type=docker,dest=docker/devbox-bundled/images/tar/arm64/flyte-binary.tar - name: Export AMD64 Image uses: docker/build-push-action@v6 with: @@ -92,12 +92,12 @@ jobs: FLYTECONSOLE_VERSION=${{ env.FLYTECONSOLE_VERSION }} FLYTE_VERSION=${{ env.FLYTE_VERSION }} file: Dockerfile - outputs: type=docker,dest=docker/demo-bundled/images/tar/amd64/flyte-binary.tar + outputs: type=docker,dest=docker/devbox-bundled/images/tar/amd64/flyte-binary.tar - name: Upload single binary image uses: actions/upload-artifact@v4 with: name: single-binary-image - path: docker/demo-bundled/images/tar + path: docker/devbox-bundled/images/tar - name: Login to GitHub Container Registry if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} uses: docker/login-action@v2 @@ -118,7 +118,7 @@ jobs: file: Dockerfile push: true - build-and-push-demo-bundled-image: + build-and-push-devbox-bundled-image: runs-on: ubuntu-latest needs: [build-and-push-single-binary-image] steps: @@ -127,7 +127,7 @@ jobs: - uses: actions/download-artifact@v4 with: name: single-binary-image - path: docker/demo-bundled/images/tar + path: docker/devbox-bundled/images/tar - name: Set up QEMU uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx @@ -138,15 +138,15 @@ jobs: - name: Set version id: set_version run: | - echo "FLYTE_DEMO_VERSION=${{ github.sha }}" >> $GITHUB_ENV + echo "FLYTE_DEVBOX_VERSION=${{ github.sha }}" >> $GITHUB_ENV - name: Prepare Image Names id: image-names uses: docker/metadata-action@v3 with: - # Push to both flyte-demo and flyte-sandbox-v2 (legacy name) + # Push to both flyte-devbox and flyte-sandbox-v2 (legacy name) # so existing users pulling the old image continue to work. images: | - ghcr.io/${{ github.repository_owner }}/flyte-demo + ghcr.io/${{ github.repository_owner }}/flyte-devbox ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 tags: | type=raw,value=nightly,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} @@ -165,10 +165,10 @@ jobs: # resolve a ghcr-hosted FROM. uses: docker/build-push-action@v6 with: - context: docker/demo-bundled + context: docker/devbox-bundled allow: "security.insecure" platforms: linux/arm64, linux/amd64 - build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" + build-args: "FLYTE_DEVBOX_VERSION=${{ env.FLYTE_DEVBOX_VERSION }}" outputs: type=oci,dest=/tmp/cpu-oci.tar cache-from: type=gha,scope=demo-cpu cache-to: type=gha,mode=max,scope=demo-cpu @@ -180,11 +180,11 @@ jobs: if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} uses: docker/build-push-action@v6 with: - context: docker/demo-bundled + context: docker/devbox-bundled allow: "security.insecure" platforms: linux/arm64, linux/amd64 tags: ${{ steps.image-names.outputs.tags }} - build-args: "FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }}" + build-args: "FLYTE_DEVBOX_VERSION=${{ env.FLYTE_DEVBOX_VERSION }}" push: true cache-from: type=gha,scope=demo-cpu - name: Prepare GPU Image Names @@ -192,7 +192,7 @@ jobs: uses: docker/metadata-action@v3 with: images: | - ghcr.io/${{ github.repository_owner }}/flyte-demo + ghcr.io/${{ github.repository_owner }}/flyte-devbox ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 tags: | type=raw,value=gpu-latest,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} @@ -201,8 +201,8 @@ jobs: - name: Build and push GPU multi-arch image uses: docker/build-push-action@v6 with: - context: docker/demo-bundled - file: docker/demo-bundled/Dockerfile.gpu + context: docker/devbox-bundled + file: docker/devbox-bundled/Dockerfile.gpu # Point Dockerfile.gpu's `FROM ${BASE_IMAGE}` at the OCI archive # produced above — no registry round-trip needed. build-contexts: base=oci-layout:///tmp/cpu-oci @@ -210,7 +210,7 @@ jobs: platforms: linux/arm64, linux/amd64 tags: ${{ steps.gpu-image-names.outputs.tags }} build-args: | - FLYTE_DEMO_VERSION=${{ env.FLYTE_DEMO_VERSION }} + FLYTE_DEVBOX_VERSION=${{ env.FLYTE_DEVBOX_VERSION }} BASE_IMAGE=base push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} cache-from: type=gha,scope=demo-gpu diff --git a/.gitignore b/.gitignore index fcc4f70a57..921e6f3b4e 100644 --- a/.gitignore +++ b/.gitignore @@ -28,7 +28,7 @@ dist/ dist *.db vendor/ -/docker/demo-bundled/images/tar +/docker/devbox-bundled/images/tar **/bin/ docs/_tags/ docs/api/flytectl diff --git a/Makefile b/Makefile index 43d616fd9b..b983a494d8 100644 --- a/Makefile +++ b/Makefile @@ -36,33 +36,33 @@ build: verify ## Build all Go service binaries # ============================================================================= .PHONY: sandbox-build -sandbox-build: ## Build and start the flyte sandbox (docker/demo-bundled) - $(MAKE) -C docker/demo-bundled build +sandbox-build: ## Build and start the flyte sandbox (docker/devbox-bundled) + $(MAKE) -C docker/devbox-bundled build # Run in dev mode with extra arg FLYTE_DEV=True .PHONY: sandbox-run sandbox-run: ## Start the flyte sandbox without rebuilding the image - $(MAKE) -C docker/demo-bundled start + $(MAKE) -C docker/devbox-bundled start .PHONY: sandbox-stop sandbox-stop: ## Stop the flyte sandbox - $(MAKE) -C docker/demo-bundled stop + $(MAKE) -C docker/devbox-bundled stop # ============================================================================= -# Demo Commands +# Devbox Commands # ============================================================================= -.PHONY: demo-build -demo-build: ## Build and start the flyte demo cluster (docker/demo-bundled) - $(MAKE) -C docker/demo-bundled build +.PHONY: devbox-build +devbox-build: ## Build and start the flyte devbox cluster (docker/devbox-bundled) + $(MAKE) -C docker/devbox-bundled build -.PHONY: demo-run -demo-run: ## Start the flyte demo cluster without rebuilding the image - $(MAKE) -C docker/demo-bundled start +.PHONY: devbox-run +devbox-run: ## Start the flyte devbox cluster without rebuilding the image + $(MAKE) -C docker/devbox-bundled start -.PHONY: demo-stop -demo-stop: ## Stop the flyte demo cluster - $(MAKE) -C docker/demo-bundled stop +.PHONY: devbox-stop +devbox-stop: ## Stop the flyte devbox cluster + $(MAKE) -C docker/devbox-bundled stop .PHONY: help help: ## Show this help message diff --git a/charts/flyte-binary/Makefile b/charts/flyte-binary/Makefile index 6bb7256cc2..381fcca4b6 100644 --- a/charts/flyte-binary/Makefile +++ b/charts/flyte-binary/Makefile @@ -14,4 +14,4 @@ helm: cleanhelm .PHONY: demohelm demohelm: cleandemo - helm template flytedemo ./ -f flytectldemo.yaml -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(DEMO_GENERATED_FILE) + helm template flytedevbox ./ -f flytectldemo.yaml -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(DEMO_GENERATED_FILE) diff --git a/charts/flyte-binary/values.yaml b/charts/flyte-binary/values.yaml index 93782f4e31..a9e8617723 100644 --- a/charts/flyte-binary/values.yaml +++ b/charts/flyte-binary/values.yaml @@ -59,7 +59,7 @@ flyte-core-components: secret: kubernetes: namespace: "flyte" - clusterName: "flyte-demo" + clusterName: "flyte-devbox" kubeconfig: "" qps: 100 burst: 200 diff --git a/charts/flyte-demo/.helmignore b/charts/flyte-devbox/.helmignore similarity index 100% rename from charts/flyte-demo/.helmignore rename to charts/flyte-devbox/.helmignore diff --git a/charts/flyte-demo/Chart.lock b/charts/flyte-devbox/Chart.lock similarity index 100% rename from charts/flyte-demo/Chart.lock rename to charts/flyte-devbox/Chart.lock diff --git a/charts/flyte-demo/Chart.yaml b/charts/flyte-devbox/Chart.yaml similarity index 98% rename from charts/flyte-demo/Chart.yaml rename to charts/flyte-devbox/Chart.yaml index e0abd2dc7c..262b044a79 100644 --- a/charts/flyte-demo/Chart.yaml +++ b/charts/flyte-devbox/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v2 -name: flyte-demo +name: flyte-devbox description: A Helm chart for the Flyte local demo cluster # A chart can be either an 'application' or a 'library' chart. diff --git a/charts/flyte-demo/README.md b/charts/flyte-devbox/README.md similarity index 96% rename from charts/flyte-demo/README.md rename to charts/flyte-devbox/README.md index 5d9fef8c1c..d7aa657160 100644 --- a/charts/flyte-demo/README.md +++ b/charts/flyte-devbox/README.md @@ -1,4 +1,4 @@ -# flyte-demo +# flyte-devbox ![Version: 0.1.0](https://img.shields.io/badge/Version-0.1.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.16.1](https://img.shields.io/badge/AppVersion-1.16.1-informational?style=flat-square) @@ -24,7 +24,7 @@ A Helm chart for the Flyte local demo cluster | docker-registry.secrets.haSharedSecret | string | `"flytesandboxsecret"` | | | docker-registry.service.nodePort | int | `30000` | | | docker-registry.service.type | string | `"NodePort"` | | -| flyte-binary.clusterResourceTemplates.inlineConfigMap | string | `"{{ include \"flyte-demo.clusterResourceTemplates.inlineConfigMap\" . }}"` | | +| flyte-binary.clusterResourceTemplates.inlineConfigMap | string | `"{{ include \"flyte-devbox.clusterResourceTemplates.inlineConfigMap\" . }}"` | | | flyte-binary.configuration.database.host | string | `"postgresql"` | | | flyte-binary.configuration.database.password | string | `"postgres"` | | | flyte-binary.configuration.inline.plugins.k8s.default-env-vars[0].FLYTE_AWS_ENDPOINT | string | `"http://minio.{{ .Release.Namespace }}:9000"` | | @@ -47,7 +47,7 @@ A Helm chart for the Flyte local demo cluster | flyte-binary.configuration.inline.task_resources.limits.ephemeralStorage | int | `0` | | | flyte-binary.configuration.inline.task_resources.limits.gpu | int | `0` | | | flyte-binary.configuration.inline.task_resources.limits.memory | int | `0` | | -| flyte-binary.configuration.inlineConfigMap | string | `"{{ include \"flyte-demo.configuration.inlineConfigMap\" . }}"` | | +| flyte-binary.configuration.inlineConfigMap | string | `"{{ include \"flyte-devbox.configuration.inlineConfigMap\" . }}"` | | | flyte-binary.configuration.logging.level | int | `5` | | | flyte-binary.configuration.storage.metadataContainer | string | `"flyte-data"` | | | flyte-binary.configuration.storage.provider | string | `"s3"` | | @@ -88,7 +88,7 @@ A Helm chart for the Flyte local demo cluster | minio.image.pullPolicy | string | `"Never"` | | | minio.image.tag | string | `"sandbox"` | | | minio.persistence.enabled | bool | `true` | | -| minio.persistence.existingClaim | string | `"{{ include \"flyte-demo.persistence.minioVolumeName\" . }}"` | | +| minio.persistence.existingClaim | string | `"{{ include \"flyte-devbox.persistence.minioVolumeName\" . }}"` | | | minio.service.nodePorts.api | int | `30002` | | | minio.service.type | string | `"NodePort"` | | | minio.volumePermissions.enabled | bool | `true` | | @@ -100,7 +100,7 @@ A Helm chart for the Flyte local demo cluster | postgresql.image.pullPolicy | string | `"Never"` | | | postgresql.image.tag | string | `"sandbox"` | | | postgresql.primary.persistence.enabled | bool | `true` | | -| postgresql.primary.persistence.existingClaim | string | `"{{ include \"flyte-demo.persistence.dbVolumeName\" . }}"` | | +| postgresql.primary.persistence.existingClaim | string | `"{{ include \"flyte-devbox.persistence.dbVolumeName\" . }}"` | | | postgresql.primary.service.nodePorts.postgresql | int | `30001` | | | postgresql.primary.service.type | string | `"NodePort"` | | | postgresql.shmVolume.enabled | bool | `false` | | diff --git a/charts/flyte-demo/templates/NOTES.txt b/charts/flyte-devbox/templates/NOTES.txt similarity index 100% rename from charts/flyte-demo/templates/NOTES.txt rename to charts/flyte-devbox/templates/NOTES.txt diff --git a/charts/flyte-demo/templates/_helpers.tpl b/charts/flyte-devbox/templates/_helpers.tpl similarity index 71% rename from charts/flyte-demo/templates/_helpers.tpl rename to charts/flyte-devbox/templates/_helpers.tpl index ccc359bd18..ebc02a2fc3 100644 --- a/charts/flyte-demo/templates/_helpers.tpl +++ b/charts/flyte-devbox/templates/_helpers.tpl @@ -1,7 +1,7 @@ {{/* Expand the name of the chart. */}} -{{- define "flyte-demo.name" -}} +{{- define "flyte-devbox.name" -}} {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} {{- end }} @@ -10,7 +10,7 @@ Create a default fully qualified app name. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). If release name contains chart name it will be used as a full name. */}} -{{- define "flyte-demo.fullname" -}} +{{- define "flyte-devbox.fullname" -}} {{- if .Values.fullnameOverride }} {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} {{- else }} @@ -26,16 +26,16 @@ If release name contains chart name it will be used as a full name. {{/* Create chart name and version as used by the chart label. */}} -{{- define "flyte-demo.chart" -}} +{{- define "flyte-devbox.chart" -}} {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} {{- end }} {{/* Common labels */}} -{{- define "flyte-demo.labels" -}} -helm.sh/chart: {{ include "flyte-demo.chart" . }} -{{ include "flyte-demo.selectorLabels" . }} +{{- define "flyte-devbox.labels" -}} +helm.sh/chart: {{ include "flyte-devbox.chart" . }} +{{ include "flyte-devbox.selectorLabels" . }} {{- if .Chart.AppVersion }} app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} {{- end }} @@ -45,17 +45,17 @@ app.kubernetes.io/managed-by: {{ .Release.Service }} {{/* Selector labels */}} -{{- define "flyte-demo.selectorLabels" -}} -app.kubernetes.io/name: {{ include "flyte-demo.name" . }} +{{- define "flyte-devbox.selectorLabels" -}} +app.kubernetes.io/name: {{ include "flyte-devbox.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{/* Create the name of the service account to use */}} -{{- define "flyte-demo.serviceAccountName" -}} +{{- define "flyte-devbox.serviceAccountName" -}} {{- if .Values.serviceAccount.create }} -{{- default (include "flyte-demo.fullname" .) .Values.serviceAccount.name }} +{{- default (include "flyte-devbox.fullname" .) .Values.serviceAccount.name }} {{- else }} {{- default "default" .Values.serviceAccount.name }} {{- end }} @@ -64,28 +64,28 @@ Create the name of the service account to use {{/* Name of inline ConfigMap containing additional configuration or overrides for Flyte */}} -{{- define "flyte-demo.configuration.inlineConfigMap" -}} +{{- define "flyte-devbox.configuration.inlineConfigMap" -}} {{- printf "%s-extra-config" .Release.Name -}} {{- end }} {{/* Name of inline ConfigMap containing additional cluster resource templates */}} -{{- define "flyte-demo.clusterResourceTemplates.inlineConfigMap" -}} +{{- define "flyte-devbox.clusterResourceTemplates.inlineConfigMap" -}} {{- printf "%s-extra-cluster-resource-templates" .Release.Name -}} {{- end }} {{/* Name of PersistentVolume and PersistentVolumeClaim for PostgreSQL database */}} -{{- define "flyte-demo.persistence.dbVolumeName" -}} +{{- define "flyte-devbox.persistence.dbVolumeName" -}} {{- printf "%s-db-storage" .Release.Name -}} {{- end }} {{/* Name of PersistentVolume and PersistentVolumeClaim for RustFS */}} -{{- define "flyte-demo.persistence.rustfsVolumeName" -}} +{{- define "flyte-devbox.persistence.rustfsVolumeName" -}} {{- printf "%s-rustfs-storage" .Release.Name -}} {{- end }} @@ -93,14 +93,14 @@ Name of PersistentVolume and PersistentVolumeClaim for RustFS {{/* Selector labels for console */}} -{{- define "flyte-demo.consoleSelectorLabels" -}} -{{ include "flyte-demo.selectorLabels" . }} +{{- define "flyte-devbox.consoleSelectorLabels" -}} +{{ include "flyte-devbox.selectorLabels" . }} app.kubernetes.io/component: console {{- end }} {{/* Name of development-mode Flyte headless service */}} -{{- define "flyte-demo.localHeadlessService" -}} +{{- define "flyte-devbox.localHeadlessService" -}} {{- printf "%s-local" .Release.Name | trunc 63 | trimSuffix "-" -}} {{- end }} diff --git a/charts/flyte-demo/templates/config/cluster-resource-template-inline-configmap.yaml b/charts/flyte-devbox/templates/config/cluster-resource-template-inline-configmap.yaml similarity index 65% rename from charts/flyte-demo/templates/config/cluster-resource-template-inline-configmap.yaml rename to charts/flyte-devbox/templates/config/cluster-resource-template-inline-configmap.yaml index 8cd1197534..e79fab266f 100644 --- a/charts/flyte-demo/templates/config/cluster-resource-template-inline-configmap.yaml +++ b/charts/flyte-devbox/templates/config/cluster-resource-template-inline-configmap.yaml @@ -2,6 +2,6 @@ apiVersion: v1 kind: ConfigMap metadata: - name: {{ include "flyte-demo.clusterResourceTemplates.inlineConfigMap" . }} + name: {{ include "flyte-devbox.clusterResourceTemplates.inlineConfigMap" . }} namespace: {{ .Release.Namespace | quote }} {{- end }} diff --git a/charts/flyte-demo/templates/config/configuration-inline-configmap.yaml b/charts/flyte-devbox/templates/config/configuration-inline-configmap.yaml similarity index 68% rename from charts/flyte-demo/templates/config/configuration-inline-configmap.yaml rename to charts/flyte-devbox/templates/config/configuration-inline-configmap.yaml index d74cb61af8..9f7e8da2f3 100644 --- a/charts/flyte-demo/templates/config/configuration-inline-configmap.yaml +++ b/charts/flyte-devbox/templates/config/configuration-inline-configmap.yaml @@ -2,6 +2,6 @@ apiVersion: v1 kind: ConfigMap metadata: - name: {{ include "flyte-demo.configuration.inlineConfigMap" . }} + name: {{ include "flyte-devbox.configuration.inlineConfigMap" . }} namespace: {{ .Release.Namespace | quote }} {{- end }} diff --git a/charts/flyte-demo/templates/console/deployment.yaml b/charts/flyte-devbox/templates/console/deployment.yaml similarity index 79% rename from charts/flyte-demo/templates/console/deployment.yaml rename to charts/flyte-devbox/templates/console/deployment.yaml index aa51159860..ba25912037 100644 --- a/charts/flyte-demo/templates/console/deployment.yaml +++ b/charts/flyte-devbox/templates/console/deployment.yaml @@ -4,14 +4,14 @@ kind: Deployment metadata: name: flyte-console namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-demo.labels" . | nindent 4 }} + labels: {{- include "flyte-devbox.labels" . | nindent 4 }} spec: replicas: 1 selector: - matchLabels: {{- include "flyte-demo.consoleSelectorLabels" . | nindent 6 }} + matchLabels: {{- include "flyte-devbox.consoleSelectorLabels" . | nindent 6 }} template: metadata: - labels: {{- include "flyte-demo.consoleSelectorLabels" . | nindent 8 }} + labels: {{- include "flyte-devbox.consoleSelectorLabels" . | nindent 8 }} spec: containers: - name: console diff --git a/charts/flyte-demo/templates/console/service.yaml b/charts/flyte-devbox/templates/console/service.yaml similarity index 64% rename from charts/flyte-demo/templates/console/service.yaml rename to charts/flyte-devbox/templates/console/service.yaml index fedc32f917..0c60a94ff8 100644 --- a/charts/flyte-demo/templates/console/service.yaml +++ b/charts/flyte-devbox/templates/console/service.yaml @@ -4,9 +4,9 @@ kind: Service metadata: name: flyte-console namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-demo.labels" . | nindent 4 }} + labels: {{- include "flyte-devbox.labels" . | nindent 4 }} spec: - selector: {{- include "flyte-demo.consoleSelectorLabels" . | nindent 4 }} + selector: {{- include "flyte-devbox.consoleSelectorLabels" . | nindent 4 }} ports: - name: http port: 80 diff --git a/charts/flyte-demo/templates/local/endpoint.yaml b/charts/flyte-devbox/templates/local/endpoint.yaml similarity index 77% rename from charts/flyte-demo/templates/local/endpoint.yaml rename to charts/flyte-devbox/templates/local/endpoint.yaml index 255b292a9b..3da3bb64c3 100644 --- a/charts/flyte-demo/templates/local/endpoint.yaml +++ b/charts/flyte-devbox/templates/local/endpoint.yaml @@ -2,10 +2,10 @@ apiVersion: v1 kind: Endpoints metadata: - name: {{ include "flyte-demo.localHeadlessService" . }} + name: {{ include "flyte-devbox.localHeadlessService" . }} namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} subsets: - addresses: - ip: '%{HOST_GATEWAY_IP}%' diff --git a/charts/flyte-demo/templates/local/service.yaml b/charts/flyte-devbox/templates/local/service.yaml similarity index 74% rename from charts/flyte-demo/templates/local/service.yaml rename to charts/flyte-devbox/templates/local/service.yaml index 414239849c..d66ff7ae67 100644 --- a/charts/flyte-demo/templates/local/service.yaml +++ b/charts/flyte-devbox/templates/local/service.yaml @@ -2,10 +2,10 @@ apiVersion: v1 kind: Service metadata: - name: {{ include "flyte-demo.localHeadlessService" . }} + name: {{ include "flyte-devbox.localHeadlessService" . }} namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} spec: clusterIP: None ports: diff --git a/charts/flyte-demo/templates/proxy/ingress.yaml b/charts/flyte-devbox/templates/proxy/ingress.yaml similarity index 84% rename from charts/flyte-demo/templates/proxy/ingress.yaml rename to charts/flyte-devbox/templates/proxy/ingress.yaml index f84518189f..ff72019294 100644 --- a/charts/flyte-demo/templates/proxy/ingress.yaml +++ b/charts/flyte-devbox/templates/proxy/ingress.yaml @@ -3,14 +3,14 @@ {{- if index .Values "flyte-binary" "enabled" }} {{- $backendService = printf "%s-http" ( index .Values "flyte-binary" "fullnameOverride" | default "flyte-binary" ) }} {{- else }} -{{- $backendService = include "flyte-demo.localHeadlessService" . }} +{{- $backendService = include "flyte-devbox.localHeadlessService" . }} {{- end }} apiVersion: networking.k8s.io/v1 kind: Ingress metadata: - name: {{ include "flyte-demo.fullname" . }}-api + name: {{ include "flyte-devbox.fullname" . }}-api namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-demo.labels" . | nindent 4 }} + labels: {{- include "flyte-devbox.labels" . | nindent 4 }} spec: rules: - http: @@ -39,7 +39,7 @@ kind: Ingress metadata: name: flyte-console namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-demo.labels" . | nindent 4 }} + labels: {{- include "flyte-devbox.labels" . | nindent 4 }} spec: rules: - http: diff --git a/charts/flyte-demo/templates/proxy/traefik-config.yaml b/charts/flyte-devbox/templates/proxy/traefik-config.yaml similarity index 84% rename from charts/flyte-demo/templates/proxy/traefik-config.yaml rename to charts/flyte-devbox/templates/proxy/traefik-config.yaml index 35ee5d9328..5657b622f8 100644 --- a/charts/flyte-demo/templates/proxy/traefik-config.yaml +++ b/charts/flyte-devbox/templates/proxy/traefik-config.yaml @@ -3,7 +3,7 @@ kind: HelmChartConfig metadata: name: traefik namespace: kube-system - labels: {{- include "flyte-demo.labels" . | nindent 4 }} + labels: {{- include "flyte-devbox.labels" . | nindent 4 }} spec: valuesContent: | service: diff --git a/charts/flyte-demo/templates/storage/rustfs/deployment.yaml b/charts/flyte-devbox/templates/storage/rustfs/deployment.yaml similarity index 93% rename from charts/flyte-demo/templates/storage/rustfs/deployment.yaml rename to charts/flyte-devbox/templates/storage/rustfs/deployment.yaml index c26127421c..058f41c815 100644 --- a/charts/flyte-demo/templates/storage/rustfs/deployment.yaml +++ b/charts/flyte-devbox/templates/storage/rustfs/deployment.yaml @@ -5,7 +5,7 @@ metadata: name: rustfs namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} spec: selector: matchLabels: @@ -81,5 +81,5 @@ spec: volumes: - name: data persistentVolumeClaim: - claimName: {{ include "flyte-demo.persistence.rustfsVolumeName" . }} + claimName: {{ include "flyte-devbox.persistence.rustfsVolumeName" . }} {{- end }} diff --git a/charts/flyte-demo/templates/storage/rustfs/pv.yaml b/charts/flyte-devbox/templates/storage/rustfs/pv.yaml similarity index 70% rename from charts/flyte-demo/templates/storage/rustfs/pv.yaml rename to charts/flyte-devbox/templates/storage/rustfs/pv.yaml index 457205464e..3eb5000768 100644 --- a/charts/flyte-demo/templates/storage/rustfs/pv.yaml +++ b/charts/flyte-devbox/templates/storage/rustfs/pv.yaml @@ -2,10 +2,10 @@ apiVersion: v1 kind: PersistentVolume metadata: - name: {{ include "flyte-demo.persistence.rustfsVolumeName" . }} + name: {{ include "flyte-devbox.persistence.rustfsVolumeName" . }} namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} spec: storageClassName: manual accessModes: diff --git a/charts/flyte-demo/templates/storage/rustfs/pvc.yaml b/charts/flyte-devbox/templates/storage/rustfs/pvc.yaml similarity index 57% rename from charts/flyte-demo/templates/storage/rustfs/pvc.yaml rename to charts/flyte-devbox/templates/storage/rustfs/pvc.yaml index 9402c9a706..500bb73273 100644 --- a/charts/flyte-demo/templates/storage/rustfs/pvc.yaml +++ b/charts/flyte-devbox/templates/storage/rustfs/pvc.yaml @@ -2,10 +2,10 @@ apiVersion: v1 kind: PersistentVolumeClaim metadata: - name: {{ include "flyte-demo.persistence.rustfsVolumeName" . }} + name: {{ include "flyte-devbox.persistence.rustfsVolumeName" . }} namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} spec: storageClassName: manual accessModes: @@ -13,5 +13,5 @@ spec: resources: requests: storage: 1Gi - volumeName: {{ include "flyte-demo.persistence.rustfsVolumeName" . }} + volumeName: {{ include "flyte-devbox.persistence.rustfsVolumeName" . }} {{- end }} diff --git a/charts/flyte-demo/templates/storage/rustfs/secret.yaml b/charts/flyte-devbox/templates/storage/rustfs/secret.yaml similarity index 84% rename from charts/flyte-demo/templates/storage/rustfs/secret.yaml rename to charts/flyte-devbox/templates/storage/rustfs/secret.yaml index 0ad1952f7d..3766e0236f 100644 --- a/charts/flyte-demo/templates/storage/rustfs/secret.yaml +++ b/charts/flyte-devbox/templates/storage/rustfs/secret.yaml @@ -5,7 +5,7 @@ metadata: name: rustfs namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} type: Opaque data: access-key: {{ .Values.rustfs.accessKey | b64enc | quote }} diff --git a/charts/flyte-demo/templates/storage/rustfs/service.yaml b/charts/flyte-devbox/templates/storage/rustfs/service.yaml similarity index 86% rename from charts/flyte-demo/templates/storage/rustfs/service.yaml rename to charts/flyte-devbox/templates/storage/rustfs/service.yaml index bc64350f02..2b4e80798c 100644 --- a/charts/flyte-demo/templates/storage/rustfs/service.yaml +++ b/charts/flyte-devbox/templates/storage/rustfs/service.yaml @@ -5,7 +5,7 @@ metadata: name: rustfs namespace: {{ .Release.Namespace | quote }} labels: - {{- include "flyte-demo.labels" . | nindent 4 }} + {{- include "flyte-devbox.labels" . | nindent 4 }} spec: type: NodePort ports: diff --git a/charts/flyte-demo/values.yaml b/charts/flyte-devbox/values.yaml similarity index 93% rename from charts/flyte-demo/values.yaml rename to charts/flyte-devbox/values.yaml index 7f72022562..85af9a3956 100644 --- a/charts/flyte-demo/values.yaml +++ b/charts/flyte-devbox/values.yaml @@ -66,9 +66,9 @@ flyte-binary: dbName: runs user: postgres password: postgres - inlineConfigMap: '{{ include "flyte-demo.configuration.inlineConfigMap" . }}' + inlineConfigMap: '{{ include "flyte-devbox.configuration.inlineConfigMap" . }}' clusterResourceTemplates: - inlineConfigMap: '{{ include "flyte-demo.clusterResourceTemplates.inlineConfigMap" . }}' + inlineConfigMap: '{{ include "flyte-devbox.clusterResourceTemplates.inlineConfigMap" . }}' deployment: image: repository: flyte-binary-v2 @@ -131,7 +131,7 @@ postgresql: postgresql: 30001 persistence: enabled: true - existingClaim: '{{ include "flyte-demo.persistence.dbVolumeName" . }}' + existingClaim: '{{ include "flyte-devbox.persistence.dbVolumeName" . }}' volumePermissions: enabled: true image: diff --git a/docker/demo-bundled/.gitignore b/docker/devbox-bundled/.gitignore similarity index 100% rename from docker/demo-bundled/.gitignore rename to docker/devbox-bundled/.gitignore diff --git a/docker/demo-bundled/Dockerfile b/docker/devbox-bundled/Dockerfile similarity index 94% rename from docker/demo-bundled/Dockerfile rename to docker/devbox-bundled/Dockerfile index 7288e75867..dcede218f9 100644 --- a/docker/demo-bundled/Dockerfile +++ b/docker/devbox-bundled/Dockerfile @@ -22,7 +22,7 @@ COPY bootstrap/go.mod bootstrap/go.sum ./ RUN go mod download COPY bootstrap/ ./ RUN --mount=type=cache,target=/root/.cache/go-build --mount=type=cache,target=/root/go/pkg/mod \ - go build -o dist/flyte-demo-bootstrap cmd/bootstrap/main.go && \ + go build -o dist/flyte-devbox-bootstrap cmd/bootstrap/main.go && \ go build -o dist/embedded-postgres cmd/embedded-postgres/main.go @@ -64,8 +64,8 @@ FROM rancher/k3s:v1.34.6-k3s1 ARG TARGETARCH -ARG FLYTE_DEMO_VERSION -ENV FLYTE_DEMO_VERSION "${FLYTE_DEMO_VERSION}" +ARG FLYTE_DEVBOX_VERSION +ENV FLYTE_DEVBOX_VERSION "${FLYTE_DEVBOX_VERSION}" COPY --from=builder /build/images/ /var/lib/rancher/k3s/agent/images/ COPY images/tar/${TARGETARCH}/ /var/lib/rancher/k3s/agent/images/ @@ -73,7 +73,7 @@ COPY manifests/ /var/lib/rancher/k3s/server/manifests-staging/ COPY bin/ /bin/ # Install bootstrap and embedded postgres -COPY --from=bootstrap /flyteorg/build/dist/flyte-demo-bootstrap /bin/ +COPY --from=bootstrap /flyteorg/build/dist/flyte-devbox-bootstrap /bin/ COPY --from=bootstrap /flyteorg/build/dist/embedded-postgres /bin/ # Install pre-cached PostgreSQL binaries and glibc libraries diff --git a/docker/demo-bundled/Dockerfile.gpu b/docker/devbox-bundled/Dockerfile.gpu similarity index 98% rename from docker/demo-bundled/Dockerfile.gpu rename to docker/devbox-bundled/Dockerfile.gpu index a6bba98fd7..48dad82176 100644 --- a/docker/demo-bundled/Dockerfile.gpu +++ b/docker/devbox-bundled/Dockerfile.gpu @@ -6,7 +6,7 @@ # inherited verbatim. CI builds the CPU image first and passes its tag in # via BASE_IMAGE. -ARG BASE_IMAGE=ghcr.io/flyteorg/flyte-demo:nightly +ARG BASE_IMAGE=ghcr.io/flyteorg/flyte-devbox:nightly # Stage NVIDIA Container Toolkit binaries + supporting libs + ldconfig. diff --git a/docker/demo-bundled/Makefile b/docker/devbox-bundled/Makefile similarity index 70% rename from docker/demo-bundled/Makefile rename to docker/devbox-bundled/Makefile index a1cd662907..93b4b65904 100644 --- a/docker/demo-bundled/Makefile +++ b/docker/devbox-bundled/Makefile @@ -3,7 +3,7 @@ mkdir -p images/tar/$(1) docker buildx build \ --build-arg FLYTECONSOLE_VERSION=$(FLYTECONSOLE_VERSION) \ - --builder flyte-demo \ + --builder flyte-devbox \ --platform linux/$(1) \ --tag flyte-binary-v2:sandbox \ --output type=docker,dest=images/tar/$(1)/flyte-binary.tar \ @@ -13,8 +13,8 @@ endef .PHONY: create_builder create_builder: - [ -n "$(shell docker buildx ls | awk '/^flyte-demo / {print $$1}')" ] || \ - docker buildx create --name flyte-demo \ + [ -n "$(shell docker buildx ls | awk '/^flyte-devbox / {print $$1}')" ] || \ + docker buildx create --name flyte-devbox \ --driver docker-container --driver-opt image=moby/buildkit:master \ --buildkitd-flags '--allow-insecure-entitlement security.insecure' \ --platform linux/arm64,linux/amd64 @@ -35,7 +35,7 @@ dep_build: helm-repos cd $(SANDBOX_CHART_DIR) && helm dependency build .PHONY: dep_update -dep_update: SANDBOX_CHART_DIR := ../../charts/flyte-demo +dep_update: SANDBOX_CHART_DIR := ../../charts/flyte-devbox dep_update: dep_build cd $(SANDBOX_CHART_DIR)/charts && for f in *.tgz; do tar xzf "$$f"; done @@ -57,15 +57,15 @@ sync-crds: .PHONY: build build: sync-crds flyte dep_update manifests - docker buildx build --builder flyte-demo --allow security.insecure --load \ - --tag flyte-demo:latest . + docker buildx build --builder flyte-devbox --allow security.insecure --load \ + --tag flyte-devbox:latest . .PHONY: build-gpu build-gpu: build - docker buildx build --builder flyte-demo --allow security.insecure --load \ + docker buildx build --builder flyte-devbox --allow security.insecure --load \ --file Dockerfile.gpu \ - --build-arg BASE_IMAGE=flyte-demo:latest \ - --tag flyte-demo:gpu-latest . + --build-arg BASE_IMAGE=flyte-devbox:latest \ + --tag flyte-devbox:gpu-latest . # Port map # 6443 - k8s API server @@ -74,30 +74,30 @@ build-gpu: build # 30002 - RustFS # 30080 - Flyte Proxy .PHONY: start -start: FLYTE_DEMO_IMAGE := flyte-demo:latest +start: FLYTE_DEVBOX_IMAGE := flyte-devbox:latest start: FLYTE_DEV := False start: - [ -n "$(shell docker volume ls --filter name=^flyte-demo$$ --format {{.Name}})" ] || \ - docker volume create flyte-demo - @if [ -z "$(shell docker ps --filter name=^flyte-demo$$ --format {{.Names}})" ]; then \ + [ -n "$(shell docker volume ls --filter name=^flyte-devbox$$ --format {{.Name}})" ] || \ + docker volume create flyte-devbox + @if [ -z "$(shell docker ps --filter name=^flyte-devbox$$ --format {{.Names}})" ]; then \ rm -f $(PWD)/.kube/kubeconfig; \ - docker run --detach --rm --privileged --name flyte-demo \ + docker run --detach --rm --privileged --name flyte-devbox \ --add-host "host.docker.internal:host-gateway" \ --env FLYTE_DEV=$(FLYTE_DEV) \ --env K3S_KUBECONFIG_OUTPUT=/.kube/kubeconfig \ --volume $(PWD)/.kube:/.kube \ - --volume flyte-demo:/var/lib/flyte/storage \ + --volume flyte-devbox:/var/lib/flyte/storage \ --publish "6443":"6443" \ --publish "30000:30000" \ --publish "30001:5432" \ --publish "30002:30002" \ --publish "30080:30080" \ - $(FLYTE_DEMO_IMAGE); \ + $(FLYTE_DEVBOX_IMAGE); \ fi @echo "Waiting for kubeconfig..." @until [ -s $(PWD)/.kube/kubeconfig ]; do sleep 1; done @# On WSL, the bind-mounted kubeconfig may be root-owned, which makes the host-side cp fail with permission denied. - @docker exec flyte-demo chown $(shell id -u):$(shell id -g) /.kube/kubeconfig + @docker exec flyte-devbox chown $(shell id -u):$(shell id -g) /.kube/kubeconfig @mkdir -p $(HOME)/.kube @if [ -f $(HOME)/.kube/config ]; then \ KUBECONFIG=$(PWD)/.kube/kubeconfig:$(HOME)/.kube/config kubectl config view --flatten > /tmp/kubeconfig-merged && \ @@ -105,14 +105,14 @@ start: else \ cp $(PWD)/.kube/kubeconfig $(HOME)/.kube/config; \ fi - @kubectl config use-context flyte-demo >/dev/null 2>&1 || true + @kubectl config use-context flyte-devbox >/dev/null 2>&1 || true @echo "Kubeconfig merged into ~/.kube/config" .PHONY: kubeconfig .SILENT: kubeconfig kubeconfig: - sed -i -e "/server:/ s/: .*/: https:\/\/127.0.0.1:$(shell docker port flyte-demo | grep ^6443 | awk '{print $$3}' | awk -F: '{print $$2}')/" .kube/kubeconfig + sed -i -e "/server:/ s/: .*/: https:\/\/127.0.0.1:$(shell docker port flyte-devbox | grep ^6443 | awk '{print $$3}' | awk -F: '{print $$2}')/" .kube/kubeconfig echo "export KUBECONFIG=$(PWD)/.kube/kubeconfig" .PHONY: stop stop: - docker stop --time 5 flyte-demo + docker stop --time 5 flyte-devbox diff --git a/docker/demo-bundled/bin/k3d-entrypoint-cgroupv2.sh b/docker/devbox-bundled/bin/k3d-entrypoint-cgroupv2.sh similarity index 100% rename from docker/demo-bundled/bin/k3d-entrypoint-cgroupv2.sh rename to docker/devbox-bundled/bin/k3d-entrypoint-cgroupv2.sh diff --git a/docker/demo-bundled/bin/k3d-entrypoint-flyte-demo-bootstrap.sh b/docker/devbox-bundled/bin/k3d-entrypoint-flyte-devbox-bootstrap.sh similarity index 86% rename from docker/demo-bundled/bin/k3d-entrypoint-flyte-demo-bootstrap.sh rename to docker/devbox-bundled/bin/k3d-entrypoint-flyte-devbox-bootstrap.sh index ad82efe128..770e9c9ebe 100755 --- a/docker/demo-bundled/bin/k3d-entrypoint-flyte-demo-bootstrap.sh +++ b/docker/devbox-bundled/bin/k3d-entrypoint-flyte-devbox-bootstrap.sh @@ -15,16 +15,16 @@ while ! [ -f /tmp/embedded-postgres-ready ]; do sleep 0.5 done -flyte-demo-bootstrap +flyte-devbox-bootstrap # Wait for K3s to write kubeconfig to the staging path, rename the default -# context, add a flyte-demo alias, then copy to the host-mounted output. +# context, add a flyte-devbox alias, then copy to the host-mounted output. STAGING="${K3S_KUBECONFIG_OUTPUT:-/etc/rancher/k3s/k3s.yaml}" ( while ! [ -s "$STAGING" ]; do sleep 0.5; done # TODO: Remove flytev2-sandbox after all users have upgraded flyte-sdk. sed -i 's/: default/: flytev2-sandbox/g' "$STAGING" - KUBECONFIG="$STAGING" kubectl config set-context flyte-demo \ + KUBECONFIG="$STAGING" kubectl config set-context flyte-devbox \ --cluster=flytev2-sandbox --user=flytev2-sandbox 2>/dev/null || true if [ -n "${KUBECONFIG_FINAL:-}" ] && [ "$KUBECONFIG_FINAL" != "$STAGING" ]; then cp "$STAGING" "$KUBECONFIG_FINAL" diff --git a/docker/demo-bundled/bin/k3d-entrypoint.sh b/docker/devbox-bundled/bin/k3d-entrypoint.sh similarity index 100% rename from docker/demo-bundled/bin/k3d-entrypoint.sh rename to docker/devbox-bundled/bin/k3d-entrypoint.sh diff --git a/docker/demo-bundled/bootstrap/Makefile b/docker/devbox-bundled/bootstrap/Makefile similarity index 100% rename from docker/demo-bundled/bootstrap/Makefile rename to docker/devbox-bundled/bootstrap/Makefile diff --git a/docker/demo-bundled/bootstrap/cmd/bootstrap/main.go b/docker/devbox-bundled/bootstrap/cmd/bootstrap/main.go similarity index 90% rename from docker/demo-bundled/bootstrap/cmd/bootstrap/main.go rename to docker/devbox-bundled/bootstrap/cmd/bootstrap/main.go index ab516a862e..b7800db680 100644 --- a/docker/demo-bundled/bootstrap/cmd/bootstrap/main.go +++ b/docker/devbox-bundled/bootstrap/cmd/bootstrap/main.go @@ -7,14 +7,14 @@ import ( "os" "path/filepath" - "github.com/flyteorg/flyte/docker/demo-bundled/bootstrap/internal/transform" - "github.com/flyteorg/flyte/docker/demo-bundled/bootstrap/internal/transform/plugins/config" - "github.com/flyteorg/flyte/docker/demo-bundled/bootstrap/internal/transform/plugins/vars" + "github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap/internal/transform" + "github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap/internal/transform/plugins/config" + "github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap/internal/transform/plugins/vars" ) const ( configDirPath = "/var/lib/flyte/config" - configurationConfigMapName = "flyte-demo-extra-config" + configurationConfigMapName = "flyte-devbox-extra-config" deploymentName = "flyte-binary" devModeEnvVar = "FLYTE_DEV" dockerHost = "host.docker.internal" diff --git a/docker/demo-bundled/bootstrap/cmd/bootstrap/main_test.go b/docker/devbox-bundled/bootstrap/cmd/bootstrap/main_test.go similarity index 100% rename from docker/demo-bundled/bootstrap/cmd/bootstrap/main_test.go rename to docker/devbox-bundled/bootstrap/cmd/bootstrap/main_test.go diff --git a/docker/demo-bundled/bootstrap/cmd/embedded-postgres/main.go b/docker/devbox-bundled/bootstrap/cmd/embedded-postgres/main.go similarity index 100% rename from docker/demo-bundled/bootstrap/cmd/embedded-postgres/main.go rename to docker/devbox-bundled/bootstrap/cmd/embedded-postgres/main.go diff --git a/docker/demo-bundled/bootstrap/cmd/embedded-postgres/main_test.go b/docker/devbox-bundled/bootstrap/cmd/embedded-postgres/main_test.go similarity index 100% rename from docker/demo-bundled/bootstrap/cmd/embedded-postgres/main_test.go rename to docker/devbox-bundled/bootstrap/cmd/embedded-postgres/main_test.go diff --git a/docker/demo-bundled/bootstrap/go.mod b/docker/devbox-bundled/bootstrap/go.mod similarity index 97% rename from docker/demo-bundled/bootstrap/go.mod rename to docker/devbox-bundled/bootstrap/go.mod index 58b1a9de8c..2d99c2f896 100644 --- a/docker/demo-bundled/bootstrap/go.mod +++ b/docker/devbox-bundled/bootstrap/go.mod @@ -1,4 +1,4 @@ -module github.com/flyteorg/flyte/docker/demo-bundled/bootstrap +module github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap go 1.24.0 diff --git a/docker/demo-bundled/bootstrap/go.sum b/docker/devbox-bundled/bootstrap/go.sum similarity index 100% rename from docker/demo-bundled/bootstrap/go.sum rename to docker/devbox-bundled/bootstrap/go.sum diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go similarity index 97% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go index 07c4814b7b..4731820f2c 100644 --- a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go +++ b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/cluster_resource_templates.go @@ -6,7 +6,7 @@ import ( "os" "path/filepath" - "github.com/flyteorg/flyte/docker/demo-bundled/bootstrap/internal/utils" + "github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap/internal/utils" appsv1 "k8s.io/api/apps/v1" apiv1 "k8s.io/api/core/v1" corev1 "k8s.io/api/core/v1" diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/configuration.go b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/configuration.go similarity index 96% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/configuration.go rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/configuration.go index 155310a5e0..e32c4ae293 100644 --- a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/configuration.go +++ b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/configuration.go @@ -5,7 +5,7 @@ import ( "fmt" "os" - "github.com/flyteorg/flyte/docker/demo-bundled/bootstrap/internal/utils" + "github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap/internal/utils" appsv1 "k8s.io/api/apps/v1" apiv1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/loader.go b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/loader.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/loader.go rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/loader.go diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/loader_test.go b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/loader_test.go similarity index 97% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/loader_test.go rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/loader_test.go index 659d0e2bd9..b337e74b18 100644 --- a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/loader_test.go +++ b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/loader_test.go @@ -6,7 +6,7 @@ import ( "path/filepath" "testing" - "github.com/flyteorg/flyte/docker/demo-bundled/bootstrap/internal/utils" + "github.com/flyteorg/flyte/docker/devbox-bundled/bootstrap/internal/utils" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/base.yaml b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/base.yaml similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/base.yaml rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/base.yaml diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/emptydir/.keep b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/emptydir/.keep similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/emptydir/.keep rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/emptydir/.keep diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/cluster-resource-templates/resource.yaml b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/cluster-resource-templates/resource.yaml similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/cluster-resource-templates/resource.yaml rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/cluster-resource-templates/resource.yaml diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/config.yaml b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/config.yaml similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/config.yaml rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/emptyfile/config.yaml diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/cluster-resource-templates/resource.yaml b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/cluster-resource-templates/resource.yaml similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/cluster-resource-templates/resource.yaml rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/cluster-resource-templates/resource.yaml diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/config.yaml b/docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/config.yaml similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/config.yaml rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/config/testdata/happy/config.yaml diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/vars/vars.go b/docker/devbox-bundled/bootstrap/internal/transform/plugins/vars/vars.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/vars/vars.go rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/vars/vars.go diff --git a/docker/demo-bundled/bootstrap/internal/transform/plugins/vars/vars_test.go b/docker/devbox-bundled/bootstrap/internal/transform/plugins/vars/vars_test.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/plugins/vars/vars_test.go rename to docker/devbox-bundled/bootstrap/internal/transform/plugins/vars/vars_test.go diff --git a/docker/demo-bundled/bootstrap/internal/transform/transformer.go b/docker/devbox-bundled/bootstrap/internal/transform/transformer.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/transformer.go rename to docker/devbox-bundled/bootstrap/internal/transform/transformer.go diff --git a/docker/demo-bundled/bootstrap/internal/transform/transformer_test.go b/docker/devbox-bundled/bootstrap/internal/transform/transformer_test.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/transform/transformer_test.go rename to docker/devbox-bundled/bootstrap/internal/transform/transformer_test.go diff --git a/docker/demo-bundled/bootstrap/internal/utils/checksum.go b/docker/devbox-bundled/bootstrap/internal/utils/checksum.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/utils/checksum.go rename to docker/devbox-bundled/bootstrap/internal/utils/checksum.go diff --git a/docker/demo-bundled/bootstrap/internal/utils/checksum_test.go b/docker/devbox-bundled/bootstrap/internal/utils/checksum_test.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/utils/checksum_test.go rename to docker/devbox-bundled/bootstrap/internal/utils/checksum_test.go diff --git a/docker/demo-bundled/bootstrap/internal/utils/patch.go b/docker/devbox-bundled/bootstrap/internal/utils/patch.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/utils/patch.go rename to docker/devbox-bundled/bootstrap/internal/utils/patch.go diff --git a/docker/demo-bundled/bootstrap/internal/utils/patch_test.go b/docker/devbox-bundled/bootstrap/internal/utils/patch_test.go similarity index 100% rename from docker/demo-bundled/bootstrap/internal/utils/patch_test.go rename to docker/devbox-bundled/bootstrap/internal/utils/patch_test.go diff --git a/docker/demo-bundled/bootstrap/internal/utils/testdata/bar b/docker/devbox-bundled/bootstrap/internal/utils/testdata/bar similarity index 100% rename from docker/demo-bundled/bootstrap/internal/utils/testdata/bar rename to docker/devbox-bundled/bootstrap/internal/utils/testdata/bar diff --git a/docker/demo-bundled/bootstrap/internal/utils/testdata/foo b/docker/devbox-bundled/bootstrap/internal/utils/testdata/foo similarity index 100% rename from docker/demo-bundled/bootstrap/internal/utils/testdata/foo rename to docker/devbox-bundled/bootstrap/internal/utils/testdata/foo diff --git a/docker/demo-bundled/containerd-config.toml.tmpl b/docker/devbox-bundled/containerd-config.toml.tmpl similarity index 100% rename from docker/demo-bundled/containerd-config.toml.tmpl rename to docker/devbox-bundled/containerd-config.toml.tmpl diff --git a/docker/demo-bundled/images/manifest.txt b/docker/devbox-bundled/images/manifest.txt similarity index 100% rename from docker/demo-bundled/images/manifest.txt rename to docker/devbox-bundled/images/manifest.txt diff --git a/docker/demo-bundled/images/preload b/docker/devbox-bundled/images/preload similarity index 100% rename from docker/demo-bundled/images/preload rename to docker/devbox-bundled/images/preload diff --git a/docker/demo-bundled/kustomize/complete/kustomization.yaml b/docker/devbox-bundled/kustomize/complete/kustomization.yaml similarity index 93% rename from docker/demo-bundled/kustomize/complete/kustomization.yaml rename to docker/devbox-bundled/kustomize/complete/kustomization.yaml index cfd75bdb89..c6db3229b0 100644 --- a/docker/demo-bundled/kustomize/complete/kustomization.yaml +++ b/docker/devbox-bundled/kustomize/complete/kustomization.yaml @@ -1,8 +1,8 @@ helmGlobals: chartHome: ../../../../charts helmCharts: -- name: flyte-demo - releaseName: flyte-demo +- name: flyte-devbox + releaseName: flyte-devbox namespace: flyte valuesInline: # Disabled: PostgreSQL runs as an embedded process on the host via diff --git a/docker/demo-bundled/kustomize/dev/kustomization.yaml b/docker/devbox-bundled/kustomize/dev/kustomization.yaml similarity index 91% rename from docker/demo-bundled/kustomize/dev/kustomization.yaml rename to docker/devbox-bundled/kustomize/dev/kustomization.yaml index 28415358ec..f379d0604d 100644 --- a/docker/demo-bundled/kustomize/dev/kustomization.yaml +++ b/docker/devbox-bundled/kustomize/dev/kustomization.yaml @@ -1,8 +1,8 @@ helmGlobals: chartHome: ../../../../charts helmCharts: -- name: flyte-demo - releaseName: flyte-demo +- name: flyte-devbox + releaseName: flyte-devbox namespace: flyte valuesInline: flyte-binary: diff --git a/docker/demo-bundled/kustomize/embedded-postgres-service.yaml b/docker/devbox-bundled/kustomize/embedded-postgres-service.yaml similarity index 100% rename from docker/demo-bundled/kustomize/embedded-postgres-service.yaml rename to docker/devbox-bundled/kustomize/embedded-postgres-service.yaml diff --git a/docker/demo-bundled/kustomize/minio-patch.yaml b/docker/devbox-bundled/kustomize/minio-patch.yaml similarity index 100% rename from docker/demo-bundled/kustomize/minio-patch.yaml rename to docker/devbox-bundled/kustomize/minio-patch.yaml diff --git a/docker/demo-bundled/kustomize/namespace.yaml b/docker/devbox-bundled/kustomize/namespace.yaml similarity index 100% rename from docker/demo-bundled/kustomize/namespace.yaml rename to docker/devbox-bundled/kustomize/namespace.yaml diff --git a/docker/demo-bundled/manifests/complete.yaml b/docker/devbox-bundled/manifests/complete.yaml similarity index 91% rename from docker/demo-bundled/manifests/complete.yaml rename to docker/devbox-bundled/manifests/complete.yaml index b8532c03ec..a945b55d94 100644 --- a/docker/demo-bundled/manifests/complete.yaml +++ b/docker/devbox-bundled/manifests/complete.yaml @@ -294,7 +294,7 @@ apiVersion: v1 kind: ServiceAccount metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -305,7 +305,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -375,7 +375,7 @@ apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -421,7 +421,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry-config namespace: flyte --- @@ -484,7 +484,7 @@ data: secret: kubernetes: burst: 200 - clusterName: flyte-demo + clusterName: flyte-devbox kubeconfig: "" namespace: flyte qps: 100 @@ -571,7 +571,7 @@ data: kind: ConfigMap metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -581,13 +581,13 @@ metadata: apiVersion: v1 kind: ConfigMap metadata: - name: flyte-demo-extra-cluster-resource-templates + name: flyte-devbox-extra-cluster-resource-templates namespace: flyte --- apiVersion: v1 kind: ConfigMap metadata: - name: flyte-demo-extra-config + name: flyte-devbox-extra-config namespace: flyte --- apiVersion: v1 @@ -601,7 +601,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry-secret namespace: flyte type: Opaque @@ -610,7 +610,7 @@ apiVersion: v1 kind: Secret metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -636,11 +636,11 @@ data: kind: Secret metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: rustfs namespace: flyte type: Opaque @@ -666,7 +666,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry namespace: flyte spec: @@ -678,14 +678,14 @@ spec: targetPort: 5000 selector: app: docker-registry - release: flyte-demo + release: flyte-devbox type: NodePort --- apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -699,7 +699,7 @@ spec: targetPort: http selector: app.kubernetes.io/component: flyte-binary - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: flyte-binary type: ClusterIP --- @@ -707,7 +707,7 @@ apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -721,18 +721,18 @@ spec: targetPort: 9443 selector: app.kubernetes.io/component: flyte-binary - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: flyte-binary --- apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: flyte-console namespace: flyte spec: @@ -743,8 +743,8 @@ spec: targetPort: http selector: app.kubernetes.io/component: console - app.kubernetes.io/instance: flyte-demo - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/instance: flyte-devbox + app.kubernetes.io/name: flyte-devbox --- apiVersion: v1 kind: Service @@ -765,11 +765,11 @@ apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: rustfs namespace: flyte spec: @@ -779,7 +779,7 @@ spec: port: 9000 targetPort: rustfs-api selector: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: rustfs type: NodePort --- @@ -787,12 +787,12 @@ apiVersion: v1 kind: PersistentVolume metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-rustfs-storage + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-rustfs-storage namespace: flyte spec: accessModes: @@ -807,12 +807,12 @@ apiVersion: v1 kind: PersistentVolumeClaim metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-rustfs-storage + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-rustfs-storage namespace: flyte spec: accessModes: @@ -821,7 +821,7 @@ spec: requests: storage: 1Gi storageClassName: manual - volumeName: flyte-demo-rustfs-storage + volumeName: flyte-devbox-rustfs-storage --- apiVersion: apps/v1 kind: Deployment @@ -830,7 +830,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry namespace: flyte spec: @@ -839,7 +839,7 @@ spec: selector: matchLabels: app: docker-registry - release: flyte-demo + release: flyte-devbox template: metadata: annotations: @@ -847,7 +847,7 @@ spec: checksum/secret: 45f39b1784cf14be20440fb8059d730c1d00e2d1c34e9329b76f021c0be8cfdd labels: app: docker-registry - release: flyte-demo + release: flyte-devbox spec: containers: - command: @@ -895,7 +895,7 @@ apiVersion: apps/v1 kind: Deployment metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: flyte-binary helm.sh/chart: flyte-binary-v0.2.0 @@ -906,7 +906,7 @@ spec: selector: matchLabels: app.kubernetes.io/component: flyte-binary - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: flyte-binary strategy: type: Recreate @@ -917,7 +917,7 @@ spec: checksum/configuration-secret: 4bd6625ca25de370120c59fb11b5f6d5fb70b1314b13d18f3850d76d2e452869 labels: app.kubernetes.io/component: flyte-binary - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: flyte-binary spec: containers: @@ -985,7 +985,7 @@ spec: - secret: name: flyte-binary-config-secret - configMap: - name: flyte-demo-extra-config + name: flyte-devbox-extra-config - emptyDir: {} name: webhook-certs --- @@ -993,11 +993,11 @@ apiVersion: apps/v1 kind: Deployment metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: flyte-console namespace: flyte spec: @@ -1005,14 +1005,14 @@ spec: selector: matchLabels: app.kubernetes.io/component: console - app.kubernetes.io/instance: flyte-demo - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/instance: flyte-devbox + app.kubernetes.io/name: flyte-devbox template: metadata: labels: app.kubernetes.io/component: console - app.kubernetes.io/instance: flyte-demo - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/instance: flyte-devbox + app.kubernetes.io/name: flyte-devbox spec: containers: - image: docker.io/unionai-oss/flyteconsole-v2:sandbox @@ -1039,24 +1039,24 @@ apiVersion: apps/v1 kind: Deployment metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: rustfs namespace: flyte spec: selector: matchLabels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: rustfs strategy: type: Recreate template: metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: rustfs spec: containers: @@ -1121,17 +1121,17 @@ spec: volumes: - name: data persistentVolumeClaim: - claimName: flyte-demo-rustfs-storage + claimName: flyte-devbox-rustfs-storage --- apiVersion: helm.cattle.io/v1 kind: HelmChartConfig metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: traefik namespace: kube-system spec: @@ -1151,11 +1151,11 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: flyte-console namespace: flyte spec: @@ -1174,12 +1174,12 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-api + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-api namespace: flyte spec: rules: diff --git a/docker/demo-bundled/manifests/dev.yaml b/docker/devbox-bundled/manifests/dev.yaml similarity index 89% rename from docker/demo-bundled/manifests/dev.yaml rename to docker/devbox-bundled/manifests/dev.yaml index a6b3fa40c6..10aeba95ae 100644 --- a/docker/demo-bundled/manifests/dev.yaml +++ b/docker/devbox-bundled/manifests/dev.yaml @@ -321,7 +321,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry-config namespace: flyte --- @@ -336,7 +336,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry-secret namespace: flyte type: Opaque @@ -348,11 +348,11 @@ data: kind: Secret metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: rustfs namespace: flyte type: Opaque @@ -361,12 +361,12 @@ apiVersion: v1 kind: Endpoints metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-local + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-local namespace: flyte subsets: - addresses: @@ -400,7 +400,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry namespace: flyte spec: @@ -412,18 +412,18 @@ spec: targetPort: 5000 selector: app: docker-registry - release: flyte-demo + release: flyte-devbox type: NodePort --- apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: flyte-console namespace: flyte spec: @@ -434,19 +434,19 @@ spec: targetPort: http selector: app.kubernetes.io/component: console - app.kubernetes.io/instance: flyte-demo - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/instance: flyte-devbox + app.kubernetes.io/name: flyte-devbox --- apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-local + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-local namespace: flyte spec: clusterIP: None @@ -477,11 +477,11 @@ apiVersion: v1 kind: Service metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: rustfs namespace: flyte spec: @@ -491,7 +491,7 @@ spec: port: 9000 targetPort: rustfs-api selector: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: rustfs type: NodePort --- @@ -499,12 +499,12 @@ apiVersion: v1 kind: PersistentVolume metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-rustfs-storage + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-rustfs-storage namespace: flyte spec: accessModes: @@ -519,12 +519,12 @@ apiVersion: v1 kind: PersistentVolumeClaim metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-rustfs-storage + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-rustfs-storage namespace: flyte spec: accessModes: @@ -533,7 +533,7 @@ spec: requests: storage: 1Gi storageClassName: manual - volumeName: flyte-demo-rustfs-storage + volumeName: flyte-devbox-rustfs-storage --- apiVersion: apps/v1 kind: Deployment @@ -542,7 +542,7 @@ metadata: app: docker-registry chart: docker-registry-2.2.2 heritage: Helm - release: flyte-demo + release: flyte-devbox name: docker-registry namespace: flyte spec: @@ -551,7 +551,7 @@ spec: selector: matchLabels: app: docker-registry - release: flyte-demo + release: flyte-devbox template: metadata: annotations: @@ -559,7 +559,7 @@ spec: checksum/secret: 45f39b1784cf14be20440fb8059d730c1d00e2d1c34e9329b76f021c0be8cfdd labels: app: docker-registry - release: flyte-demo + release: flyte-devbox spec: containers: - command: @@ -607,11 +607,11 @@ apiVersion: apps/v1 kind: Deployment metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: flyte-console namespace: flyte spec: @@ -619,14 +619,14 @@ spec: selector: matchLabels: app.kubernetes.io/component: console - app.kubernetes.io/instance: flyte-demo - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/instance: flyte-devbox + app.kubernetes.io/name: flyte-devbox template: metadata: labels: app.kubernetes.io/component: console - app.kubernetes.io/instance: flyte-demo - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/instance: flyte-devbox + app.kubernetes.io/name: flyte-devbox spec: containers: - image: docker.io/unionai-oss/flyteconsole-v2:sandbox @@ -653,24 +653,24 @@ apiVersion: apps/v1 kind: Deployment metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: rustfs namespace: flyte spec: selector: matchLabels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: rustfs strategy: type: Recreate template: metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/name: rustfs spec: containers: @@ -735,17 +735,17 @@ spec: volumes: - name: data persistentVolumeClaim: - claimName: flyte-demo-rustfs-storage + claimName: flyte-devbox-rustfs-storage --- apiVersion: helm.cattle.io/v1 kind: HelmChartConfig metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: traefik namespace: kube-system spec: @@ -765,11 +765,11 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 + helm.sh/chart: flyte-devbox-0.1.0 name: flyte-console namespace: flyte spec: @@ -788,12 +788,12 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: labels: - app.kubernetes.io/instance: flyte-demo + app.kubernetes.io/instance: flyte-devbox app.kubernetes.io/managed-by: Helm - app.kubernetes.io/name: flyte-demo + app.kubernetes.io/name: flyte-devbox app.kubernetes.io/version: 1.16.1 - helm.sh/chart: flyte-demo-0.1.0 - name: flyte-demo-api + helm.sh/chart: flyte-devbox-0.1.0 + name: flyte-devbox-api namespace: flyte spec: rules: @@ -801,21 +801,21 @@ spec: paths: - backend: service: - name: flyte-demo-local + name: flyte-devbox-local port: number: 8090 path: /healthz pathType: Exact - backend: service: - name: flyte-demo-local + name: flyte-devbox-local port: number: 8090 path: /readyz pathType: Exact - backend: service: - name: flyte-demo-local + name: flyte-devbox-local port: number: 8090 path: /flyteidl2. diff --git a/docker/demo-bundled/nvidia-device-plugin.yaml b/docker/devbox-bundled/nvidia-device-plugin.yaml similarity index 100% rename from docker/demo-bundled/nvidia-device-plugin.yaml rename to docker/devbox-bundled/nvidia-device-plugin.yaml diff --git a/manager/config.yaml b/manager/config.yaml index 6ecc4d1020..9cd43c3140 100644 --- a/manager/config.yaml +++ b/manager/config.yaml @@ -19,7 +19,7 @@ manager: webhook: localCert: true certDir: /tmp/flyte/webhook/certs - serviceName: flyte-demo-local + serviceName: flyte-devbox-local servicePort: 9443 # Executor configuration @@ -64,7 +64,7 @@ plugins: - FLYTE_AWS_ENDPOINT: "http://rustfs.flyte.svc.cluster.local:9000" - FLYTE_AWS_ACCESS_KEY_ID: "rustfs" - FLYTE_AWS_SECRET_ACCESS_KEY: "rustfsstorage" - - _U_EP_OVERRIDE: "flyte-demo-local.flyte.svc.cluster.local:8090" + - _U_EP_OVERRIDE: "flyte-devbox-local.flyte.svc.cluster.local:8090" - _U_INSECURE: "true" - _U_USE_ACTIONS: "1" diff --git a/secret/config/config.go b/secret/config/config.go index 1de3031d8f..ff7123a962 100644 --- a/secret/config/config.go +++ b/secret/config/config.go @@ -15,7 +15,7 @@ var defaultConfig = &Config{ }, Kubernetes: KubernetesConfig{ Namespace: "flyte", - ClusterName: "flyte-demo", + ClusterName: "flyte-devbox", QPS: 100, Burst: 200, Timeout: "30s", From ac133461ea7076ce853b9b92aaf4507cf5109a37 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 10:44:31 -0700 Subject: [PATCH 08/12] build devbox Signed-off-by: Kevin Su --- docker/devbox-bundled/manifests/complete.yaml | 8 ++++---- docker/devbox-bundled/manifests/dev.yaml | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docker/devbox-bundled/manifests/complete.yaml b/docker/devbox-bundled/manifests/complete.yaml index a945b55d94..f8f9c31b31 100644 --- a/docker/devbox-bundled/manifests/complete.yaml +++ b/docker/devbox-bundled/manifests/complete.yaml @@ -843,8 +843,8 @@ spec: template: metadata: annotations: - checksum/config: 2cb0adc9177b7c3b9677313b445701d8b4406e274b237c51fc71ee46ab96041f - checksum/secret: 45f39b1784cf14be20440fb8059d730c1d00e2d1c34e9329b76f021c0be8cfdd + checksum/config: 6b06ba712a995bdcc044732aa5e5b9d56ce24061c6ad5c2b7f35508a00c7863b + checksum/secret: 8f6b14d94a45833195baa1b863e43296aa157e65ef50c983e672c34648d36c50 labels: app: docker-registry release: flyte-devbox @@ -913,8 +913,8 @@ spec: template: metadata: annotations: - checksum/configuration: 7086d439a183c1c3cf2549a609143ac5e81a9f4dddd67c7059b969f8c6615a7e - checksum/configuration-secret: 4bd6625ca25de370120c59fb11b5f6d5fb70b1314b13d18f3850d76d2e452869 + checksum/configuration: 646d21c3d7efb87ed1de45515bf092b575b364810dd9264a2d9b2e7b26ddbbcb + checksum/configuration-secret: e70194084619f4a1d4017093aac6367047167107fd0222513a32a61734629cac labels: app.kubernetes.io/component: flyte-binary app.kubernetes.io/instance: flyte-devbox diff --git a/docker/devbox-bundled/manifests/dev.yaml b/docker/devbox-bundled/manifests/dev.yaml index 10aeba95ae..f6d4bda06e 100644 --- a/docker/devbox-bundled/manifests/dev.yaml +++ b/docker/devbox-bundled/manifests/dev.yaml @@ -555,8 +555,8 @@ spec: template: metadata: annotations: - checksum/config: 2cb0adc9177b7c3b9677313b445701d8b4406e274b237c51fc71ee46ab96041f - checksum/secret: 45f39b1784cf14be20440fb8059d730c1d00e2d1c34e9329b76f021c0be8cfdd + checksum/config: 6b06ba712a995bdcc044732aa5e5b9d56ce24061c6ad5c2b7f35508a00c7863b + checksum/secret: 8f6b14d94a45833195baa1b863e43296aa157e65ef50c983e672c34648d36c50 labels: app: docker-registry release: flyte-devbox From 4ddb03caefbbb1e1cc5603196a1f70e59c74c5bf Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 10:45:52 -0700 Subject: [PATCH 09/12] nit Signed-off-by: Kevin Su --- .github/workflows/flyte-binary-v2.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index f18149b4a5..b5e29cae47 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -146,6 +146,7 @@ jobs: # Push to both flyte-devbox and flyte-sandbox-v2 (legacy name) # so existing users pulling the old image continue to work. images: | + ghcr.io/${{ github.repository_owner }}/flyte-demo ghcr.io/${{ github.repository_owner }}/flyte-devbox ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 tags: | @@ -193,6 +194,7 @@ jobs: with: images: | ghcr.io/${{ github.repository_owner }}/flyte-devbox + ghcr.io/${{ github.repository_owner }}/flyte-demo ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 tags: | type=raw,value=gpu-latest,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} From 0b95407cb2b2c3c119de734ebffcc1127b3069a4 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 10:47:31 -0700 Subject: [PATCH 10/12] nit Signed-off-by: Kevin Su --- docker/devbox-bundled/Makefile | 7 ------- 1 file changed, 7 deletions(-) diff --git a/docker/devbox-bundled/Makefile b/docker/devbox-bundled/Makefile index 6731438490..93b4b65904 100644 --- a/docker/devbox-bundled/Makefile +++ b/docker/devbox-bundled/Makefile @@ -67,13 +67,6 @@ build-gpu: build --build-arg BASE_IMAGE=flyte-devbox:latest \ --tag flyte-devbox:gpu-latest . -.PHONY: build-gpu -build-gpu: build - docker buildx build --builder flyte-demo --allow security.insecure --load \ - --file Dockerfile.gpu \ - --build-arg BASE_IMAGE=flyte-demo:latest \ - --tag flyte-demo:gpu-latest . - # Port map # 6443 - k8s API server # 30000 - Docker Registry From e58c6e71a82b0da1b4fe1ac54e4fb3e041d8e49d Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 10:56:36 -0700 Subject: [PATCH 11/12] Update image tagging and fix local GPU build - Tag nightly on push to v2, latest only on manual workflow_dispatch - Fix local build-gpu by using --build-context to pass CPU image into the docker-container BuildKit driver Signed-off-by: Kevin Su --- .github/workflows/flyte-binary-v2.yml | 3 ++- docker/devbox-bundled/Makefile | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/flyte-binary-v2.yml b/.github/workflows/flyte-binary-v2.yml index b5e29cae47..400cfae8c7 100644 --- a/.github/workflows/flyte-binary-v2.yml +++ b/.github/workflows/flyte-binary-v2.yml @@ -151,6 +151,7 @@ jobs: ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 tags: | type=raw,value=nightly,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} + type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }} type=sha,format=long, - name: Login to GitHub Container Registry if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} @@ -197,8 +198,8 @@ jobs: ghcr.io/${{ github.repository_owner }}/flyte-demo ghcr.io/${{ github.repository_owner }}/flyte-sandbox-v2 tags: | - type=raw,value=gpu-latest,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} type=raw,value=gpu-nightly,enable=${{ github.event_name == 'push' && github.ref == 'refs/heads/v2' }} + type=raw,value=gpu-latest,enable=${{ github.event_name == 'workflow_dispatch' }} type=sha,format=long,prefix=gpu- - name: Build and push GPU multi-arch image uses: docker/build-push-action@v6 diff --git a/docker/devbox-bundled/Makefile b/docker/devbox-bundled/Makefile index 93b4b65904..79762823e6 100644 --- a/docker/devbox-bundled/Makefile +++ b/docker/devbox-bundled/Makefile @@ -64,7 +64,8 @@ build: sync-crds flyte dep_update manifests build-gpu: build docker buildx build --builder flyte-devbox --allow security.insecure --load \ --file Dockerfile.gpu \ - --build-arg BASE_IMAGE=flyte-devbox:latest \ + --build-context base=docker-image://flyte-devbox:latest \ + --build-arg BASE_IMAGE=base \ --tag flyte-devbox:gpu-latest . # Port map From c3084ac46f6053eca0aff81f5a27dc27274356a7 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Tue, 21 Apr 2026 10:59:22 -0700 Subject: [PATCH 12/12] Rename demo to devbox in Helm chart Makefiles Signed-off-by: Kevin Su --- charts/flyte-binary/Makefile | 12 ++++++------ .../flyte-devbox/charts/flyte-binary/Makefile | 17 +++++++++++++++++ docker/devbox-bundled/Dockerfile.gpu | 4 ++-- 3 files changed, 25 insertions(+), 8 deletions(-) create mode 100644 charts/flyte-devbox/charts/flyte-binary/Makefile diff --git a/charts/flyte-binary/Makefile b/charts/flyte-binary/Makefile index 381fcca4b6..2f175d4c46 100644 --- a/charts/flyte-binary/Makefile +++ b/charts/flyte-binary/Makefile @@ -1,17 +1,17 @@ GENERATED_FILE="gen/binary_manifest.yaml" -DEMO_GENERATED_FILE="gen/demomanifest.yaml" +DEVBOX_GENERATED_FILE="gen/devboxmanifest.yaml" cleanhelm: @[ -f $(GENERATED_FILE) ] && rm $(GENERATED_FILE) || true -cleandemo: - @[ -f $(DEMO_GENERATED_FILE) ] && rm $(DEMO_GENERATED_FILE) || true +cleandevbox: + @[ -f $(DEVBOX_GENERATED_FILE) ] && rm $(DEVBOX_GENERATED_FILE) || true .PHONY: helm helm: cleanhelm helm template binary-tst-deploy ./ -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(GENERATED_FILE) -.PHONY: demohelm -demohelm: cleandemo - helm template flytedevbox ./ -f flytectldemo.yaml -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(DEMO_GENERATED_FILE) +.PHONY: devboxhelm +devboxhelm: cleandevbox + helm template flytedevbox ./ -f flytectldemo.yaml -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(DEVBOX_GENERATED_FILE) diff --git a/charts/flyte-devbox/charts/flyte-binary/Makefile b/charts/flyte-devbox/charts/flyte-binary/Makefile new file mode 100644 index 0000000000..2f175d4c46 --- /dev/null +++ b/charts/flyte-devbox/charts/flyte-binary/Makefile @@ -0,0 +1,17 @@ + +GENERATED_FILE="gen/binary_manifest.yaml" +DEVBOX_GENERATED_FILE="gen/devboxmanifest.yaml" + +cleanhelm: + @[ -f $(GENERATED_FILE) ] && rm $(GENERATED_FILE) || true + +cleandevbox: + @[ -f $(DEVBOX_GENERATED_FILE) ] && rm $(DEVBOX_GENERATED_FILE) || true + +.PHONY: helm +helm: cleanhelm + helm template binary-tst-deploy ./ -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(GENERATED_FILE) + +.PHONY: devboxhelm +devboxhelm: cleandevbox + helm template flytedevbox ./ -f flytectldemo.yaml -n flyte --dependency-update --debug --create-namespace -a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition > $(DEVBOX_GENERATED_FILE) diff --git a/docker/devbox-bundled/Dockerfile.gpu b/docker/devbox-bundled/Dockerfile.gpu index 48dad82176..346580c9cc 100644 --- a/docker/devbox-bundled/Dockerfile.gpu +++ b/docker/devbox-bundled/Dockerfile.gpu @@ -1,7 +1,7 @@ # syntax=docker/dockerfile:1.7-labs # -# GPU-capable demo cluster image. Layers NVIDIA Container Toolkit + the -# k8s device-plugin on top of the CPU demo image so everything that ships +# GPU-capable debox cluster image. Layers NVIDIA Container Toolkit + the +# k8s device-plugin on top of the CPU debox image so everything that ships # in the base (flyte-binary, embedded postgres, auto-apply manifests) is # inherited verbatim. CI builds the CPU image first and passes its tag in # via BASE_IMAGE.