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

Attempt to build and test on arm64 and amd64 using upstream trunk with chromium #57

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
980f915
Bump docker images to 4.13.0 (#1951)
luisfcorreia Sep 26, 2023
1872925
Update tag in docs and files [skip ci]
selenium-ci Sep 26, 2023
a1af630
Bumping Chart version
diemol Sep 26, 2023
51eafbe
Bump nick-invision/retry from 2.8.3 to 2.9.0 (#1952)
dependabot[bot] Sep 28, 2023
773c0dc
fix(obsolescence): bumped up packages (#1961)
amardeep2006 Oct 3, 2023
889b7f5
fix: update base image to use focal 20230801 (#1962)
imtheish97 Oct 3, 2023
410ca81
Add missing Ingress namespace field (#1966)
IronMage Oct 4, 2023
306b8fc
feat(keda): bumped up keda 2.12.0 (#1960)
amardeep2006 Oct 4, 2023
0049db7
Update tag in docs and files [skip ci]
selenium-ci Oct 4, 2023
69d9349
Bumping Chart version
diemol Oct 4, 2023
cefee2a
Bump images to 4.14.1 (#1970)
luisfcorreia Oct 16, 2023
37fb389
Update tag in docs and files [skip ci]
selenium-ci Oct 16, 2023
eea48b3
fix issue #1887: affinity rules for helm charts (again) (#1973)
sehaas Oct 16, 2023
a6bf003
Bump ad-m/github-push-action from 0.6.0 to 0.8.0 (#1971)
dependabot[bot] Oct 17, 2023
cf442bf
Bump actions/setup-python from 4.7.0 to 4.7.1 (#1965)
dependabot[bot] Oct 17, 2023
32ec173
Adds possibility to set node stereotype in standalone mode (#1967)
philippe-granet Oct 17, 2023
5c177a7
Update Dockerfile ubuntu version (#1980)
mtcolman Oct 20, 2023
3a03f97
Update tag in docs and files [skip ci]
selenium-ci Oct 20, 2023
01648f3
feat: video recording with pluggable upload container (#1881)
msvticket Oct 25, 2023
60ad27e
Update Video/Dockerfile with based image ffmpeg:6.0-alpine (#1981)
VietND96 Oct 25, 2023
9b4acaa
Update tag in docs and files [skip ci]
selenium-ci Oct 25, 2023
020ded4
Bumping chart version
diemol Oct 25, 2023
0f7367e
Fix minor issues after PR #1881 and #1981 (#1983)
VietND96 Oct 27, 2023
fe80aba
Improve default value for videoRecorder in chart (#1984)
VietND96 Oct 27, 2023
4f725b7
Improve chart templates in the section videoRecorder (#1987)
VietND96 Oct 30, 2023
b1c358c
Update to Selenium 4.15.0 (#1990)
luisfcorreia Nov 2, 2023
cef5534
Update tag in docs and files [skip ci]
selenium-ci Nov 2, 2023
599c704
feat(autoscaling): Unified parameters to set scaled options for brows…
VietND96 Nov 6, 2023
009d47c
Add chart parameter ingress.paths to configure custom paths (#1994)
VietND96 Nov 6, 2023
87c0cf6
Bump helm/chart-releaser-action from 1.5.0 to 1.6.0 (#1993)
dependabot[bot] Nov 6, 2023
fe17f6d
feat: Adding port to nodes service (#1996)
VietND96 Nov 8, 2023
e071a31
Update Dockerfile external jar versions (#1998)
mtcolman Nov 8, 2023
6b7356b
Update tag in docs and files [skip ci]
selenium-ci Nov 8, 2023
f5f90dd
Switching to Jammy (#1923)
diemol Nov 10, 2023
f291b8e
Update tag in docs and files [skip ci]
selenium-ci Nov 10, 2023
6f9708e
Update start-xvfb.sh
diemol Nov 10, 2023
f038e69
Bump dessant/lock-threads from 4.0.1 to 5.0.0 (#2012)
dependabot[bot] Nov 14, 2023
35a044a
feat(helm-test): Added helm test and linting (#2003)
amardeep2006 Nov 14, 2023
eec5ecc
Bug: Error setting name in helm release #2006 #2007 (#2009)
VietND96 Nov 14, 2023
373c3c3
corrected typo in selenium grid charts (#2010)
Thab310 Nov 14, 2023
b365646
Update Dockerfile - external jar version uplift (#2015)
mtcolman Nov 21, 2023
ad0a7a6
Setting driver and browser path via configuration (#2017)
diemol Nov 22, 2023
9bc083a
Update tag in docs and files [skip ci]
selenium-ci Nov 22, 2023
a14d80e
Bump dessant/lock-threads from 5.0.0 to 5.0.1 (#2019)
dependabot[bot] Nov 22, 2023
0ca1bb1
Bump nick-invision/retry from 2.8.3 to 2.9.0 (#2024)
dependabot[bot] Nov 23, 2023
82603e9
Update NodeChrome support latest version from GoogleChromeLabs (#2018)
VietND96 Nov 27, 2023
c3938aa
Update service.name as selenium-node-chrome (#2026)
alaahong Nov 27, 2023
bbef734
feat: CI Bot bump chart version along with new deploy image version (…
VietND96 Nov 27, 2023
e56a1fc
Feature run selenium tests grid on kubernetes via helm chart (#2027)
amardeep2006 Nov 27, 2023
7b3dfe9
test: Sanity tests Selenium Grid chart via Makefile commands (#2029)
VietND96 Nov 28, 2023
57c78c0
Update tag in docs and files [skip ci]
selenium-ci Nov 28, 2023
e3304b4
bug(#1888): TimeZone change behavior changed (#2031)
VietND96 Nov 29, 2023
7545bc9
feat(chart): distribution registry can be set global and individual c…
VietND96 Nov 29, 2023
b5dab36
bug(#2032): Rollback to use regular version in NodeChrome (#2033)
VietND96 Nov 29, 2023
991d245
test: Add sanity test for download file (#2034) [deploy]
VietND96 Nov 29, 2023
591e3f5
Update tag in docs and files
selenium-ci Nov 29, 2023
4c7703b
Update bug report template [skip ci]
VietND96 Nov 29, 2023
113bb0a
test(chart): Add test for setting registry to pull images (#2036)
VietND96 Nov 30, 2023
8fd00ef
bug(#2038): Rollback io.opentelemetry 1.31.0 - add test tracing enabl…
VietND96 Dec 1, 2023
e5d0aa6
feat: Video image with based FFmpeg-6.1 on Ubuntu-22.04 (#2042)
VietND96 Dec 1, 2023
c2a5b66
test(chart): Chart template render and assert output (#2043)
VietND96 Dec 1, 2023
99448df
bug(#1824): Container ENV SE_NODE_SESSION_TIMEOUT not take effect (#2…
VietND96 Dec 3, 2023
c4e4024
test(chart): Parallel tests execution against autoscaling in Kubernet…
VietND96 Dec 5, 2023
30a6cc3
Update chart CHANGELOG [skip ci]
VietND96 Dec 6, 2023
59cb6cb
Bump actions/setup-python from 4.7.1 to 4.8.0 (#2048)
dependabot[bot] Dec 6, 2023
da15922
Add build-arg to get based version from Makefile (#2049)
VietND96 Dec 6, 2023
e2843cc
feat(chart): Add default annotations for ingress nginx controller (#2…
VietND96 Dec 6, 2023
c4e7e10
Update to Selenium 4.16.0 [deploy]
VietND96 Dec 6, 2023
67c8a7b
Maintain test failure [deploy]
VietND96 Dec 6, 2023
6a12140
Update tag in docs and files
selenium-ci Dec 6, 2023
915f39a
Bump actions/setup-python from 4.8.0 to 5.0.0 (#2050)
dependabot[bot] Dec 7, 2023
93de6e8
Update to Selenium 4.16.1
VietND96 Dec 8, 2023
3e19181
feat(chart): Append subPath to ENV variable SE_NODE_GRID_URL (#2053)
VietND96 Dec 8, 2023
772d592
Add script to generate chart CHANGELOG after released (#2054)
VietND96 Dec 8, 2023
0b663b3
Update to Selenium 4.16.1 [deploy] (#2055)
VietND96 Dec 8, 2023
5fd5e05
Update tag in docs and files
selenium-ci Dec 8, 2023
245cca0
Workflow to update chart changelog [skip ci]
VietND96 Dec 8, 2023
790a435
Workflow to update chart changelog [skip ci]
VietND96 Dec 8, 2023
65d5490
Update chart CHANGELOG [skip ci]
selenium-ci Dec 8, 2023
d84b3a4
Update lock.yml
diemol Dec 9, 2023
a010cb0
Update workflow dev-beta browser images [skip-ci]
VietND96 Dec 11, 2023
9f187e0
feat: changing owner while creating container for download support (#…
VietND96 Dec 11, 2023
eda48ff
Warn if ulimit -n is too high when running Docker
VietND96 Dec 11, 2023
42f05d9
Guard against high `ulimit -n` in when starting vnc (#2058)
Earlopain Dec 12, 2023
b7e1c78
Upgrade dependencies version in Base image (#2059)
VietND96 Dec 12, 2023
7f38952
Update tag in docs and files
selenium-ci Dec 12, 2023
8ec470e
Update chart CHANGELOG [skip ci]
selenium-ci Dec 12, 2023
93da2b5
Add workflow to scan Dockerfile
VietND96 Dec 13, 2023
7d74d4f
bug: ENV variable SE_VNC_PASSWORD contains sensitive data (#2061)
VietND96 Dec 13, 2023
bc98d1c
Bump github/codeql-action from 2 to 3 (#2063)
dependabot[bot] Dec 14, 2023
d4caa16
Add chart version to bug report template
VietND96 Dec 14, 2023
15eec4d
Bump actions/upload-artifact from 3 to 4 (#2067)
dependabot[bot] Dec 15, 2023
56fc22a
fix: changing owner while creating container for download support (#2…
VietND96 Dec 15, 2023
47c5257
Add chromium image
fhoeben Dec 17, 2023
1ccd1a2
Update to also support arm64 architecture (except edge and chrome)
fhoeben Dec 17, 2023
e2db7fd
attempt to build and test on Circle CI
fhoeben Dec 18, 2023
0773a10
first step to create manifests
fhoeben Dec 18, 2023
b4db2cb
image to separate repo instead of tag
fhoeben Dec 19, 2023
9402924
use namespace from makefile when testing video
fhoeben Dec 19, 2023
b2723b0
add video workflow
fhoeben Dec 19, 2023
df717e0
Merge branch 'seleniarm_add_chromium_arm64_circle' into add_chromium_…
diemol Dec 19, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
386 changes: 324 additions & 62 deletions .circleci/config.yml

Large diffs are not rendered by default.

23 changes: 16 additions & 7 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,15 @@ body:
validations:
required: true
- type: textarea
id: repro-command
id: reproduce-command
attributes:
label: Command used to start Selenium Grid with Docker
label: Command used to start Selenium Grid with Docker (or Kubernetes)
description: |
What command do you use to start Selenium Grid with Docker?
What command do you use to start Selenium Grid with Docker (or Kubernetes)?
placeholder: |
Please share the script or docker-compose file used. This will be automatically
formatted into code, so no need for backticks.
If Kubernetes used, please share the YAML file, or chart values used to deploy the cluster.
Be sure to include an SSCCE (Short, Self Contained, Correct
[compilable] example) http://sscce.org/
render: shell
Expand All @@ -47,14 +48,22 @@ body:
attributes:
label: Operating System
description: What host operating system are you using to run docker-selenium?
placeholder: Windows 10? macOS BigSur? Ubuntu?
placeholder: Windows 10? macOS BigSur? Ubuntu? Kubernetes (Minikube, EKS, GKE, AKS, OpenShift, Rancher, etc.) version?
validations:
required: true
- type: input
id: version
attributes:
label: Docker Selenium version (tag)
label: Docker Selenium version (image tag)
description: What version of Docker Selenium are you using?
placeholder: 4.12.1-20230920? Please use the full tag, avoid "latest"
placeholder: 4.16.1-20231212? Please use the full tag, avoid "latest"
validations:
required: true
required: true
- type: input
id: chart-version
attributes:
label: Selenium Grid chart version (chart version)
description: What version of Selenium Grid chart are you using?
placeholder: 0.26.2?
validations:
required: false
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ updates:
interval: daily
time: '08:00'
open-pull-requests-limit: 99
- package-ecosystem: docker
directory: "/StandaloneChromium"
schedule:
interval: daily
time: '08:00'
open-pull-requests-limit: 99
- package-ecosystem: docker
directory: "/StandaloneFirefox"
schedule:
Expand Down Expand Up @@ -36,6 +42,12 @@ updates:
interval: daily
time: '08:00'
open-pull-requests-limit: 99
- package-ecosystem: docker
directory: "/NodeChromium"
schedule:
interval: daily
time: '08:00'
open-pull-requests-limit: 99
- package-ecosystem: docker
directory: "/"
schedule:
Expand Down
23 changes: 15 additions & 8 deletions .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,28 +2,31 @@ name: Build & test

on:
push:
paths-ignore:
- '.circleci/**'
pull_request:
paths-ignore:
- '.circleci/**'

permissions:
contents: read

jobs:
build-and-test:
# Skip job based on the commit message, only works in push to branches for now
if: contains(toJson(github.event.commits), '[skip ci]') == false
name: Build & test Docker images with random user
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
use-random-user: [false, true]
steps:
- uses: actions/checkout@v4
- name: Output Docker info
run: docker info
- name: Set up Python 3.8
uses: actions/setup-python@v4.7.0
- name: Set up Python
uses: actions/setup-python@v5.0.0
with:
python-version: 3.8
python-version: '3.11'
check-latest: true
- name: Get branch name (only for push to branch)
if: github.event_name == 'push'
run: echo "BRANCH=$(echo ${PUSH_BRANCH##*/})" >> $GITHUB_ENV
Expand All @@ -41,7 +44,11 @@ jobs:
- name: Build Docker images
run: VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make build
- name: Test Docker images
run: USE_RANDOM_USER_ID=${USE_RANDOM_USER} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make test
uses: nick-invision/[email protected]
with:
timeout_minutes: 20
max_attempts: 3
command: |
USE_RANDOM_USER_ID=${USE_RANDOM_USER} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make test
env:
USE_RANDOM_USER: ${{ matrix.use-random-user }}

14 changes: 7 additions & 7 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
# Only continue if the commit message has '[deploy]' in it
if: contains(toJson(github.event.commits), '[deploy]') == true
name: Deploy Docker images
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
Expand Down Expand Up @@ -51,25 +51,25 @@ jobs:
DOCKER_USERNAME: ${{secrets.DOCKER_USERNAME}}
DOCKER_PASSWORD: ${{secrets.DOCKER_PASSWORD}}
- name: Deploy new images
uses: nick-invision/retry@943e742917ac94714d2f408a0e8320f2d1fcafcd # v2
uses: nick-invision/retry@14672906e672a08bd6eeb15720e9ed3ce869cdd4 # v2
with:
timeout_minutes: 20
max_attempts: 3
command: VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make release
- name: Tag images as latest
uses: nick-invision/retry@943e742917ac94714d2f408a0e8320f2d1fcafcd # v2
uses: nick-invision/retry@14672906e672a08bd6eeb15720e9ed3ce869cdd4 # v2
with:
timeout_minutes: 20
max_attempts: 3
command: VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make tag_latest
- name: Deploy latest tag
uses: nick-invision/retry@943e742917ac94714d2f408a0e8320f2d1fcafcd # v2
uses: nick-invision/retry@14672906e672a08bd6eeb15720e9ed3ce869cdd4 # v2
with:
timeout_minutes: 20
max_attempts: 3
command: VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make release_latest
- name: Tag browser images
uses: nick-invision/retry@943e742917ac94714d2f408a0e8320f2d1fcafcd # v2
uses: nick-invision/retry@14672906e672a08bd6eeb15720e9ed3ce869cdd4 # v2
with:
timeout_minutes: 20
max_attempts: 3
Expand All @@ -78,9 +78,9 @@ jobs:
run: |
git config --local user.email "[email protected]"
git config --local user.name "Selenium CI Bot"
git commit -m "Update tag in docs and files [skip ci]" -a
git commit -m "Update tag in docs and files" -a
- name: Push changes
uses: ad-m/github-push-action@40bf560936a8022e68a3c00e7d2abefaf01305a6 # master
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.SELENIUM_CI_TOKEN }}
branch: trunk
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/helm-chart-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ on:
- trunk
paths:
- 'charts/selenium-grid/Chart.yaml'
workflow_dispatch:

jobs:
release:
Expand All @@ -23,6 +24,6 @@ jobs:
git config user.email "[email protected]"

- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.5.0
uses: helm/chart-releaser-action@v1.6.0
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
80 changes: 80 additions & 0 deletions .github/workflows/helm-chart-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Lint and Test Helm Charts

on:
push:
paths-ignore:
- '.circleci/**'
pull_request:
paths-ignore:
- '.circleci/**'
workflow_dispatch:

permissions:
contents: read

jobs:
build-and-test:
name: Test Helm charts
runs-on: ubuntu-latest
strategy:
matrix:
test-strategy: [chart_test, chart_test_parallel_autoscaling]
steps:
- uses: actions/checkout@v4
- name: Output Docker info
run: docker info
- name: Set up Python
uses: actions/[email protected]
with:
python-version: '3.11'
check-latest: true
- name: Get branch name (only for push to branch)
if: github.event_name == 'push'
run: echo "BRANCH=$(echo ${PUSH_BRANCH##*/})" >> $GITHUB_ENV
env:
PUSH_BRANCH: ${{ github.ref }}
- name: Get target branch name (only for PRs)
if: github.event_name == 'pull_request'
run: echo "BRANCH=$(echo ${TARGET_BRANCH##*/})" >> $GITHUB_ENV
env:
TARGET_BRANCH: ${{ github.head_ref }}
- name: Output branch name
run: echo ${BRANCH}
- name: Sets build date
run: |
echo "BUILD_DATE=$(date '+%Y%m%d')" >> $GITHUB_ENV
echo "IMAGE_REGISTRY=artifactory/selenium" >> $GITHUB_ENV
- name: Setup Kubernetes environment
run: make chart_setup_env
- name: Build Docker images
run: NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make build
- name: Build and lint charts
run: |
BUILD_DATE=${BUILD_DATE} make chart_build
echo "CHART_PACKAGE_PATH=$(cat /tmp/selenium_chart_version)" >> $GITHUB_ENV
echo "CHART_FILE_NAME=$(basename $(cat /tmp/selenium_chart_version))" >> $GITHUB_ENV
- name: Setup Kubernetes cluster
run: NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make chart_cluster_setup
- name: Test Selenium Grid on Kubernetes
uses: nick-invision/[email protected]
with:
timeout_minutes: 30
max_attempts: 3
command: |
NAME=${IMAGE_REGISTRY} VERSION=${BRANCH} BUILD_DATE=${BUILD_DATE} make ${{ matrix.test-strategy }}
- name: Cleanup Kubernetes cluster
if: always()
run: make chart_cluster_cleanup
- name: Upload Helm chart package
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.test-strategy }}_${{ env.CHART_FILE_NAME }}
path: ${{ env.CHART_PACKAGE_PATH }}
- name: Upload Helm chart template rendered
if: always()
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.test-strategy }}_chart_template_rendered.yaml
path: ./tests/tests/output_deployment.yaml
if-no-files-found: ignore
2 changes: 1 addition & 1 deletion .github/workflows/label-commenter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ permissions:

jobs:
comment:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Label Commenter
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/lock.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ jobs:
action:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@be8aa5be94131386884a6da4189effda9b14aa21 # v3
- uses: dessant/lock-threads@v5
with:
process-only: 'issues'
issue-lock-inactive-days: '30'
issue-inactive-days: '30'
issue-lock-reason: ''
issue-lock-comment: >
issue-comment: >
This issue has been automatically locked since there
has not been any recent activity after it was closed.
Please open a new issue for related bugs.
53 changes: 53 additions & 0 deletions .github/workflows/scan-dockerfile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Scan Dockerfile vulnerabilities

on:
push:
paths:
- '**/Dockerfile'
pull_request:
paths:
- '**/Dockerfile'
workflow_dispatch:
schedule:
- cron: '0 0 * * *'

jobs:
build-and-scan:
name: Scan Dockerfile vulnerabilities
permissions: write-all
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set severity for PRs
if: github.event_name == 'pull_request' || github.event_name == 'push'
run: |
echo "SEVERITY=HIGH,CRITICAL" >> $GITHUB_ENV
echo "EXIT_CODE=1" >> $GITHUB_ENV
- name: Set severity for others
if: github.event_name != 'pull_request' && github.event_name != 'push'
run: |
echo "SEVERITY=LOW,MEDIUM,HIGH,CRITICAL" >> $GITHUB_ENV
echo "EXIT_CODE=0" >> $GITHUB_ENV
- name: Scan source code
uses: aquasecurity/trivy-action@master
with:
scan-type: 'fs'
scan-ref: '.'
format: 'sarif'
output: 'source-results.sarif'
scanners: 'vuln,secret,misconfig'
skip-dirs: 'tests,Video'
exit-code: '${{ env.EXIT_CODE }}'
severity: '${{ env.SEVERITY }}'
limit-severities-for-sarif: true
- name: Upload source scan results to annotations
if: always()
uses: Ayrx/sarif_to_github_annotations@master
with:
sarif_file: 'source-results.sarif'
- name: Upload source scan results to GitHub Security tab
if: github.event_name != 'pull_request'
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: 'source-results.sarif'
category: source-results
Loading
Loading