[pull] dev from galaxyproject:dev #4285
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Integration Selenium | |
on: | |
push: | |
paths-ignore: | |
- 'doc/**' | |
pull_request: | |
paths-ignore: | |
- 'doc/**' | |
schedule: | |
# Run at midnight UTC every Tuesday | |
- cron: '0 0 * * 2' | |
env: | |
GALAXY_SKIP_CLIENT_BUILD: '0' | |
GALAXY_TEST_DBURI: 'postgresql://postgres:postgres@localhost:5432/galaxy?client_encoding=utf8' | |
GALAXY_TEST_RAISE_EXCEPTION_ON_HISTORYLESS_HDA: '1' | |
GALAXY_TEST_SELENIUM_RETRIES: 1 | |
YARN_INSTALL_OPTS: --frozen-lockfile | |
GALAXY_CONFIG_SQLALCHEMY_WARN_20: '1' | |
GALAXY_DEPENDENCIES_INSTALL_WEASYPRINT: '1' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
setup-selenium: | |
uses: ./.github/workflows/setup_selenium.yaml | |
build-client: | |
uses: ./.github/workflows/build_client.yaml | |
test: | |
name: Test | |
needs: [setup-selenium, build-client] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ['3.8'] | |
services: | |
postgres: | |
image: postgres:13 | |
env: | |
POSTGRES_USER: postgres | |
POSTGRES_PASSWORD: postgres | |
POSTGRES_DB: postgres | |
ports: | |
- 5432:5432 | |
steps: | |
- if: github.event_name == 'schedule' | |
run: | | |
echo "GALAXY_CONFIG_OVERRIDE_METADATA_STRATEGY=extended" >> $GITHUB_ENV | |
echo "GALAXY_CONFIG_OVERRIDE_OUTPUTS_TO_WORKING_DIRECTORY=true" >> $GITHUB_ENV | |
- name: Prune unused docker image, volumes and containers | |
run: docker system prune -a -f | |
- uses: actions/checkout@v4 | |
with: | |
path: 'galaxy root' | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: 'pip' | |
cache-dependency-path: 'galaxy root/requirements.txt' | |
- name: Get full Python version | |
id: full-python-version | |
shell: bash | |
run: echo "version=$(python -c 'import sys; print("-".join(str(v) for v in sys.version_info))')" >> $GITHUB_OUTPUT | |
- name: Cache galaxy venv | |
uses: actions/cache@v4 | |
with: | |
path: 'galaxy root/.venv' | |
key: gxy-venv-${{ runner.os }}-${{ steps.full-python-version.outputs.version }}-${{ hashFiles('galaxy root/requirements.txt') }}-integration-selenium | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '18.12.1' | |
cache: 'yarn' | |
cache-dependency-path: 'galaxy root/client/yarn.lock' | |
- name: Restore client cache | |
uses: actions/cache@v4 | |
with: | |
key: galaxy-static-${{ needs.build-client.outputs.commit-id }} | |
path: 'galaxy root/static' | |
- name: Run tests | |
run: ./run_tests.sh --coverage -integration test/integration_selenium | |
working-directory: 'galaxy root' | |
- uses: codecov/codecov-action@v3 | |
with: | |
flags: integration-selenium | |
working-directory: 'galaxy root' | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: Integration Selenium test results (${{ matrix.python-version }}) | |
path: 'galaxy root/run_integration_tests.html' | |
- uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: Integration Selenium debug info (${{ matrix.python-version }}) | |
path: 'galaxy root/database/test_errors' |