mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-01 15:37:32 +08:00
6cdc2ace8a
Bumps the actions group with 6 updates in the / directory: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `7.0.0` | `7.0.1` | | [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) | `8.3.2` | `9.0.0` | | [docker/login-action](https://github.com/docker/login-action) | `4.4.0` | `4.6.0` | | [actions/setup-python](https://github.com/actions/setup-python) | `6.3.0` | `7.0.0` | | [github/codeql-action](https://github.com/github/codeql-action) | `4.37.1` | `4.37.6` | | [zizmorcore/zizmor-action](https://github.com/zizmorcore/zizmor-action) | `0.6.0` | `0.6.2` | Updates `actions/checkout` from 7.0.0 to 7.0.1 - [Release notes](https://github.com/actions/checkout/releases) - [Commits](https://github.com/actions/checkout/compare/v7...v7.0.1) Updates `astral-sh/setup-uv` from 8.3.2 to 9.0.0 - [Release notes](https://github.com/astral-sh/setup-uv/releases) - [Commits](https://github.com/astral-sh/setup-uv/compare/v8.3.2...v9.0.0) Updates `docker/login-action` from 4.4.0 to 4.6.0 - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v4.4.0...v4.6.0) Updates `actions/setup-python` from 6.3.0 to 7.0.0 - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v6.3.0...v7.0.0) Updates `github/codeql-action` from 4.37.1 to 4.37.6 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/v4.37.1...v4.37.6) Updates `zizmorcore/zizmor-action` from 0.6.0 to 0.6.2 - [Release notes](https://github.com/zizmorcore/zizmor-action/releases) - [Commits](https://github.com/zizmorcore/zizmor-action/compare/6599ee8b7a49aef6a770f63d261d214911a7ce02...3dc1ecc9bcb9e94e9b2c709687979e1298497054) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions - dependency-name: actions/setup-python dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: astral-sh/setup-uv dependency-version: 9.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: docker/login-action dependency-version: 4.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: github/codeql-action dependency-version: 4.37.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions - dependency-name: zizmorcore/zizmor-action dependency-version: 0.6.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com>
151 lines
5.9 KiB
YAML
151 lines
5.9 KiB
YAML
name: Integration
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- 'client/**'
|
|
- 'doc/**'
|
|
- 'lib/galaxy_test/selenium/**'
|
|
- 'packages/**'
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'client/**'
|
|
- 'doc/**'
|
|
- 'lib/galaxy_test/selenium/**'
|
|
- 'packages/**'
|
|
schedule:
|
|
# Run at midnight UTC every Tuesday
|
|
- cron: '0 0 * * 2'
|
|
workflow_dispatch:
|
|
env:
|
|
GALAXY_TEST_RAISE_EXCEPTION_ON_HISTORYLESS_HDA: '1'
|
|
GALAXY_CONFIG_SQLALCHEMY_WARN_20: '1'
|
|
GALAXY_DEPENDENCIES_INSTALL_WEASYPRINT: '1'
|
|
GALAXY_DEPENDENCIES_INSTALL_HTCONDOR: '1'
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
permissions: {}
|
|
jobs:
|
|
prepare-mulled-cache:
|
|
name: Prepare mulled resolution cache
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Select weekly cache
|
|
run: echo "MULLED_CACHE_WEEK=$(date -u +%G-%V)" >> "$GITHUB_ENV"
|
|
- name: Restore Biocontainers repository index
|
|
id: restore-mulled-cache
|
|
uses: actions/cache/restore@v6.1.0
|
|
with:
|
|
key: biocontainers-repository-index-${{ env.MULLED_CACHE_WEEK }}
|
|
path: '${{ runner.temp }}/mulled-resolution-seed'
|
|
- name: Check out Galaxy for mulled-cache
|
|
if: steps.restore-mulled-cache.outputs.cache-hit != 'true'
|
|
uses: actions/checkout@v7.0.1
|
|
with:
|
|
path: 'galaxy cache source'
|
|
persist-credentials: false
|
|
- name: Install uv
|
|
if: steps.restore-mulled-cache.outputs.cache-hit != 'true'
|
|
uses: astral-sh/setup-uv@v9.0.0
|
|
with:
|
|
python-version: '3.10'
|
|
- name: Fetch Biocontainers repository index
|
|
id: fetch-mulled-cache
|
|
if: steps.restore-mulled-cache.outputs.cache-hit != 'true'
|
|
continue-on-error: true
|
|
env:
|
|
SEED_DIRECTORY: '${{ runner.temp }}/mulled-resolution-seed'
|
|
run: |
|
|
uv tool run --from './galaxy cache source/packages/tool_util' mulled-cache \
|
|
--namespace biocontainers \
|
|
--output "$SEED_DIRECTORY/biocontainers.json"
|
|
- name: Save Biocontainers repository index
|
|
if: steps.restore-mulled-cache.outputs.cache-hit != 'true' && steps.fetch-mulled-cache.outcome == 'success'
|
|
uses: actions/cache/save@v6.1.0
|
|
with:
|
|
key: biocontainers-repository-index-${{ env.MULLED_CACHE_WEEK }}
|
|
path: '${{ runner.temp }}/mulled-resolution-seed'
|
|
- name: Create fallback seed
|
|
if: steps.fetch-mulled-cache.outcome == 'failure'
|
|
env:
|
|
SEED_DIRECTORY: '${{ runner.temp }}/mulled-resolution-seed'
|
|
run: |
|
|
echo '::warning::Could not index the biocontainers namespace, integration tests run without a seeded mulled resolution cache'
|
|
mkdir -p "$SEED_DIRECTORY"
|
|
echo '{"namespace":"biocontainers","repositories":[]}' > "$SEED_DIRECTORY/biocontainers.json"
|
|
- name: Upload mulled resolution cache seed
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: mulled-resolution-cache-seed
|
|
path: '${{ runner.temp }}/mulled-resolution-seed/biocontainers.json'
|
|
retention-days: 1
|
|
|
|
test:
|
|
name: Test
|
|
needs: prepare-mulled-cache
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
python-version: ['3.10']
|
|
chunk: ['0', '1', '2', '3']
|
|
steps:
|
|
- if: github.event_name == 'schedule'
|
|
run: |
|
|
echo "GALAXY_CONFIG_OVERRIDE_METADATA_STRATEGY=extended" >> $GITHUB_ENV
|
|
# --cov=lib line-traces a live Galaxy for the whole job, so integration
|
|
# coverage is collected on this weekly run only.
|
|
echo "GALAXY_TEST_COVERAGE=1" >> $GITHUB_ENV
|
|
# Skip outputs_to_working_directory: true in integration tests, doesn't work with pulsar
|
|
# 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
|
|
- name: Clean dotnet folder for space
|
|
run: rm -Rf /usr/share/dotnet
|
|
- name: Install packages
|
|
# ffmpeg: ffprobe needed by media datatypes
|
|
run: sudo apt-get update && sudo apt-get -y install ffmpeg
|
|
- name: Setup Minikube
|
|
uses: medyagh/setup-minikube@latest
|
|
with:
|
|
driver: none
|
|
kubernetes-version: '1.28.0'
|
|
- name: Check pods
|
|
run: kubectl get pods -A
|
|
- uses: actions/checkout@v7.0.1
|
|
with:
|
|
path: 'galaxy root'
|
|
persist-credentials: false
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v9.0.0
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
- name: Install Python
|
|
run: uv python install
|
|
- name: Download mulled resolution cache seed
|
|
uses: actions/download-artifact@v8
|
|
with:
|
|
name: mulled-resolution-cache-seed
|
|
path: '${{ runner.temp }}/mulled-resolution-seed'
|
|
- name: Install Apptainer's singularity
|
|
uses: './galaxy root/.github/actions/install_apptainer'
|
|
- name: Run tests
|
|
env:
|
|
GALAXY_TEST_MULLED_RESOLUTION_CACHE_SEED: '${{ runner.temp }}/mulled-resolution-seed/biocontainers.json'
|
|
GALAXY_CONFIG_OVERRIDE_MULLED_RESOLUTION_CACHE_DATA_DIR: '${{ runner.temp }}/mulled-resolution-cache/data'
|
|
GALAXY_CONFIG_OVERRIDE_MULLED_RESOLUTION_CACHE_LOCK_DIR: '${{ runner.temp }}/mulled-resolution-cache/locks'
|
|
run: |
|
|
. .ci/minikube-test-setup/start_services.sh
|
|
./run_tests.sh -integration test/integration -- --num-shards=4 --shard-id=${{ matrix.chunk }}
|
|
working-directory: 'galaxy root'
|
|
- uses: codecov/codecov-action@v7.0.0
|
|
if: github.event_name == 'schedule'
|
|
with:
|
|
flags: integration
|
|
working-directory: 'galaxy root'
|
|
- uses: actions/upload-artifact@v7
|
|
if: failure()
|
|
with:
|
|
name: Integration test results (${{ matrix.python-version }}, ${{ matrix.chunk }})
|
|
path: 'galaxy root/run_integration_tests.html'
|