-
Notifications
You must be signed in to change notification settings - Fork 14
130 lines (124 loc) · 4.86 KB
/
e2e-upgrade-tests-matrix-full.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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
name: "PMM Upgrade Full Matrix (e2e tests)"
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
inputs:
pmm_ui_tests_branch:
description: 'pmm-ui-tests repository branch'
default: 'main'
required: true
pmm_qa_branch:
description: 'pmm-qa repository branch(for setup)'
default: 'main'
required: true
repository:
description: 'Upgrade to:'
required: true
default: 'dev-latest'
type: choice
options:
- release
- release candidate
- dev-latest
versions_range:
description: 'Last versions range:'
default: 5
required: true
jobs:
get_versions:
name: Get versions
uses: ./.github/workflows/pmm-version-getter.yml
with:
repository: ${{ inputs.repository || 'dev-latest'}}
matrix_range: ${{ inputs.versions_range || '5' }}
configuration:
name: 'Configuration / Settings'
uses: ./.github/workflows/runner-e2e-upgrade-tests.yml
secrets: inherit
needs: get_versions
strategy:
fail-fast: false
matrix:
old_version: ${{ fromJSON(needs.get_versions.outputs.version_matrix) }}
upgrade_type: ["UI way", "Docker way", "Podman way"]
with:
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pre_upgrade_tests: '@config-pre-upgrade'
post_upgrade_tests: '@config-post-upgrade'
pmm_server_start_version: ${{ matrix.old_version }}
pmm_client_start_version: ${{ matrix.old_version }}
upgrade_type: ${{ matrix.upgrade_type }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
services_list: ''
repository: ${{ inputs.repository || 'dev-latest'}}
version_string_from: ${{needs.get_versions.outputs.start_version}}
version_string_to: ${{needs.get_versions.outputs.finish_version}}
rbac:
name: "RBAC / User Roles"
uses: ./.github/workflows/runner-e2e-upgrade-tests.yml
secrets: inherit
needs: get_versions
strategy:
fail-fast: false
matrix:
old_version: ${{ fromJSON(needs.get_versions.outputs.version_matrix) }}
upgrade_type: ["UI way", "Docker way", "Podman way"]
with:
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pre_upgrade_tests: '@rbac-pre-upgrade'
post_upgrade_tests: '@rbac-post-upgrade'
pmm_server_start_version: ${{ matrix.old_version }}
pmm_client_start_version: ${{ matrix.old_version }}
upgrade_type: ${{ matrix.upgrade_type }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
services_list: '--addclient=ps,1 --addclient=pdpgsql,1'
repository: ${{ inputs.repository || 'dev-latest'}}
version_string_from: ${{needs.get_versions.outputs.start_version}}
version_string_to: ${{needs.get_versions.outputs.finish_version}}
# portal:
# ### '/' in the job name is for good sub-jobs grouping
# name: Portal / Portal
# uses: ./.github/workflows/runner-e2e-upgrade-tests.yml
# secrets: inherit
# needs: get_versions
# strategy:
# fail-fast: false
# matrix:
# old_version: ${{ fromJSON(needs.get_versions.outputs.version_matrix) }}
# upgrade_type: [ "UI way", "Docker way" ]
# with:
# pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
# pre_upgrade_tests: '@pre-pmm-portal-upgrade'
# post_upgrade_tests: '@post-pmm-portal-upgrade'
# pmm_server_start_version: ${{ matrix.old_version }}
# pmm_client_start_version: ${{ matrix.old_version }}
# upgrade_type: ${{ matrix.upgrade_type }}
# pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
# services_list: ''
# repository: ${{ inputs.repository || 'dev-latest'}}
# version_string_from: ${{needs.get_versions.outputs.start_version}}
# version_string_to: ${{needs.get_versions.outputs.finish_version}}
# inventory:
# # TODO: add / in the job names for good sub-jobs grouping
# name: 'Inventory'
# uses: ./.github/workflows/runner-e2e-upgrade-tests.yml
# secrets: inherit
# needs: get_versions
# strategy:
# fail-fast: false
# matrix:
# old_version: ${{ fromJSON(needs.get_versions.outputs.version_matrix) }}
# upgrade_type: [ "UI way", "Docker way" ]
# with:
# pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch }}
# pre_upgrade_tests: '@inventory-pre-upgrade'
# post_upgrade_tests: '@inventory-post-upgrade'
# pmm_server_start_version: ${{ inputs.pmm_server_start_version }}
# pmm_client_start_version: ${{ inputs.pmm_client_start_version }}
# upgrade_type: ${{ inputs.upgrade_type }}
# pmm_qa_branch: ${{ inputs.pmm_qa_branch }}
# services_list: '--addclient=modb,1'
# repository: ${{ inputs.repository }}
# version_string_from: ${{needs.get_versions.outputs.start_version}}
# version_string_to: ${{needs.get_versions.outputs.finish_version}}