Skip to content

Commit c9d2ce5

Browse files
committed
[ci] Tests run on Linux arm64 hosted runners
Signed-off-by: Viet Nguyen Duc <[email protected]>
1 parent 575723a commit c9d2ce5

File tree

6 files changed

+163
-37
lines changed

6 files changed

+163
-37
lines changed

.circleci/config.yml

+13-13
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,6 @@ version: 2.1
33
workflows:
44
build-and-test-multi-arch:
55
jobs:
6-
- kubernetes-test:
7-
name: "K8s test - Playwright Connect Autoscaling Grid"
8-
platforms: linux/arm64
9-
machine-type: ubuntu2204arm64large
10-
k8s-version: 'v1.25.16'
11-
test-strategy: playwright_connect_grid
12-
cluster: 'minikube'
13-
helm-version: 'v3.11.3'
14-
docker-version: '24.0.9'
15-
test-upgrade: true
166
- kubernetes-test:
177
name: "K8s test - Autoscaling disabled"
188
platforms: linux/arm64
@@ -47,7 +37,7 @@ workflows:
4737
name: "K8s test - Autoscaling Jobs - HTTPS"
4838
platforms: linux/arm64
4939
machine-type: ubuntu2204arm64large
50-
k8s-version: 'v1.29.12'
40+
k8s-version: 'v1.29.13'
5141
test-strategy: job_https
5242
cluster: 'minikube'
5343
helm-version: 'v3.14.3'
@@ -57,7 +47,7 @@ workflows:
5747
name: "K8s test - Autoscaling Jobs - Ingress hostname"
5848
platforms: linux/arm64
5949
machine-type: ubuntu2204arm64large
60-
k8s-version: 'v1.30.8'
50+
k8s-version: 'v1.30.9'
6151
test-strategy: job_hostname
6252
cluster: 'minikube'
6353
helm-version: 'v3.15.4'
@@ -67,12 +57,22 @@ workflows:
6757
name: "K8s test - Autoscaling Deployments - HTTPS"
6858
platforms: linux/arm64
6959
machine-type: ubuntu2204arm64large
70-
k8s-version: 'v1.31.4'
60+
k8s-version: 'v1.31.5'
7161
test-strategy: deployment_https
7262
cluster: 'minikube'
7363
helm-version: 'v3.16.4'
7464
docker-version: '27.4.1'
7565
test-upgrade: true
66+
- kubernetes-test:
67+
name: "K8s test - Playwright Connect Autoscaling Grid"
68+
platforms: linux/arm64
69+
machine-type: ubuntu2204arm64large
70+
k8s-version: 'v1.32.1'
71+
test-strategy: playwright_connect_grid
72+
cluster: 'minikube'
73+
helm-version: 'v3.17.0'
74+
docker-version: '26.1.4'
75+
test-upgrade: true
7676
- docker-test:
7777
name: "Docker test - Use random user (true)"
7878
test-strategy: test

.github/actions/get-latest-upstream/action.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,20 @@ runs:
1818
shell: bash
1919
run: |
2020
sudo apt update
21-
sudo apt install gh
22-
echo "${{ inputs.gh_cli_token }}" | gh auth login --with-token
21+
sudo apt install jq
22+
AUTH_HEADER="Authorization: token ${{ inputs.gh_cli_token }}"
2323
if [ "${{ inputs.release }}" = "true" ]; then
2424
echo "Getting the latest stable release."
25-
RELEASE=$(gh release list -R SeleniumHQ/selenium | grep -v nightly | awk '{ print $4 }' | head -1)
25+
RELEASE=$(curl -s -H "$AUTH_HEADER" https://api.github.com/repos/SeleniumHQ/selenium/releases | jq -r '[.[] | select(.prerelease == false)] | .[0].tag_name')
2626
else
2727
echo "Getting the latest Nightly release."
28-
RELEASE=$(gh release list -R SeleniumHQ/selenium | grep nightly | awk '{ print $3 }' | head -1)
28+
RELEASE=$(curl -s -H "$AUTH_HEADER" https://api.github.com/repos/SeleniumHQ/selenium/releases | jq -r '[.[] | select(.prerelease == true)] | .[0].tag_name')
2929
if [ -z "${RELEASE}" ]; then
3030
echo "Nightly release not found, getting the latest stable release."
31-
RELEASE=$(gh release list -R SeleniumHQ/selenium | grep -v nightly | awk '{ print $4 }' | head -1)
31+
RELEASE=$(curl -s -H "$AUTH_HEADER" https://api.github.com/repos/SeleniumHQ/selenium/releases | jq -r '[.[] | select(.prerelease == false)] | .[0].tag_name')
3232
fi
3333
fi
34-
jar_file=$(gh release view -R SeleniumHQ/selenium ${RELEASE} | grep jar | awk '{ print $2 }' | tail -n 1)
34+
jar_file=$(curl -s -H "$AUTH_HEADER" https://api.github.com/repos/SeleniumHQ/selenium/releases/tags/${RELEASE} | jq -r '.assets[] | select(.name | endswith(".jar")) | .name' | tail -n 1)
3535
echo "Server package: ${jar_file}"
3636
VERSION=$(echo $jar_file | sed 's/selenium-server-//;s/\.jar//')
3737
echo "BASE_RELEASE=${RELEASE} | BASE_VERSION=${VERSION} | VERSION=${VERSION}"

.github/workflows/docker-test.yml

+57-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ permissions:
2929
jobs:
3030
build-and-test:
3131
name: Test Docker Selenium
32-
runs-on: ubuntu-24.04
32+
runs-on: ${{ matrix.os }}
3333
strategy:
3434
fail-fast: false
3535
matrix:
@@ -38,38 +38,93 @@ jobs:
3838
use-random-user: true
3939
test-video: false
4040
build-all: true
41+
os: ubuntu-24.04
4142
- test-strategy: test
4243
use-random-user: false
4344
test-video: false
4445
build-all: true
46+
os: ubuntu-24.04
4547
- test-strategy: test_video
4648
use-random-user: false
4749
test-video: true
4850
build-all: false
51+
os: ubuntu-24.04
4952
- test-strategy: test_video_dynamic_name
5053
use-random-user: false
5154
test-video: true
5255
build-all: false
56+
os: ubuntu-24.04
5357
- test-strategy: test_video_standalone
5458
use-random-user: false
5559
test-video: true
5660
build-all: false
61+
os: ubuntu-24.04
5762
- test-strategy: test_node_docker
5863
use-random-user: false
5964
test-video: true
6065
build-all: false
66+
os: ubuntu-24.04
6167
- test-strategy: test_standalone_docker
6268
use-random-user: false
6369
test-video: true
6470
build-all: false
71+
os: ubuntu-24.04
6572
- test-strategy: test_parallel
6673
use-random-user: false
6774
test-video: false
6875
build-all: false
76+
os: ubuntu-24.04
6977
- test-strategy: test_node_relay
7078
use-random-user: false
7179
test-video: false
7280
build-all: false
81+
os: ubuntu-24.04
82+
###
83+
- test-strategy: test
84+
use-random-user: true
85+
test-video: false
86+
build-all: true
87+
os: ubuntu-24.04-arm
88+
- test-strategy: test
89+
use-random-user: false
90+
test-video: false
91+
build-all: true
92+
os: ubuntu-24.04-arm
93+
- test-strategy: test_video
94+
use-random-user: false
95+
test-video: true
96+
build-all: false
97+
os: ubuntu-24.04-arm
98+
- test-strategy: test_video_dynamic_name
99+
use-random-user: false
100+
test-video: true
101+
build-all: false
102+
os: ubuntu-24.04-arm
103+
- test-strategy: test_video_standalone
104+
use-random-user: false
105+
test-video: true
106+
build-all: false
107+
os: ubuntu-24.04-arm
108+
- test-strategy: test_node_docker
109+
use-random-user: false
110+
test-video: true
111+
build-all: false
112+
os: ubuntu-24.04-arm
113+
- test-strategy: test_standalone_docker
114+
use-random-user: false
115+
test-video: true
116+
build-all: false
117+
os: ubuntu-24.04-arm
118+
- test-strategy: test_parallel
119+
use-random-user: false
120+
test-video: false
121+
build-all: false
122+
os: ubuntu-24.04-arm
123+
- test-strategy: test_node_relay
124+
use-random-user: false
125+
test-video: false
126+
build-all: false
127+
os: ubuntu-24.04-arm
73128
steps:
74129
- name: Free Disk Space (Ubuntu)
75130
uses: jlumbroso/free-disk-space@main
@@ -155,7 +210,7 @@ jobs:
155210
if: matrix.test-video == true
156211
uses: actions/upload-artifact@main
157212
with:
158-
name: "${{ matrix.test-strategy }}_artifacts"
213+
name: "${{ matrix.test-strategy }}_artifacts_${{ matrix.os }}"
159214
path: ./tests/videos/
160215
- name: Clean up Docker
161216
if: always()

.github/workflows/helm-chart-test.yml

+78-7
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,75 @@ permissions:
3434
jobs:
3535
build-and-test:
3636
name: Test K8s
37-
runs-on: ubuntu-24.04
37+
runs-on: ${{ matrix.os }}
3838
strategy:
3939
fail-fast: false
4040
matrix:
4141
include:
42-
- k8s-version: 'v1.25.16'
43-
test-strategy: playwright_connect_grid
42+
- k8s-version: 'v1.26.15'
43+
test-strategy: disabled
4444
cluster: 'minikube'
4545
helm-version: 'v3.11.3'
4646
docker-version: '26.1.4'
4747
python-version: '3.8'
4848
test-upgrade: true
49+
service-mesh: false
50+
os: ubuntu-24.04
51+
- k8s-version: 'v1.27.16'
52+
test-strategy: job
53+
cluster: 'minikube'
54+
helm-version: 'v3.12.3'
55+
docker-version: '26.1.4'
56+
python-version: '3.9'
57+
test-upgrade: true
58+
service-mesh: true
59+
os: ubuntu-24.04
60+
- k8s-version: 'v1.28.15'
61+
test-strategy: deployment
62+
cluster: 'minikube'
63+
helm-version: 'v3.13.3'
64+
docker-version: '26.1.4'
65+
python-version: '3.10'
66+
test-upgrade: true
67+
service-mesh: true
68+
os: ubuntu-24.04
69+
- k8s-version: 'v1.29.13'
70+
test-strategy: job_https
71+
cluster: 'minikube'
72+
helm-version: 'v3.14.3'
73+
docker-version: '26.1.4'
74+
python-version: '3.11'
75+
test-upgrade: true
76+
service-mesh: false
77+
os: ubuntu-24.04
78+
- k8s-version: 'v1.30.9'
79+
test-strategy: job_hostname
80+
cluster: 'minikube'
81+
helm-version: 'v3.15.4'
82+
docker-version: '26.1.4'
83+
python-version: '3.12'
84+
test-upgrade: true
85+
service-mesh: false
86+
os: ubuntu-24.04
87+
- k8s-version: 'v1.31.5'
88+
test-strategy: deployment_https
89+
cluster: 'minikube'
90+
helm-version: 'v3.16.4'
91+
docker-version: '27.4.1'
92+
python-version: '3.13'
93+
test-upgrade: true
94+
service-mesh: false
95+
os: ubuntu-24.04
96+
- k8s-version: 'v1.32.1'
97+
test-strategy: playwright_connect_grid
98+
cluster: 'minikube'
99+
helm-version: 'v3.17.0'
100+
docker-version: '26.1.4'
101+
python-version: '3.10'
102+
test-upgrade: true
49103
service-mesh: true
104+
os: ubuntu-24.04
105+
###
50106
- k8s-version: 'v1.26.15'
51107
test-strategy: disabled
52108
cluster: 'minikube'
@@ -55,6 +111,7 @@ jobs:
55111
python-version: '3.8'
56112
test-upgrade: true
57113
service-mesh: false
114+
os: ubuntu-24.04-arm
58115
- k8s-version: 'v1.27.16'
59116
test-strategy: job
60117
cluster: 'minikube'
@@ -63,6 +120,7 @@ jobs:
63120
python-version: '3.9'
64121
test-upgrade: true
65122
service-mesh: true
123+
os: ubuntu-24.04-arm
66124
- k8s-version: 'v1.28.15'
67125
test-strategy: deployment
68126
cluster: 'minikube'
@@ -71,30 +129,43 @@ jobs:
71129
python-version: '3.10'
72130
test-upgrade: true
73131
service-mesh: true
74-
- k8s-version: 'v1.29.12'
132+
os: ubuntu-24.04-arm
133+
- k8s-version: 'v1.29.13'
75134
test-strategy: job_https
76135
cluster: 'minikube'
77136
helm-version: 'v3.14.3'
78137
docker-version: '26.1.4'
79138
python-version: '3.11'
80139
test-upgrade: true
81140
service-mesh: false
82-
- k8s-version: 'v1.30.8'
141+
os: ubuntu-24.04-arm
142+
- k8s-version: 'v1.30.9'
83143
test-strategy: job_hostname
84144
cluster: 'minikube'
85145
helm-version: 'v3.15.4'
86146
docker-version: '26.1.4'
87147
python-version: '3.12'
88148
test-upgrade: true
89149
service-mesh: false
90-
- k8s-version: 'v1.31.4'
150+
os: ubuntu-24.04-arm
151+
- k8s-version: 'v1.31.5'
91152
test-strategy: deployment_https
92153
cluster: 'minikube'
93154
helm-version: 'v3.16.4'
94155
docker-version: '27.4.1'
95156
python-version: '3.13'
96157
test-upgrade: true
97158
service-mesh: false
159+
os: ubuntu-24.04-arm
160+
- k8s-version: 'v1.32.1'
161+
test-strategy: playwright_connect_grid
162+
cluster: 'minikube'
163+
helm-version: 'v3.17.0'
164+
docker-version: '26.1.4'
165+
python-version: '3.10'
166+
test-upgrade: true
167+
service-mesh: true
168+
os: ubuntu-24.04-arm
98169
env:
99170
CLUSTER: ${{ matrix.cluster }}
100171
KUBERNETES_VERSION: ${{ matrix.k8s-version }}
@@ -199,7 +270,7 @@ jobs:
199270
if: always()
200271
uses: actions/upload-artifact@main
201272
with:
202-
name: "${{ env.ARTIFACT_NAME }}_${{ env.CHART_FILE_NAME }}"
273+
name: "${{ env.ARTIFACT_NAME }}_${{ env.CHART_FILE_NAME }}_${{ matrix.os }}"
203274
path: ${{ env.CHART_PACKAGE_PATH }}
204275
- name: Upload chart test artifacts
205276
if: always()

.github/workflows/k8s-scaling-test.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -61,37 +61,37 @@ jobs:
6161
fail-fast: false
6262
matrix:
6363
include:
64-
- k8s-version: 'v1.31.4'
64+
- k8s-version: 'v1.31.5'
6565
test-strategy: test_k8s_autoscaling_job_count_strategy_default_in_chaos
6666
cluster: 'minikube'
6767
helm-version: 'v3.16.4'
6868
docker-version: '27.4.1'
6969
python-version: '3.13'
70-
- k8s-version: 'v1.31.4'
70+
- k8s-version: 'v1.31.5'
7171
test-strategy: test_k8s_autoscaling_job_count_strategy_default_with_node_max_sessions
7272
cluster: 'minikube'
7373
helm-version: 'v3.16.4'
7474
docker-version: '27.4.1'
7575
python-version: '3.13'
76-
- k8s-version: 'v1.31.4'
76+
- k8s-version: 'v1.31.5'
7777
test-strategy: test_k8s_autoscaling_job_count_strategy_default
7878
cluster: 'minikube'
7979
helm-version: 'v3.16.4'
8080
docker-version: '27.4.1'
8181
python-version: '3.13'
82-
- k8s-version: 'v1.31.4'
82+
- k8s-version: 'v1.31.5'
8383
test-strategy: test_k8s_autoscaling_deployment_count_in_chaos
8484
cluster: 'minikube'
8585
helm-version: 'v3.16.4'
8686
docker-version: '27.4.1'
8787
python-version: '3.13'
88-
- k8s-version: 'v1.31.4'
88+
- k8s-version: 'v1.31.5'
8989
test-strategy: test_k8s_autoscaling_deployment_count_with_node_max_sessions
9090
cluster: 'minikube'
9191
helm-version: 'v3.16.4'
9292
docker-version: '27.4.1'
9393
python-version: '3.13'
94-
- k8s-version: 'v1.31.4'
94+
- k8s-version: 'v1.31.5'
9595
test-strategy: test_k8s_autoscaling_deployment_count
9696
cluster: 'minikube'
9797
helm-version: 'v3.16.4'

0 commit comments

Comments
 (0)