Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin' into fedcm
Browse files Browse the repository at this point in the history
  • Loading branch information
cbiesinger committed Jun 25, 2024
2 parents 3ce6c63 + 84cc67e commit e7a13d3
Show file tree
Hide file tree
Showing 397 changed files with 6,366 additions and 4,996 deletions.
2 changes: 1 addition & 1 deletion .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ test --test_env=JRUBY_OPTS="--dev"

# Expose necessary variables for Selenium-Manager.

test:windows --test_env=PATH
test:windows --test_env=LOCALAPPDATA
test:windows --test_env=PROGRAMFILES="C:\\Program Files"
test:windows --test_env=PROGRAMFILES(X86)="C:\\Program Files (x86)"
Expand All @@ -101,7 +102,6 @@ test:ruby_debug --test_output=streamed --test_env=RUBY_DEBUG_FORK_MODE=parent --

build:release --config=remote
build:release --stamp
build:release --remote_download_outputs=toplevel

# RBE
import %workspace%/.bazelrc.remote
4 changes: 1 addition & 3 deletions .bazelrc.remote
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@ build:remote --remote_cache=grpcs://gypsum.cluster.engflow.com
# The number of cores available
build:remote -j 50

# Build Without The Bytes
build:remote --remote_download_minimal

build:remote --define=EXECUTOR=remote
build:remote --experimental_inmemory_dotd_files
build:remote --experimental_inmemory_jdeps_files
Expand Down Expand Up @@ -64,6 +61,7 @@ test:remote --test_timeout=600
build:remote-ci --config=remote
build:remote-ci --curses=no --color=yes --show_timestamps --show_progress_rate_limit=5
build:remote-ci --bes_upload_mode=wait_for_upload_complete
build:remote-ci --remote_download_minimal

# Configuration changes suggested by EngFlow
build:remote --grpc_keepalive_time=30s
Expand Down
2 changes: 1 addition & 1 deletion .bazelversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
7.1.2
7.2.0
6 changes: 6 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
changelog:
exclude:
labels:
-dependencies
authors:
- selenium-ci
20 changes: 2 additions & 18 deletions .github/workflows/bazel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ jobs:
node-version: ${{ inputs.node-version }}
- name: Setup Bazel with caching
if: inputs.caching
uses: bazel-contrib/[email protected].4
uses: bazel-contrib/[email protected].5
with:
bazelisk-cache: true
bazelrc: common --color=yes
Expand All @@ -130,7 +130,7 @@ jobs:
repository-cache: true
- name: Setup Bazel without caching
if: inputs.caching == false
uses: bazel-contrib/[email protected].4
uses: bazel-contrib/[email protected].5
with:
bazelrc: common --color=yes
- name: Setup Fluxbox and Xvfb
Expand All @@ -143,22 +143,6 @@ jobs:
- name: Set resolution
if: inputs.os == 'windows' && inputs.browser != ''
run: Set-DisplayResolution -Width 1920 -Height 1080 -Force
- name: Setup Chrome
if: inputs.browser == 'chrome'
uses: browser-actions/setup-chrome@latest
with:
chrome-version: ${{ inputs.browser-version || 'stable' }}
- name: Setup Firefox
if: inputs.browser == 'firefox'
uses: abhi1693/[email protected]
with:
browser: firefox
version: ${{ inputs.browser-version || 'latest' }}
- name: Setup Edge
if: inputs.browser == 'edge'
uses: browser-actions/setup-edge@latest
with:
edge-version: ${{ inputs.browser-version || 'stable' }}
- name: Setup Safari
if: inputs.browser == 'safari'
run: sudo safaridriver --enable
Expand Down
12 changes: 2 additions & 10 deletions .github/workflows/ci-javascript.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,9 @@ jobs:
cache-key: javascript-build
run: bazel build //javascript/node/selenium-webdriver:selenium-webdriver

small-tests:
name: Small Tests
needs: build
uses: ./.github/workflows/bazel.yml
with:
name: Small Tests
cache-key: javascript-small-tests
run: bazel test //javascript/node/selenium-webdriver:small-tests

browser-tests:
name: Browser Tests
needs: small-tests
needs: build
uses: ./.github/workflows/bazel.yml
strategy:
fail-fast: false
Expand All @@ -40,4 +31,5 @@ jobs:
bazel test
--flaky_test_attempts 3
--test_tag_filters ${{ matrix.browser }}
--local_test_jobs 1
//javascript/node/...
16 changes: 2 additions & 14 deletions .github/workflows/ci-ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,20 +73,12 @@ jobs:
- chrome
- edge
- firefox
- safari
os:
- ubuntu
- windows
- macos
exclude:
- browser: edge
os: ubuntu
- browser: edge
os: macos
- browser: safari
os: ubuntu
- browser: safari
os: windows
with:
name: Local Tests (${{ matrix.browser }}, ${{ matrix.os }})
browser: ${{ matrix.browser }}
Expand All @@ -99,6 +91,7 @@ jobs:
--local_test_jobs 1
--test_size_filters large
--test_tag_filters ${{ matrix.browser }}
${{ matrix.os != 'windows' && '--pin_browsers' || '' }}
//rb/spec/...
integration-tests-remote:
Expand All @@ -111,12 +104,6 @@ jobs:
include:
- browser: edge
os: windows
- browser: chrome
os: ubuntu
- browser: firefox
os: ubuntu
- browser: safari
os: macos
with:
name: Remote Tests (${{ matrix.browser }}, ${{ matrix.os }})
browser: ${{ matrix.browser }}
Expand All @@ -130,4 +117,5 @@ jobs:
--local_test_jobs 1
--test_size_filters large
--test_tag_filters ${{ matrix.browser }}-remote
${{ matrix.os != 'windows' && '--pin_browsers' || '' }}
//rb/spec/...
2 changes: 1 addition & 1 deletion .github/workflows/ci-rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
name: Tests (${{ matrix.os }})
cache-key: rust-test
os: ${{ matrix.os }}
run: bazel test --test_env=RUST_BACKTRACE=1 --flaky_test_attempts=3 //rust/...
run: bazel test --test_env=RUST_BACKTRACE=full --test_env=RUST_TEST_NOCAPTURE=1 --flaky_test_attempts=3 //rust/...

windows-stable:
name: "Windows Stable"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
with:
fetch-depth: 50
- name: Setup Bazel
uses: bazel-contrib/[email protected].4
uses: bazel-contrib/[email protected].5
with:
bazelisk-cache: true
cache-version: 2
Expand Down
23 changes: 6 additions & 17 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,7 @@ jobs:
cache-key: rb-nightly-${{ matrix.gem }}
run: |
export GEM_HOST_API_KEY="Bearer $GITHUB_TOKEN"
bazel run //rb:${{ matrix.gem }}-bump-nightly-version ${{ inputs.version }}
bazel run //rb:${{ matrix.gem }}-release-nightly
./go rb:release[nightly]
on-ruby-failure:
name: On Ruby Failure
runs-on: ubuntu-latest
Expand All @@ -64,11 +63,7 @@ jobs:
with:
name: Nightly Python Release
cache-key: python-nightly
run: |
./go "py:version[nightly]"
./go py:build
pip install twine
twine upload --repository testpypi bazel-bin/py/selenium-4*.whl bazel-bin/py/selenium-4*.tar.gz
run: ./go py:release[nightly]
secrets: inherit
on-python-failure:
name: On Python Failure
Expand All @@ -95,8 +90,7 @@ jobs:
with:
name: Nightly Java Release
cache-key: java-nightly
run: |
./go publish-maven-snapshot
run: ./go java:release[nightly]
secrets: inherit
on-java-failure:
name: On Java Failure
Expand Down Expand Up @@ -124,9 +118,7 @@ jobs:
name: Nightly DotNet Release
cache-key: dotnet-nightly
dotnet-version: '6.x'
run: |
./go "dotnet:version[nightly]"
./go dotnet:release
run: ./go dotnet:release[--stamp,nightly]
secrets: inherit
on-dotnet-failure:
name: On .NET Failure
Expand All @@ -153,9 +145,7 @@ jobs:
with:
name: Nightly Grid Release
cache-key: grid-nightly
run: |
echo build --stamp >>.bazelrc.local
./go java-release-zip
run: ./go java:package[--config=release]
nightly-release-files: build/dist/*.*
on-grid-failure:
name: On Grid Failure
Expand Down Expand Up @@ -189,8 +179,7 @@ jobs:
echo "//npm.pkg.github.com/:_authToken=${NODE_AUTH_TOKEN}" >> ~/.npmrc
echo "@seleniumhq:registry=https://npm.pkg.github.com" >> ~/.npmrc
echo "always-auth=true" >> ~/.npmrc
./go "node:version[nightly]"
./go node:release
./go node:release[--stamp,nightly]
secrets: inherit
on-javascript-failure:
name: On JavaScript Failure
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/pre-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
git checkout -b release-${{ github.event.inputs.version }}
- name: Update Rust Version
run: |
./go rust:version
./go rust:version[${{ github.event.inputs.version }}]
./go rust:version:commit
- name: Push changes
uses: ad-m/github-push-action@master
Expand Down Expand Up @@ -68,7 +68,7 @@ jobs:
fetch-tags: true
ref: release-${{ github.event.inputs.version }}
- name: Install Ruby
uses: ruby/setup-ruby@7dc18ff0ca6e3630d3f29d2a85ebf6cc27ae9d6c
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.1'
working-directory: 'rb'
Expand All @@ -80,17 +80,18 @@ jobs:
run: git reset HEAD~1
- name: Update everything including early release CDP
if: ${{ github.event.inputs.chrome_channel == 'early-stable' }}
run: ./go all:prepare['Beta']
run: ./go all:prepare[${{ github.event.inputs.version }},Beta]
- name: Update everything including released CDP
if: ${{ github.event.inputs.chrome_channel == 'stable' }}
run: ./go "all:prepare[Stable]"
run: ./go "all:prepare[${{ github.event.inputs.version }},Stable]"
- name: Create Pull Request
uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.SELENIUM_CI_TOKEN }}
author: Selenium CI Bot <[email protected]>
delete-branch: true
branch: release-preparation-${{ github.event.inputs.version }}
base: trunk
title: "[build] Prepare for release of Selenium ${{ github.event.inputs.version }}"
body: |
**Warning: Manually update the changelogs before merging**
Expand Down
65 changes: 65 additions & 0 deletions .github/workflows/stage-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Release Staging

on:
pull_request:
types: [closed]

env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

jobs:
github-release:
if: >
github.event.pull_request.merged == true &&
github.repository_owner == 'seleniumhq' &&
startsWith(github.event.pull_request.head.ref, 'release-preparation-')
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Extract version from branch name
id: extract_version
run: |
BRANCH_NAME="${{ github.event.pull_request.head.ref }}"
VERSION=$(echo $BRANCH_NAME | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Prep git
run: |
git config --local user.email "[email protected]"
git config --local user.name "Selenium CI Bot"
- name: Tag Release
run: |
git tag selenium-${{ env.VERSION }}
git push origin selenium-${{ env.VERSION }}
- name: Update Nightly Tag to Remove pre-release
run: |
git fetch --tags
git tag -d nightly || echo "Nightly tag not found"
git tag nightly
git push origin refs/tags/nightly --force
- name: Setup Java
uses: actions/setup-java@v3
with:
java-version: 17
distribution: 'temurin'
- name: Build and Stage Packages
run: ./go all:package[--config=release]
- name: Generate Draft Release
uses: softprops/action-gh-release@v2
with:
name: Selenium ${{ env.VERSION }}
body: |
## Detailed Changelogs by Component
<img src="https://www.selenium.dev/images/programming/java.svg" width="20" height="20"> **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)** &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img src="https://www.selenium.dev/images/programming/python.svg" width="20" height="20"> **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)** &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img src="https://www.selenium.dev/images/programming/csharp.svg" width="20" height="20"> **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)** &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img src="https://www.selenium.dev/images/programming/ruby.svg" width="20" height="20"> **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)** &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img src="https://www.selenium.dev/images/programming/javascript.svg" width="20" height="20"> **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/node/selenium-webdriver/CHANGES.md)** &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img src="https://www.selenium.dev/images/browsers/internet-explorer.svg" width="20" height="20"> **[IEDriver](https://github.com/SeleniumHQ/selenium/blob/trunk/cpp/iedriverserver/CHANGELOG)**
<br>
tag_name: selenium-${{ env.VERSION }}
draft: true
generate_release_notes: true
prerelease: false
files: build/dist/*.*

update-documentation:
needs: github-release
uses: ./.github/workflows/update-documentation.yml
with:
tag: selenium-${{ needs.github-release.outputs.version }}
Loading

0 comments on commit e7a13d3

Please sign in to comment.