diff --git a/.github/actions/kfp-cluster/action.yml b/.github/actions/kfp-cluster/action.yml index c669a40a186..b0942133cdb 100644 --- a/.github/actions/kfp-cluster/action.yml +++ b/.github/actions/kfp-cluster/action.yml @@ -1,6 +1,11 @@ name: "Set up KFP on KinD" description: "Step to start and configure KFP on KinD" +inputs: + k8s_version: + description: "The Kubernetes version to use for the Kind cluster" + required: true + runs: using: "composite" steps: @@ -8,9 +13,9 @@ runs: uses: container-tools/kind-action@v2 with: cluster_name: kfp - kubectl_version: v1.29.2 - version: v0.22.0 - node_image: kindest/node:v1.29.2 + kubectl_version: ${{ inputs.k8s_version }} + version: v0.25.0 + node_image: kindest/node:${{ inputs.k8s_version }} - name: Build images shell: bash diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 4273b9b2fbb..e564c587de4 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -19,6 +19,10 @@ on: jobs: initialization-tests-v1: runs-on: ubuntu-latest + strategy: + matrix: + k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ] + name: Initialization tests v1 - K8s ${{ matrix.k8s_version }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -30,6 +34,8 @@ jobs: - name: Create KFP cluster uses: ./.github/actions/kfp-cluster + with: + k8s_version: ${{ matrix.k8s_version }} - name: Forward API port run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888 @@ -42,11 +48,15 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: kfp-initialization-tests-v1-artifacts + name: kfp-initialization-tests-v1-artifacts-k8s-${{ matrix.k8s_version }} path: /tmp/tmp.*/* initialization-tests-v2: runs-on: ubuntu-latest + strategy: + matrix: + k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ] + name: Initialization tests v2 - K8s ${{ matrix.k8s_version }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -58,6 +68,9 @@ jobs: - name: Create KFP cluster uses: ./.github/actions/kfp-cluster + with: + k8s_version: ${{ matrix.k8s_version }} + - name: Forward API port run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888 @@ -70,11 +83,15 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: kfp-initialization-tests-v2-artifacts + name: kfp-initialization-tests-v2-artifacts-k8s-${{ matrix.k8s_version }} path: /tmp/tmp.*/* api-integration-tests-v1: runs-on: ubuntu-latest + strategy: + matrix: + k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ] + name: API integration tests v1 - K8s ${{ matrix.k8s_version }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -86,6 +103,8 @@ jobs: - name: Create KFP cluster uses: ./.github/actions/kfp-cluster + with: + k8s_version: ${{ matrix.k8s_version }} - name: Forward API port run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888 @@ -98,11 +117,15 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: kfp-api-integration-tests-v1-artifacts + name: kfp-api-integration-tests-v1-artifacts-k8s-${{ matrix.k8s_version }} path: /tmp/tmp.*/* api-integration-tests-v2: runs-on: ubuntu-latest + strategy: + matrix: + k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ] + name: API integration tests v2 - K8s ${{ matrix.k8s_version }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -114,6 +137,8 @@ jobs: - name: Create KFP cluster uses: ./.github/actions/kfp-cluster + with: + k8s_version: ${{ matrix.k8s_version }} - name: Forward API port run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888 @@ -126,11 +151,15 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: kfp-api-integration-tests-v2-artifacts + name: kfp-api-integration-tests-v2-artifacts-k8s-${{ matrix.k8s_version }} path: /tmp/tmp.*/* frontend-integration-test: runs-on: ubuntu-latest + strategy: + matrix: + k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ] + name: Frontend Integration Tests - K8s ${{ matrix.k8s_version }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -142,6 +171,8 @@ jobs: - name: Create KFP cluster uses: ./.github/actions/kfp-cluster + with: + k8s_version: ${{ matrix.k8s_version }} - name: Forward API port run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888 @@ -160,11 +191,15 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: kfp-frontend-integration-test-artifacts + name: kfp-frontend-integration-test-artifacts-k8s-${{ matrix.k8s_version }} path: /tmp/tmp.*/* basic-sample-tests: runs-on: ubuntu-latest + strategy: + matrix: + k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ] + name: Basic Sample Tests - K8s ${{ matrix.k8s_version }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -176,6 +211,8 @@ jobs: - name: Create KFP cluster uses: ./.github/actions/kfp-cluster + with: + k8s_version: ${{ matrix.k8s_version }} - name: Forward API port run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888 @@ -193,5 +230,5 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: kfp-basic-sample-tests-artifacts + name: kfp-basic-sample-tests-artifacts-k8s-${{ matrix.k8s_version }} path: /tmp/tmp.*/*