WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Commit 209cf00

Browse files
add p0 provisioning test for alibaba
1 parent 973bab3 commit 209cf00

File tree

13 files changed

+1339
-268
lines changed

13 files changed

+1339
-268
lines changed

.github/workflows/alibaba.yaml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# This workflow calls the main workflow with custom variables
2+
name: Alibaba-E2E
3+
run-name: Alibaba on Rancher ${{ inputs.rancher_version || 'head/2.13' }} deployed on ${{ inputs.k3s_version || 'v1.34.1+k3s1' }}
4+
5+
on:
6+
schedule:
7+
- cron: "0 1 * * 1,4" # On Monday and Thursday
8+
workflow_dispatch: # Allow running manually on demand
9+
inputs:
10+
rancher_version:
11+
description: Rancher version channel/version/head_version latest/latest, latest/2.9.3[-rc2], prime/2.9.3, prime/devel/2.9, prime-optimus/2.9.3-rc2
12+
required: true
13+
type: string
14+
default: head/2.13
15+
k3s_version:
16+
description: k3s version of local cluster
17+
required: true
18+
type: string
19+
default: v1.34.1+k3s1
20+
runner_template:
21+
description: Runner template to use
22+
default: hosted-prov-e2e-ci-runner-spot-n2-highmem-16-gl-template-v3
23+
type: string
24+
operator_nightly_chart:
25+
description: Install hosted-provider nightly chart
26+
default: true
27+
required: true
28+
type: boolean
29+
destroy_runner:
30+
description: Destroy the auto-generated self-hosted runner
31+
default: true
32+
type: boolean
33+
downstream_cluster_cleanup:
34+
description: Cleanup downstream clusters after test
35+
default: true
36+
type: boolean
37+
proxy:
38+
description: Install Rancher behind proxy
39+
type: boolean
40+
default: false
41+
rancher_installed:
42+
description: Rancher details if already installed
43+
default: 'hostname/password'
44+
type: string
45+
tests_to_run:
46+
description: Tests to run (p0_provisioning)
47+
type: string
48+
required: true
49+
default: p0_provisioning
50+
qase_run_id:
51+
description: Qase run ID where the results will be reported (auto|none|existing_run_id)
52+
default: none
53+
type: string
54+
55+
jobs:
56+
alibaba-e2e:
57+
uses: ./.github/workflows/main.yaml
58+
secrets: inherit
59+
with:
60+
hosted_provider: alibaba
61+
rancher_version: ${{ inputs.rancher_version || 'head/2.13' }}
62+
k3s_version: ${{ inputs.k3s_version || 'v1.34.1+k3s1' }}
63+
operator_nightly_chart: ${{ inputs.operator_nightly_chart == true || (github.event_name == 'schedule' && true) }}
64+
tests_to_run: ${{ inputs.tests_to_run || 'p0_provisioning' }}
65+
destroy_runner: ${{ inputs.destroy_runner ==true || (github.event_name == 'schedule' && true) }}
66+
runner_template: ${{ inputs.runner_template || 'hosted-prov-e2e-ci-runner-spot-n2-highmem-16-gl-template-v3' }}
67+
rancher_installed: ${{ inputs.rancher_installed || 'hostname/password' }}
68+
downstream_cluster_cleanup: ${{ inputs.downstream_cluster_cleanup == true || (github.event_name == 'schedule' && true) }}
69+
proxy: ${{ inputs.proxy == true }}
70+
qase_run_id: ${{ inputs.qase_run_id || 'auto' }}

.github/workflows/main.yaml

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ on:
2323
rancher_installed:
2424
description: Rancher details if already installed
2525
type: string
26+
default: 'hostname/password'
2627
tests_to_run:
2728
required: true
2829
type: string
@@ -57,6 +58,8 @@ env:
5758
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
5859
AWS_KMS_KEY: ${{secrets.AWS_KMS_KEY}}
5960
EKS_REGION: ${{ secrets.EKS_REGION }}
61+
ALIBABA_ACCESS_KEY_ID: ${{ secrets.ALIBABA_ACCESS_KEY_ID }}
62+
ALIBABA_ACCESS_KEY_SECRET: ${{ secrets.ALIBABA_ACCESS_KEY_SECRET }}
6063
GCP_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
6164
AKS_CLIENT_ID: ${{ secrets.AKS_CLIENT_ID }}
6265
AKS_CLIENT_SECRET: ${{ secrets.AKS_CLIENT_SECRET }}
@@ -152,7 +155,7 @@ jobs:
152155
153156
- name: Set Rancher hostname / password
154157
run: |
155-
if [ ${{ inputs.rancher_installed }} != 'hostname/password' ]; then
158+
if [ "${{ inputs.rancher_installed }}" != "hostname/password" ]; then
156159
echo RANCHER_HOSTNAME="$(echo ${{ inputs.rancher_installed }} | cut -d'/' -f1)" >> ${GITHUB_ENV}
157160
echo RANCHER_PASSWORD="$(echo ${{ inputs.rancher_installed }} | cut -d'/' -f2)" >> ${GITHUB_ENV}
158161
else
@@ -214,13 +217,12 @@ jobs:
214217
215218
- name: Install k3s / Helm / CertManager / Rancher
216219
id: prepare-rancher
217-
if: ${{ inputs.rancher_installed == 'hostname/password' }}
218220
env:
219221
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
220222
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
221223
PROXY_HOST: ${{ env.PROXY_HOST }}
222224
RANCHER_BEHIND_PROXY: ${{ env.RANCHER_BEHIND_PROXY }}
223-
SKIP_RANCHER_INSTALL: ${{ startsWith(inputs.tests_to_run, 'k8s_chart_support_upgrade') == true}}
225+
SKIP_RANCHER_INSTALL: ${{ startsWith(inputs.tests_to_run, 'k8s_chart_support_upgrade') == true || inputs.rancher_installed != 'hostname/password' }}
224226
run: |
225227
if [ ${{ inputs.operator_nightly_chart }} == true ]; then
226228
export NIGHTLY_CHART="enabled"
@@ -256,7 +258,7 @@ jobs:
256258
rm -rf awscliv2.zip aws/
257259
258260
- name: Provisioning cluster tests
259-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'p0_provisioning') }}
261+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'p0_provisioning') }}
260262
env:
261263
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
262264
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -266,7 +268,7 @@ jobs:
266268
make e2e-provisioning-tests
267269
268270
- name: Import cluster tests
269-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'p0_import') }}
271+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'p0_import') }}
270272
env:
271273
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
272274
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -276,7 +278,7 @@ jobs:
276278
make e2e-import-tests
277279
278280
- name: Provisioning cluster P1 tests
279-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'p1_provisioning') }}
281+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'p1_provisioning') }}
280282
env:
281283
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
282284
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -286,7 +288,7 @@ jobs:
286288
make e2e-p1-provisioning-tests
287289
288290
- name: Import cluster P1 tests
289-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'p1_import') }}
291+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'p1_import') }}
290292
env:
291293
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
292294
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -296,7 +298,7 @@ jobs:
296298
make e2e-p1-import-tests
297299
298300
- name: Support matrix provisioning tests
299-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'support_matrix_provisioning') }}
301+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'support_matrix_provisioning') }}
300302
env:
301303
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
302304
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -306,7 +308,7 @@ jobs:
306308
make e2e-support-matrix-provisioning-tests
307309
308310
- name: Support matrix import tests
309-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'support_matrix_import') }}
311+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'support_matrix_import') }}
310312
env:
311313
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
312314
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -316,7 +318,7 @@ jobs:
316318
make e2e-support-matrix-import-tests
317319
318320
- name: K8s Chart Support provisioning tests
319-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'k8s_chart_support_provisioning') }}
321+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'k8s_chart_support_provisioning') }}
320322
env:
321323
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
322324
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -326,7 +328,7 @@ jobs:
326328
make e2e-k8s-chart-support-provisioning-tests
327329
328330
- name: K8s Chart Support import tests
329-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'k8s_chart_support_import') }}
331+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'k8s_chart_support_import') }}
330332
env:
331333
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
332334
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -336,7 +338,7 @@ jobs:
336338
make e2e-k8s-chart-support-import-tests
337339
338340
- name: Sync provisioning tests
339-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'sync_provisioning') }}
341+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'sync_provisioning') }}
340342
env:
341343
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
342344
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -346,7 +348,7 @@ jobs:
346348
make e2e-sync-provisioning-tests
347349
348350
- name: Sync import tests
349-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'sync_import') }}
351+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'sync_import') }}
350352
env:
351353
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
352354
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -356,7 +358,7 @@ jobs:
356358
make e2e-sync-import-tests
357359
358360
- name: Backup/Restore provisioning tests
359-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'backup_restore_provisioning') }}
361+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'backup_restore_provisioning') }}
360362
env:
361363
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
362364
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -367,7 +369,7 @@ jobs:
367369
make e2e-backup-restore-provisioning-tests
368370
369371
- name: Backup/Restore import tests
370-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'backup_restore_import') }}
372+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'backup_restore_import') }}
371373
env:
372374
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
373375
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -378,7 +380,7 @@ jobs:
378380
make e2e-backup-restore-import-tests
379381
380382
- name: K8s Chart Support Upgrade provisioning tests
381-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'k8s_chart_support_upgrade_provisioning') }}
383+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'k8s_chart_support_upgrade_provisioning') }}
382384
env:
383385
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
384386
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -390,7 +392,7 @@ jobs:
390392
make e2e-k8s-chart-support-provisioning-tests-upgrade
391393
392394
- name: K8s Chart Support Upgrade import tests
393-
if: ${{ !cancelled() && steps.prepare-rancher.outcome == 'success' && contains(inputs.tests_to_run, 'k8s_chart_support_upgrade_import') }}
395+
if: ${{ !cancelled() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') && contains(inputs.tests_to_run, 'k8s_chart_support_upgrade_import') }}
394396
env:
395397
RANCHER_HOSTNAME: ${{ env.RANCHER_HOSTNAME }}
396398
RANCHER_PASSWORD: ${{ env.RANCHER_PASSWORD }}
@@ -427,13 +429,13 @@ jobs:
427429
env:
428430
KUBECONFIG: /etc/rancher/k3s/k3s.yaml
429431
RANCHER_BEHIND_PROXY: ${{ inputs.proxy == true }}
430-
if: ${{ always() && steps.prepare-rancher.outcome == 'success' }}
432+
if: ${{ always() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') }}
431433
run: |
432434
chmod +x ${{ env.RANCHER_LOG_COLLECTOR }}
433435
bash ${{ env.RANCHER_LOG_COLLECTOR }}
434436
435437
- name: Upload cluster logs
436-
if: ${{ always() && steps.prepare-rancher.outcome == 'success' }}
438+
if: ${{ always() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') }}
437439
uses: actions/upload-artifact@v4
438440
with:
439441
name: support-logs-${{ inputs.hosted_provider }}
@@ -442,7 +444,7 @@ jobs:
442444

443445
- name: Add summary
444446
shell: bash
445-
if: ${{ always() && steps.prepare-rancher.outcome == 'success' }}
447+
if: ${{ always() && (inputs.rancher_installed != 'hostname/password' || steps.prepare-rancher.outcome == 'success') }}
446448
run: |
447449
# Add summary
448450
echo "## General information" >> ${GITHUB_STEP_SUMMARY}

.github/workflows/release-matrix.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@ on:
88
description: Rancher version channel/version/head_version
99
required: true
1010
type: string
11-
default: head/2.12
11+
default: head/2.13
1212
k3s_version:
1313
description: k3s version of local cluster
1414
required: true
1515
type: string
16-
default: v1.32.1+k3s1
16+
default: v1.34.1+k3s1
1717
operator_nightly_chart:
1818
description: Install hosted-provider nightly chart
1919
default: false
@@ -46,7 +46,7 @@ on:
4646
description: Providers to the run the test on
4747
required: true
4848
type: string
49-
default: '["eks", "gke", "aks"]'
49+
default: '["eks", "gke", "aks", "alibaba"]'
5050

5151
jobs:
5252
e2e-tests:

cattle-config-provisioning.yaml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,40 @@ aksClusterConfig:
2727
resourceGroup: ""
2828
resourceLocation: centralindia
2929
tags: {}
30+
aliClusterConfig:
31+
addons:
32+
- name: terway-eniip
33+
alibabaCredentialSecret: null
34+
clusterName: hosted-test-cluster
35+
clusterType: ManagedKubernetes
36+
endpointPublicAccess: true
37+
imported: false
38+
kubernetesVersion: 1.33.3-aliyun.1
39+
name: hosted-test-cluster
40+
nodePools:
41+
- dataDisks:
42+
- category: cloud_essd
43+
encrypted: "false"
44+
size: 40
45+
desiredSize: 2
46+
imageId: aliyun_3_x64_20G_alibase_20241218.vhd
47+
imageType: AliyunLinux3
48+
instanceTypes:
49+
- ecs.c7.xlarge
50+
- ecs.c7a.xlarge
51+
name: hosted-np1
52+
runtime: containerd
53+
runtimeVersion: 1.6.38
54+
systemDiskCategory: cloud_essd
55+
systemDiskSize: 20
56+
proxyMode: ipvs
57+
regionID: eu-central-1
58+
resourceGroupID: rg-aek3voaz6odbj6y
59+
serviceCIDR: 192.168.0.0/16
60+
snatEntry: true
61+
zoneIDs:
62+
- eu-central-1a
63+
- eu-central-1b
3064
awsCredentials:
3165
azureCredentials:
3266
environment: AzurePublicCloud

0 commit comments

Comments
 (0)