-
Notifications
You must be signed in to change notification settings - Fork 1.7k
74 lines (61 loc) · 2.43 KB
/
upgrade-test.yml
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
name: KFP upgrade tests
on:
push:
branches: [master]
pull_request:
paths:
- '.github/workflows/upgrade-test.yml'
- '.github/resources/**'
- 'backend/**'
- 'manifests/kustomize/**'
jobs:
upgrade-test:
runs-on: ubuntu-latest
strategy:
matrix:
k8s_version: [ "v1.29.2", "v1.30.2", "v1.31.0" ]
name: KFP upgrade tests - K8s ${{ matrix.k8s_version }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- 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
- name: Prepare upgrade tests
id: upgrade-tests
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
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
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
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.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*/*