Skip to content

Don't use selenium standalone debug containers #133

Don't use selenium standalone debug containers

Don't use selenium standalone debug containers #133

Workflow file for this run

# This workflow will download a prebuilt Ruby version, install dependencies and
# run tests with Rake
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
name: Build
"on": push
env:
CUCUMBER_PUBLISH_QUIET: true
RUBYOPTS: "--disable-did-you-mean"
NOKOGIRI_USE_SYSTEM_LIBRARIES: true
JAVA_OPTS: "-Djava.security.egd=file:/dev/urandom"
WD_CACHE_TIME: 0
jobs:
rack_smoke:
runs-on: ubuntu-latest
env:
HTML5_PARSING: true
strategy:
fail-fast: false
matrix:
ruby: ["3.0", "3.1", "3.2"]
task: ["rack_smoke", "cucumber"]
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run smoke tests
run: bundle exec rake ${{ matrix.task }}
headless:
runs-on: ubuntu-latest
env:
HEADLESS: true
strategy:
# Ensure all jobs are run to completion
fail-fast: false
matrix:
ruby: ["3.2"]
task: ["spec_chrome", "spec_firefox"]
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests
run: bundle exec rake ${{ matrix.task }}
headless_base_versions:
runs-on: ubuntu-latest
env:
HEADLESS: true
BUNDLE_GEMFILE: gemfiles/Gemfile.base-versions
strategy:
# Ensure all jobs are run to completion
fail-fast: false
matrix:
ruby: ["3.0"]
task: ["spec_chrome", "spec_firefox"]
steps:
- uses: actions/checkout@v4
- name: Install non-ruby dependencies
run: |
sudo apt-get update
sudo apt-get install libxslt-dev
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests
run: bundle exec rake ${{ matrix.task }}
remote_chrome:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: ["3.0"]
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run remote Chrome
run: docker-compose up -d selenium_chrome
- name: Run specs
run: bundle exec rake spec_chrome_remote
remote_firefox:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: ["3.1"]
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run remote Firefox
run: docker-compose up -d selenium_firefox
- name: Run specs
run: bundle exec rake spec_firefox_remote
non_headless:
runs-on: ubuntu-latest
strategy:
# Ensure all jobs are run to completion
fail-fast: false
matrix:
ruby: ["3.0"]
task: ["spec_chrome", "spec_firefox"]
steps:
- uses: actions/checkout@v4
- name: Install non-ruby dependencies
run: |
sudo apt-get update
sudo apt-get install xvfb fluxbox
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests inside a window manager
run: xvfb-run sh -c "fluxbox & bundle exec rake ${{ matrix.task }}; killall fluxbox"
rack_3:
runs-on: ubuntu-latest
env:
HEADLESS: true
BUNDLE_GEMFILE: gemfiles/Gemfile.rack3
strategy:
fail-fast: false
matrix:
ruby: ["3.2"]
task: ["spec_rack"]
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run smoke tests
run: bundle exec rake ${{ matrix.task }}