|
5 | 5 |
|
6 | 6 | on:
|
7 | 7 | workflow_call:
|
8 |
| - inputs: |
9 |
| - kube-version: |
10 |
| - type: string |
11 |
| - required: true |
12 | 8 |
|
13 | 9 | jobs:
|
14 |
| - set_up_kubernetes: |
15 |
| - name: Set up Kubernetes ${{ inputs.kube-version }} |
16 |
| - runs-on: ubuntu-latest |
17 |
| - steps: |
18 |
| - - uses: actions/checkout@v4 |
19 |
| - |
20 |
| - - name: Set up Minikube |
21 |
| - |
22 |
| - with: |
23 |
| - minikube version: 'v1.34.0' |
24 |
| - kubernetes version: '${{ inputs.kube-version }}' |
25 |
| - driver: 'docker' |
26 |
| - github token: ${{ secrets.GITHUB_TOKEN }} |
27 |
| - |
28 |
| - - name: Save minikube directory |
29 |
| - id: minikube |
30 |
| - run: | |
31 |
| - echo "minikube-dir=$MINIKUBE_HOME" >> $GITHUB_OUTPUT |
32 |
| -
|
33 |
| - - name: Upload minikube |
34 |
| - uses: actions/upload-artifact@v4 |
35 |
| - with: |
36 |
| - name: minikube-${{ inputs.kube-version }} |
37 |
| - path: ${{ steps.minikube.outputs.minikube-dir }} |
38 |
| - include-hidden-files: true |
39 |
| - |
40 | 10 | integration_tests:
|
41 |
| - name: "JDK: ${{ matrix.java }}, IT category: ${{ matrix.it-category }}" |
42 |
| - needs: set_up_kubernetes |
43 | 11 | strategy:
|
44 | 12 | matrix:
|
45 | 13 | java: [ 17, 21 ]
|
46 |
| - it-category: [ 'baseapi', 'dependent', 'workflow' ] |
| 14 | + kubernetes: [ 'v1.29.12','1.30.8', '1.31.4', '1.32.0' ] |
47 | 15 | uses: ./.github/workflows/integration-tests.yml
|
48 | 16 | with:
|
49 |
| - kube-version: ${{ inputs.kube-version }} |
50 | 17 | java-version: ${{ matrix.java }}
|
51 |
| - it-category: ${{ matrix.it-category }} |
| 18 | + kube-version: ${{ matrix.kubernetes }} |
52 | 19 |
|
53 |
| - http_client_tests: |
54 |
| - name: "JDK: ${{ matrix.java }}, IT category: ${{ matrix.it-category }}, HTTP client: ${{ matrix.httpclient }}" |
55 |
| - needs: set_up_kubernetes |
| 20 | + httpclient-tests: |
56 | 21 | strategy:
|
57 | 22 | matrix:
|
58 |
| - java: [ 17, 21 ] |
59 |
| - it-category: [ 'baseapi' ] |
60 | 23 | httpclient: [ 'vertx', 'jdk', 'jetty' ]
|
61 | 24 | uses: ./.github/workflows/integration-tests.yml
|
62 | 25 | with:
|
63 |
| - kube-version: ${{ inputs.kube-version }} |
64 |
| - java-version: ${{ matrix.java }} |
65 |
| - it-category: ${{ matrix.it-category }} |
| 26 | + java-version: 21 |
| 27 | + kube-version: '1.32.0' |
66 | 28 | http-client: ${{ matrix.httpclient }}
|
| 29 | + experimental: true |
67 | 30 |
|
68 | 31 | special_integration_tests:
|
69 | 32 | name: "Special integration tests (${{ matrix.java }})"
|
70 |
| - needs: set_up_kubernetes |
71 | 33 | runs-on: ubuntu-latest
|
72 | 34 | strategy:
|
73 | 35 | matrix:
|
|
81 | 43 | java-version: ${{ matrix.java }}
|
82 | 44 | - name: Run Special Integration Tests
|
83 | 45 | run: ./mvnw ${MAVEN_ARGS} -B package -P minimal-watch-timeout-dependent-it --file pom.xml
|
84 |
| - |
85 |
| - delete_kubernetes: |
86 |
| - needs: [ integration_tests, http_client_tests, special_integration_tests ] |
87 |
| - if: always() |
88 |
| - name: Delete Kubernetes ${{ inputs.kube-version }} artifact |
89 |
| - runs-on: ubuntu-latest |
90 |
| - steps: |
91 |
| - - uses: geekyeggo/delete-artifact@v5 |
92 |
| - with: |
93 |
| - name: minikube-${{ inputs.kube-version }} |
0 commit comments