diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7c43095..ca0f5a8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -70,14 +70,14 @@ jobs: - name: get base version from repo defaults run: | - # Read default version from Dockerfile (e.g., v2.43.0-12.8 -> 2.43) + # Read default version from Dockerfile (e.g., v2.50.0-13 -> 2.50) DEFAULT_VERSION=$(sed -n 's/.*GRAPHISTRY_FORGE_BASE_VERSION=v\([0-9]*\.[0-9]*\).*/\1/p' src/docker/Dockerfile | head -1) # Find latest tag for that major.minor LATEST_TAG=$(git tag -l "${DEFAULT_VERSION}.*" --sort=-v:refname | head -1) echo "RELEASE_VERSION=${LATEST_TAG}" >> $GITHUB_ENV - echo "Using base image: v${LATEST_TAG}-12.8" + echo "Using base image: v${LATEST_TAG}-13" - name: Free Disk Space env: @@ -229,6 +229,6 @@ jobs: env: COMPOSE_DOCKER_CLI_BUILD: 1 DOCKER_BUILDKIT: 1 - GRAPHISTRY_FORGE_BASE_VERSION: v${{ env.RELEASE_VERSION }}-12.8 + GRAPHISTRY_FORGE_BASE_VERSION: v${{ env.RELEASE_VERSION }}-13 run: | cd src/docker && ./${{ matrix.flavor }} build diff --git a/.github/workflows/dockerhubpublish.yml b/.github/workflows/dockerhubpublish.yml index 0962b72..2885285 100644 --- a/.github/workflows/dockerhubpublish.yml +++ b/.github/workflows/dockerhubpublish.yml @@ -13,7 +13,7 @@ on: cuda_versions: description: 'JSON array of CUDA versions' required: false - default: '["12.8", "11.8"]' + default: '["13", "12"]' workflow_call: @@ -22,7 +22,7 @@ jobs: runs-on: ubuntu-latest-4-cores strategy: matrix: - CUDA_SHORT_VERSION: ${{ fromJSON(inputs.cuda_versions || '["12.8", "11.8"]') }} + CUDA_SHORT_VERSION: ${{ fromJSON(inputs.cuda_versions || '["13", "12"]') }} fail-fast: true diff --git a/.github/workflows/scan.yml b/.github/workflows/scan.yml index 5f78e34..e0828c2 100644 --- a/.github/workflows/scan.yml +++ b/.github/workflows/scan.yml @@ -31,7 +31,7 @@ jobs: DOCKER_BUILDKIT: 1 strategy: matrix: - CUDA_SHORT_VERSION: ['12.8'] + CUDA_SHORT_VERSION: ['13'] steps: - name: checkout @@ -94,7 +94,7 @@ jobs: DOCKER_BUILDKIT: 1 strategy: matrix: - CUDA_SHORT_VERSION: ['12.8'] + CUDA_SHORT_VERSION: ['13'] steps: - name: checkout diff --git a/CHANGELOG.md b/CHANGELOG.md index adc9cb4..9c374f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,17 +21,21 @@ Extensions: See [projects page](https://github.com/graphistry/graph-app-kit/projects) and [open pull requests](https://github.com/graphistry/graph-app-kit/pulls) +## [2.50.0 - 2025.11.25] + ### Infra * Add configurable `cuda_versions` input parameter to DockerHub publish workflow for flexible CI builds * CUDA versions can now be passed as a JSON array (e.g., `'["12.8", "11.8"]'`) when triggering workflow manually or from other workflows +* Upgrade to CUDA 13.0 base images (v2.50.0-13.0): Use RAPIDS 25.10 (from 25.02) +* Update CI/CD to build CUDA 13.0 (from 12.8) and 12.9 (from 11.8) versions +* Change conda environment activation from rapids to base ### Fixes * Change conda environment activation from `rapids` to `base` for compatibility with newer RAPIDS versions * Fix `AttributeError` when `LOG_LEVEL=TRACE` by mapping unsupported log levels (TRACE, VERBOSE) to DEBUG with stderr warning - ## [2.43.6 - 2025.08.21] ### Infra diff --git a/src/docker/Dockerfile b/src/docker/Dockerfile index cfd4084..d8385f6 100644 --- a/src/docker/Dockerfile +++ b/src/docker/Dockerfile @@ -1,12 +1,12 @@ # Default to big image, but allow thin cpu override ARG DOCKER_TAG=latest -ARG GRAPHISTRY_FORGE_BASE_VERSION=v2.43.0-12.8 +ARG GRAPHISTRY_FORGE_BASE_VERSION=v2.50.0-13 ARG PYTHON_VERSION=3.10 ARG BASE_IMAGE=graphistry/graphistry-forge-base:${GRAPHISTRY_FORGE_BASE_VERSION} FROM python:$PYTHON_VERSION as cpu_base ARG DOCKER_TAG=latest -ARG GRAPHISTRY_FORGE_BASE_VERSION=v2.43.0-12.8 +ARG GRAPHISTRY_FORGE_BASE_VERSION=v2.50.0-13 ARG BASE_IMAGE=graphistry/graphistry-forge-base:${GRAPHISTRY_FORGE_BASE_VERSION} FROM $BASE_IMAGE diff --git a/src/docker/docker-compose.yml b/src/docker/docker-compose.yml index 4868879..808a8f5 100644 --- a/src/docker/docker-compose.yml +++ b/src/docker/docker-compose.yml @@ -56,7 +56,7 @@ x-build-kwargs: args: - DOCKER_TAG=${DOCKER_TAG:-latest} - BUILDKIT_INLINE_CACHE=1 - - GRAPHISTRY_FORGE_BASE_VERSION=${GRAPHISTRY_FORGE_BASE_VERSION:-v2.43.0-12.8} + - GRAPHISTRY_FORGE_BASE_VERSION=${GRAPHISTRY_FORGE_BASE_VERSION:-v2.50.0-13} ############################################################ ## @@ -70,14 +70,14 @@ services: environment: PYTHONPATH: "/opt/py_env" PIP_TARGET: "/opt/py_env" - image: graphistry/graph-app-kit-st:${DOCKER_TAG:-latest}-${CUDA_SHORT_VERSION:-12.8} + image: graphistry/graph-app-kit-st:${DOCKER_TAG:-latest}-${CUDA_SHORT_VERSION:-13} command: --server.baseUrlPath="$BASE_PATH" /apps/entrypoint.py build: <<: *build_kwargs context: .. dockerfile: ./docker/Dockerfile cache_from: - - graphistry/graph-app-kit-st:${DOCKER_TAG:-latest}-${CUDA_SHORT_VERSION:-12.8} + - graphistry/graph-app-kit-st:${DOCKER_TAG:-latest}-${CUDA_SHORT_VERSION:-13} ports: - "${ST_PUBLIC_PORT:-8501}:8501" volumes: diff --git a/src/docker/override/docker-compose.override.yml b/src/docker/override/docker-compose.override.yml index f3164c2..997ab74 100644 --- a/src/docker/override/docker-compose.override.yml +++ b/src/docker/override/docker-compose.override.yml @@ -54,7 +54,7 @@ services: args: - DOCKER_TAG=${DOCKER_TAG:-latest} - BUILDKIT_INLINE_CACHE=1 - - GRAPHISTRY_FORGE_BASE_VERSION=${GRAPHISTRY_FORGE_BASE_VERSION:-v2.43.0-12.8} + - GRAPHISTRY_FORGE_BASE_VERSION=${GRAPHISTRY_FORGE_BASE_VERSION:-v2.50.0-13} context: .. dockerfile: ./docker/Dockerfile cache_from: