forked from kubeflow/pipelines
-
Notifications
You must be signed in to change notification settings - Fork 0
95 lines (80 loc) · 3.32 KB
/
Copy pathupgrade-test.yml
File metadata and controls
95 lines (80 loc) · 3.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
name: KFP upgrade tests
on:
push:
branches: [master]
pull_request:
paths:
- '.github/workflows/upgrade-test.yml'
- '.github/resources/**'
- 'backend/**'
- 'manifests/kustomize/**'
- '!**/*.md'
- '!**/OWNERS'
jobs:
build:
uses: ./.github/workflows/image-builds-with-cache.yml
upgrade-test:
needs: build
runs-on: ubuntu-latest
strategy:
matrix:
k8s_version: [ "v1.29.2", "v1.31.0" ]
name: KFP upgrade tests - K8s ${{ matrix.k8s_version }}
steps:
- name: Checkout code
uses: actions/checkout@v5
- name: Free up disk space
run: ./.github/resources/scripts/free-disk-space.sh
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Create KFP cluster
id: create-kfp-cluster
uses: ./.github/actions/kfp-cluster
with:
k8s_version: ${{ matrix.k8s_version }}
image_path: ${{ needs.build.outputs.IMAGE_PATH }}
image_tag: ${{ needs.build.outputs.IMAGE_TAG }}
image_registry: ${{ needs.build.outputs.IMAGE_REGISTRY }}
continue-on-error: true
- name: Forward API port
id: forward-api-port
if: ${{ steps.create-kfp-cluster.outcome == 'success' }}
run: ./.github/resources/scripts/forward-port.sh "kubeflow" "ml-pipeline" 8888 8888
continue-on-error: true
- name: Prepare upgrade tests
id: upgrade-tests
if: ${{ steps.forward-api-port.outcome == 'success' }}
working-directory: backend/test/integration
run: go test -v ./... -namespace kubeflow -args -runUpgradeTests=true -testify.m=Prepare
continue-on-error: true
- name: Prepare verification tests
id: verification-tests
if: ${{ steps.forward-api-port.outcome == 'success' }}
working-directory: backend/test/integration
run: go test -v ./... -namespace kubeflow -args -runUpgradeTests=true -testify.m=Verify
continue-on-error: true
- name: Prepare upgrade tests v2
id: upgrade-tests-v2
if: ${{ steps.forward-api-port.outcome == 'success' }}
working-directory: backend/test/v2/integration/
run: go test -v ./... -namespace kubeflow -args -runUpgradeTests=true -testify.m=Prepare
continue-on-error: true
- name: Prepare verification tests v2
id: verification-tests-v2
if: ${{ steps.forward-api-port.outcome == 'success' }}
working-directory: backend/test/v2/integration
run: go test -v ./... -namespace kubeflow -args -runUpgradeTests=true -testify.m=Verify
continue-on-error: true
- name: Collect failed logs
if: ${{ steps.create-kfp-cluster.outcome != 'success' || steps.forward-api-port.outcome != 'success' || steps.upgrade-tests.outcome != 'success' || steps.upgrade-tests-v2.outcome != 'success' || steps.verification-tests.outcome != 'success' || steps.verification-tests-v2.outcome != 'success' }}
run: |
./.github/resources/scripts/collect-logs.sh --ns kubeflow --output /tmp/tmp_pod_log.txt
exit 1
- name: Collect test results
if: always()
uses: actions/upload-artifact@v4
with:
name: periodic-functional-artifacts-k8s-${{ matrix.k8s_version }}
path: /tmp/tmp*/*