Skip to content
This repository was archived by the owner on Jun 22, 2024. It is now read-only.

Commit 46c7191

Browse files
authored
Merge pull request #65 from seleniumhq-community/4.18.0
Sync upstream 4.18.0 [deploy]
2 parents e22b1f0 + 407e981 commit 46c7191

File tree

126 files changed

+2814
-1256
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+2814
-1256
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ body:
5656
attributes:
5757
label: Docker Selenium version (image tag)
5858
description: What version of Docker Selenium are you using?
59-
placeholder: 4.17.0-20240123? Please use the full tag, avoid "latest"
59+
placeholder: 4.18.0-20240220? Please use the full tag, avoid "latest"
6060
validations:
6161
required: true
6262
- type: input

.github/workflows/build-test.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
name: Build & test
2+
concurrency:
3+
group: ${{ github.workflow }}
24

35
on:
6+
workflow_dispatch:
47
push:
58
paths-ignore:
69
- '**.md'
@@ -19,11 +22,11 @@ jobs:
1922
matrix:
2023
use-random-user: [false, true]
2124
steps:
22-
- uses: actions/checkout@v4
25+
- uses: actions/checkout@main
2326
- name: Output Docker info
2427
run: docker info
2528
- name: Set up Python
26-
uses: actions/setup-python@v5.0.0
29+
uses: actions/setup-python@main
2730
with:
2831
python-version: '3.11'
2932
check-latest: true
@@ -44,7 +47,7 @@ jobs:
4447
- name: Build Docker images
4548
run: VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make build
4649
- name: Test Docker images
47-
uses: nick-invision/retry@v2.9.0
50+
uses: nick-invision/retry@master
4851
with:
4952
timeout_minutes: 20
5053
max_attempts: 3

.github/workflows/deploy.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ name: Deploys
22

33
on:
44
workflow_dispatch:
5-
# push:
6-
# branches:
7-
# - trunk
5+
push:
6+
branches:
7+
- trunk
88

99
jobs:
1010
deploy:
@@ -15,7 +15,7 @@ jobs:
1515
permissions: write-all
1616
steps:
1717
- name: Checkout code
18-
uses: actions/checkout@v4
18+
uses: actions/checkout@main
1919
with:
2020
persist-credentials: false
2121
fetch-depth: 0
@@ -49,6 +49,8 @@ jobs:
4949
run: echo ${LATEST_TAG}
5050
- name: Update tag in docs and files
5151
run: ./update_tag_in_docs_and_files.sh ${LATEST_TAG} ${NEXT_TAG}
52+
- name: Update chart CHANGELOG
53+
run: ./generate_chart_changelog.sh HEAD
5254
- name: Build images
5355
run: VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make build
5456
- name: Login Docker Hub
@@ -57,7 +59,7 @@ jobs:
5759
DOCKER_USERNAME: ${{secrets.DOCKER_USERNAME}}
5860
DOCKER_PASSWORD: ${{secrets.DOCKER_PASSWORD}}
5961
- name: Deploy new images
60-
uses: nick-invision/retry@14672906e672a08bd6eeb15720e9ed3ce869cdd4 # v2
62+
uses: nick-invision/retry@master
6163
with:
6264
timeout_minutes: 20
6365
max_attempts: 3

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

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
name: Release Charts
2+
concurrency:
3+
group: ${{ github.workflow }}
24

35
on:
46
push:
@@ -14,7 +16,7 @@ jobs:
1416
permissions: write-all
1517
steps:
1618
- name: Checkout
17-
uses: actions/checkout@v4
19+
uses: actions/checkout@main
1820
with:
1921
fetch-depth: 0
2022

@@ -23,10 +25,14 @@ jobs:
2325
git config user.name "$GITHUB_ACTOR"
2426
git config user.email "[email protected]"
2527
28+
- name: Get chart release notes (chart_release_notes.md)
29+
run: ./generate_chart_changelog.sh HEAD
30+
2631
- name: Run chart-releaser
27-
uses: helm/chart-releaser-action@v1.6.0
32+
uses: helm/chart-releaser-action@main
2833
with:
2934
mark_as_latest: false
3035
skip_existing: true
3136
env:
3237
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
38+
CR_RELEASE_NOTES_FILE: RELEASE_NOTES.md
Lines changed: 64 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
name: Lint and Test Helm Charts
1+
name: Test Helm Charts
2+
concurrency:
3+
group: ${{ github.workflow }}
24

35
on:
46
push:
@@ -8,32 +10,53 @@ on:
810
paths-ignore:
911
- '**.md'
1012
workflow_dispatch:
13+
inputs:
14+
request-timeout:
15+
description: 'Test parameter for different request timeout'
16+
required: false
17+
default: '370'
18+
schedule:
19+
- cron: '0 0 * * *'
1120

1221
permissions:
1322
contents: read
1423

1524
jobs:
1625
build-and-test:
17-
name: Test Helm charts
26+
name: Test K8s
1827
runs-on: ubuntu-latest
1928
strategy:
2029
fail-fast: false
2130
matrix:
22-
test-strategy: [chart_test, chart_test_parallel_autoscaling, chart_test_https, chart_test_parallel_autoscaling_https]
31+
include:
32+
- k8s-version: 'v1.25.16'
33+
test-strategy: job
34+
cluster: 'kind'
35+
- k8s-version: 'v1.26.14'
36+
test-strategy: deployment
37+
cluster: 'kind'
38+
- k8s-version: 'v1.27.11'
39+
test-strategy: job_https
40+
cluster: 'kind'
41+
- k8s-version: 'v1.28.7'
42+
test-strategy: job_hostname
43+
cluster: 'minikube'
44+
- k8s-version: 'v1.29.2'
45+
test-strategy: deployment_https
46+
cluster: 'minikube'
47+
env:
48+
CLUSTER: ${{ matrix.cluster }}
49+
KUBERNETES_VERSION: ${{ matrix.k8s-version }}
50+
ARTIFACT_NAME: ${{ matrix.k8s-version }}-${{ matrix.test-strategy }}
2351
steps:
24-
- uses: actions/checkout@v4
52+
- uses: actions/checkout@main
2553
- name: Output Docker info
2654
run: docker info
2755
- name: Set up Python
28-
uses: actions/setup-python@v5.0.0
56+
uses: actions/setup-python@main
2957
with:
3058
python-version: '3.11'
3159
check-latest: true
32-
- name: Install CA certificates
33-
run: |
34-
sudo apt install openssl -y
35-
sudo apt install ca-certificates -y
36-
sudo update-ca-certificates --fresh
3760
- name: Get branch name (only for push to branch)
3861
if: github.event_name == 'push'
3962
run: echo "BRANCH=$(echo ${PUSH_BRANCH##*/})" >> $GITHUB_ENV
@@ -51,36 +74,54 @@ jobs:
5174
echo "BUILD_DATE=$(date '+%Y%m%d')" >> $GITHUB_ENV
5275
echo "IMAGE_REGISTRY=artifactory/selenium" >> $GITHUB_ENV
5376
- name: Setup Kubernetes environment
54-
run: make chart_setup_env
55-
- name: Build Docker images
56-
run: BUILD_ARGS="--build-arg TARGETARCH=amd64" NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make build
57-
- name: Build and lint charts
77+
uses: nick-invision/retry@master
78+
with:
79+
timeout_minutes: 10
80+
max_attempts: 3
81+
command: CLUSTER=${CLUSTER} make chart_setup_env
82+
- name: Build Helm charts
5883
run: |
5984
BUILD_DATE=${BUILD_DATE} make chart_build
6085
echo "CHART_PACKAGE_PATH=$(cat /tmp/selenium_chart_version)" >> $GITHUB_ENV
6186
echo "CHART_FILE_NAME=$(basename $(cat /tmp/selenium_chart_version))" >> $GITHUB_ENV
87+
- name: Build Docker images
88+
run: NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make build
6289
- name: Setup Kubernetes cluster
63-
run: NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make chart_cluster_setup
64-
- name: Test Selenium Grid on Kubernetes
65-
uses: nick-invision/[email protected]
90+
uses: nick-invision/retry@master
91+
with:
92+
timeout_minutes: 10
93+
max_attempts: 3
94+
command: CLUSTER=${CLUSTER} KUBERNETES_VERSION=${KUBERNETES_VERSION} NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make chart_cluster_setup
95+
- name: Test chart template
96+
run: NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make chart_test_template
97+
- name: Test set custom CA certificate
98+
run: NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make test_custom_ca_cert
99+
- name: Set test parameters
100+
if: (matrix.test-strategy == 'job' || matrix.test-strategy == 'deployment') && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch')
101+
run: |
102+
echo "AUTOSCALING_POLL_INTERVAL=${AUTOSCALING_POLL_INTERVAL}" >> $GITHUB_ENV
103+
env:
104+
AUTOSCALING_POLL_INTERVAL: ${{ github.event.inputs.request-timeout || '370' }}
105+
- name: Test Selenium Grid on Kubernetes ${{ matrix.k8s-version }} with Autoscaling ${{ matrix.test-strategy }}
106+
uses: nick-invision/retry@master
66107
with:
67108
timeout_minutes: 30
68109
max_attempts: 3
69110
command: |
70-
NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make ${{ matrix.test-strategy }}
111+
NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make chart_test_autoscaling_${{ matrix.test-strategy }}
71112
- name: Cleanup Kubernetes cluster
72113
if: always()
73-
run: make chart_cluster_cleanup
114+
run: CLUSTER=${CLUSTER} make chart_cluster_cleanup
74115
- name: Upload Helm chart package
75116
if: always()
76-
uses: actions/upload-artifact@v4
117+
uses: actions/upload-artifact@main
77118
with:
78-
name: ${{ matrix.test-strategy }}_${{ env.CHART_FILE_NAME }}
119+
name: ${{ env.ARTIFACT_NAME }}_${{ env.CHART_FILE_NAME }}
79120
path: ${{ env.CHART_PACKAGE_PATH }}
80121
- name: Upload chart test artifacts
81122
if: always()
82-
uses: actions/upload-artifact@v4
123+
uses: actions/upload-artifact@main
83124
with:
84-
name: ${{ matrix.test-strategy }}-artifacts
125+
name: ${{ env.ARTIFACT_NAME }}-artifacts
85126
path: ./tests/tests/
86127
if-no-files-found: ignore

.github/workflows/label-commenter.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@ jobs:
1313
comment:
1414
runs-on: ubuntu-latest
1515
steps:
16-
- uses: actions/checkout@v4
16+
- uses: actions/checkout@main
1717
- name: Label Commenter
1818
uses: peaceiris/actions-label-commenter@v1

.github/workflows/nightly.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
permissions: write-all
1212
steps:
1313
- name: Checkout code
14-
uses: actions/checkout@v4
14+
uses: actions/checkout@main
1515
with:
1616
persist-credentials: false
1717
fetch-depth: 0
@@ -74,7 +74,7 @@ jobs:
7474
- name: Create release notes (release_notes.md)
7575
run: ./generate_release_notes.sh ${LATEST_TAG} origin/trunk ${GRID_VERSION} ${BUILD_DATE}
7676
- name: Set up Python
77-
uses: actions/setup-python@v5.0.0
77+
uses: actions/setup-python@main
7878
with:
7979
python-version: '3.11'
8080
check-latest: true

.github/workflows/scan-dockerfile.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
name: Scan Dockerfile vulnerabilities
2+
concurrency:
3+
group: ${{ github.workflow }}
24

35
on:
46
push:
@@ -17,7 +19,7 @@ jobs:
1719
permissions: write-all
1820
runs-on: ubuntu-latest
1921
steps:
20-
- uses: actions/checkout@v4
22+
- uses: actions/checkout@main
2123
- name: Set severity for PRs
2224
if: github.event_name == 'pull_request' || github.event_name == 'push'
2325
run: |
@@ -36,7 +38,7 @@ jobs:
3638
format: 'sarif'
3739
output: 'source-results.sarif'
3840
scanners: 'vuln,secret,misconfig'
39-
skip-dirs: 'tests,Video,NodeChromium,NodeFirefox'
41+
skip-dirs: 'tests,Video'
4042
exit-code: '${{ env.EXIT_CODE }}'
4143
severity: '${{ env.SEVERITY }}'
4244
limit-severities-for-sarif: true

.github/workflows/test-video.yml

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
name: Test video files
2+
concurrency:
3+
group: ${{ github.workflow }}
24

35
on:
6+
workflow_dispatch:
47
push:
58
paths-ignore:
69
- '**.md'
@@ -16,11 +19,11 @@ jobs:
1619
name: Test video recorded through Docker Selenium
1720
runs-on: ubuntu-latest
1821
steps:
19-
- uses: actions/checkout@v4
22+
- uses: actions/checkout@main
2023
- name: Output Docker info
2124
run: docker info
2225
- name: Set up Python
23-
uses: actions/setup-python@v5.0.0
26+
uses: actions/setup-python@main
2427
with:
2528
python-version: '3.11'
2629
check-latest: true
@@ -41,17 +44,17 @@ jobs:
4144
- name: Run Docker Compose to record video
4245
run: USE_RANDOM_USER_ID=${USE_RANDOM_USER} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make test_video
4346
- name: Upload recorded Chrome video
44-
uses: actions/upload-artifact@v4
47+
uses: actions/upload-artifact@main
4548
with:
4649
name: chrome_video
4750
path: ./tests/videos/chrome_video.mp4
4851
- name: Upload recorded Edge video
49-
uses: actions/upload-artifact@v4
52+
uses: actions/upload-artifact@main
5053
with:
5154
name: edge_video
5255
path: ./tests/videos/edge_video.mp4
5356
- name: Upload recorded Firefox video
54-
uses: actions/upload-artifact@v4
57+
uses: actions/upload-artifact@main
5558
with:
5659
name: firefox_video
5760
path: ./tests/videos/firefox_video.mp4

.github/workflows/update-chart-changelog.yaml

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)