Loading .github/workflows/api.yaml +5 −5 Original line number Diff line number Diff line Loading @@ -5,11 +5,13 @@ on: - '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' Loading @@ -18,6 +20,7 @@ env: GALAXY_TEST_DBURI: 'postgresql://postgres:postgres@localhost:5432/galaxy?client_encoding=utf8' GALAXY_TEST_RAISE_EXCEPTION_ON_HISTORYLESS_HDA: '1' GALAXY_CONFIG_SQLALCHEMY_WARN_20: '1' GALAXY_TEST_REQUIRE_ALL_NEEDED_TOOLS: '1' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true Loading Loading @@ -55,15 +58,12 @@ jobs: - 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 pip dir uses: actions/cache@v4 with: path: ~/.cache/pip key: pip-cache-${{ matrix.python-version }}-${{ hashFiles('galaxy root/requirements.txt') }} - name: Cache galaxy venv uses: actions/cache@v4 with: Loading .github/workflows/bioblend.yaml 0 → 100644 +80 −0 Original line number Diff line number Diff line name: BioBlend Tests on: pull_request: paths: - .github/workflows/bioblend.yaml - lib/galaxy/schema/** - lib/galaxy/webapps/galaxy/api/** - lib/galaxy/webapps/galaxy/services/** workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: test: runs-on: ubuntu-latest services: postgres: image: postgres # Provide the password for postgres env: POSTGRES_PASSWORD: postgres # Set health checks to wait until postgres has started options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 ports: - 5432:5432 strategy: fail-fast: false matrix: tox_env: [py313] galaxy_python_version: ["3.8"] steps: - name: Checkout Galaxy uses: actions/checkout@v4 with: fetch-depth: 1 path: galaxy - name: Checkout Bioblend uses: actions/checkout@v4 with: repository: galaxyproject/bioblend path: bioblend - name: Cache pip dir uses: actions/cache@v4 with: path: ~/.cache/pip key: pip-cache-${{ matrix.tox_env }} - name: Calculate Python version for BioBlend from tox_env id: get_bioblend_python_version run: echo "bioblend_python_version=$(echo "${{ matrix.tox_env }}" | sed -e 's/^py\([3-9]\)\([0-9]\+\)/\1.\2/')" >> $GITHUB_OUTPUT - name: Set up Python for BioBlend uses: actions/setup-python@v5 with: python-version: ${{ steps.get_bioblend_python_version.outputs.bioblend_python_version }} - name: Install tox run: | python3 -m pip install --upgrade pip setuptools python3 -m pip install 'tox>=1.8.0' - name: Set up Python for Galaxy uses: actions/setup-python@v5 with: python-version: ${{ matrix.galaxy_python_version }} - name: Run tests env: PGPASSWORD: postgres PGPORT: 5432 PGHOST: localhost run: | # Create a PostgreSQL database for Galaxy. The default SQLite3 database makes test fail randomly because of "database locked" error. createdb -U postgres galaxy export DATABASE_CONNECTION=postgresql://postgres:@localhost/galaxy ./bioblend/run_bioblend_tests.sh -g galaxy -v python${{ matrix.galaxy_python_version }} -e ${{ matrix.tox_env }} - name: The job has failed if: ${{ failure() }} run: | cat galaxy/*.log .github/workflows/build_container_image.yaml +61 −1 Original line number Diff line number Diff line Loading @@ -10,8 +10,67 @@ concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: ghcrbuild: name: Build container image for GHCR runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 # https://stackoverflow.com/questions/59810838/how-to-get-the-short-sha-for-the-github-workflow - name: Set outputs id: commit run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - name: Set branch name id: branch run: | if [[ "$GITHUB_REF" == "refs/tags/"* ]]; then echo "name=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT elif [[ "$GITHUB_REF" == "refs/heads/dev" ]]; then echo "name=dev" >> $GITHUB_OUTPUT elif [[ "$GITHUB_REF" == "refs/heads/release_"* ]]; then echo "name=${GITHUB_REF#refs/heads/release_}-auto" >> $GITHUB_OUTPUT fi shell: bash - name: Extract metadata for container image id: meta uses: docker/metadata-action@v4 with: images: ghcr.io/${{ github.repository }} tags: | type=raw,value=${{steps.branch.outputs.name}} - name: Build args id: buildargs run: | echo "gitcommit=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT echo "builddate=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 with: platforms: linux/amd64 - name: Login to GHCR uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push container image to ghcr uses: docker/build-push-action@v4 with: build-args: | GIT_COMMIT=${{ steps.buildargs.outputs.gitcommit }} BUILD_DATE=${{ steps.buildargs.outputs.builddate }} IMAGE_TAG=${{ steps.branch.outputs.name }} file: .k8s_ci.Dockerfile push: true context: . tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} platforms: linux/amd64 build: name: Build container image name: Build container image for Galaxy repos runs-on: ubuntu-latest if: github.repository_owner == 'galaxyproject' steps: Loading Loading @@ -58,3 +117,4 @@ jobs: uses: actions-hub/docker@master with: args: push galaxy/galaxy-min:${{ steps.branch.outputs.name }} .github/workflows/check_test_class_names.yaml +5 −5 Original line number Diff line number Diff line Loading @@ -5,6 +5,9 @@ on: - '.ci/check_test_class_names.sh' - 'lib/galaxy_test/**' - 'test/**' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: test: name: Test Loading @@ -17,11 +20,8 @@ jobs: - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Cache pip dir uses: actions/cache@v4 with: path: ~/.cache/pip key: pip-cache-${{ matrix.python-version }}-${{ hashFiles('requirements.txt') }} cache: 'pip' cache-dependency-path: 'requirements.txt' - name: Install Python dependencies run: pip install -r requirements.txt -r lib/galaxy/dependencies/dev-requirements.txt - name: Run tests Loading .github/workflows/codeql-analysis.yml +3 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,9 @@ on: branches: [ dev ] schedule: - cron: '16 6 * * 0' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: analyze: name: Analyze Loading Loading
.github/workflows/api.yaml +5 −5 Original line number Diff line number Diff line Loading @@ -5,11 +5,13 @@ on: - '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' Loading @@ -18,6 +20,7 @@ env: GALAXY_TEST_DBURI: 'postgresql://postgres:postgres@localhost:5432/galaxy?client_encoding=utf8' GALAXY_TEST_RAISE_EXCEPTION_ON_HISTORYLESS_HDA: '1' GALAXY_CONFIG_SQLALCHEMY_WARN_20: '1' GALAXY_TEST_REQUIRE_ALL_NEEDED_TOOLS: '1' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true Loading Loading @@ -55,15 +58,12 @@ jobs: - 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 pip dir uses: actions/cache@v4 with: path: ~/.cache/pip key: pip-cache-${{ matrix.python-version }}-${{ hashFiles('galaxy root/requirements.txt') }} - name: Cache galaxy venv uses: actions/cache@v4 with: Loading
.github/workflows/bioblend.yaml 0 → 100644 +80 −0 Original line number Diff line number Diff line name: BioBlend Tests on: pull_request: paths: - .github/workflows/bioblend.yaml - lib/galaxy/schema/** - lib/galaxy/webapps/galaxy/api/** - lib/galaxy/webapps/galaxy/services/** workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: test: runs-on: ubuntu-latest services: postgres: image: postgres # Provide the password for postgres env: POSTGRES_PASSWORD: postgres # Set health checks to wait until postgres has started options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 ports: - 5432:5432 strategy: fail-fast: false matrix: tox_env: [py313] galaxy_python_version: ["3.8"] steps: - name: Checkout Galaxy uses: actions/checkout@v4 with: fetch-depth: 1 path: galaxy - name: Checkout Bioblend uses: actions/checkout@v4 with: repository: galaxyproject/bioblend path: bioblend - name: Cache pip dir uses: actions/cache@v4 with: path: ~/.cache/pip key: pip-cache-${{ matrix.tox_env }} - name: Calculate Python version for BioBlend from tox_env id: get_bioblend_python_version run: echo "bioblend_python_version=$(echo "${{ matrix.tox_env }}" | sed -e 's/^py\([3-9]\)\([0-9]\+\)/\1.\2/')" >> $GITHUB_OUTPUT - name: Set up Python for BioBlend uses: actions/setup-python@v5 with: python-version: ${{ steps.get_bioblend_python_version.outputs.bioblend_python_version }} - name: Install tox run: | python3 -m pip install --upgrade pip setuptools python3 -m pip install 'tox>=1.8.0' - name: Set up Python for Galaxy uses: actions/setup-python@v5 with: python-version: ${{ matrix.galaxy_python_version }} - name: Run tests env: PGPASSWORD: postgres PGPORT: 5432 PGHOST: localhost run: | # Create a PostgreSQL database for Galaxy. The default SQLite3 database makes test fail randomly because of "database locked" error. createdb -U postgres galaxy export DATABASE_CONNECTION=postgresql://postgres:@localhost/galaxy ./bioblend/run_bioblend_tests.sh -g galaxy -v python${{ matrix.galaxy_python_version }} -e ${{ matrix.tox_env }} - name: The job has failed if: ${{ failure() }} run: | cat galaxy/*.log
.github/workflows/build_container_image.yaml +61 −1 Original line number Diff line number Diff line Loading @@ -10,8 +10,67 @@ concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: ghcrbuild: name: Build container image for GHCR runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 # https://stackoverflow.com/questions/59810838/how-to-get-the-short-sha-for-the-github-workflow - name: Set outputs id: commit run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - name: Set branch name id: branch run: | if [[ "$GITHUB_REF" == "refs/tags/"* ]]; then echo "name=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT elif [[ "$GITHUB_REF" == "refs/heads/dev" ]]; then echo "name=dev" >> $GITHUB_OUTPUT elif [[ "$GITHUB_REF" == "refs/heads/release_"* ]]; then echo "name=${GITHUB_REF#refs/heads/release_}-auto" >> $GITHUB_OUTPUT fi shell: bash - name: Extract metadata for container image id: meta uses: docker/metadata-action@v4 with: images: ghcr.io/${{ github.repository }} tags: | type=raw,value=${{steps.branch.outputs.name}} - name: Build args id: buildargs run: | echo "gitcommit=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT echo "builddate=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 with: platforms: linux/amd64 - name: Login to GHCR uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push container image to ghcr uses: docker/build-push-action@v4 with: build-args: | GIT_COMMIT=${{ steps.buildargs.outputs.gitcommit }} BUILD_DATE=${{ steps.buildargs.outputs.builddate }} IMAGE_TAG=${{ steps.branch.outputs.name }} file: .k8s_ci.Dockerfile push: true context: . tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} platforms: linux/amd64 build: name: Build container image name: Build container image for Galaxy repos runs-on: ubuntu-latest if: github.repository_owner == 'galaxyproject' steps: Loading Loading @@ -58,3 +117,4 @@ jobs: uses: actions-hub/docker@master with: args: push galaxy/galaxy-min:${{ steps.branch.outputs.name }}
.github/workflows/check_test_class_names.yaml +5 −5 Original line number Diff line number Diff line Loading @@ -5,6 +5,9 @@ on: - '.ci/check_test_class_names.sh' - 'lib/galaxy_test/**' - 'test/**' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: test: name: Test Loading @@ -17,11 +20,8 @@ jobs: - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Cache pip dir uses: actions/cache@v4 with: path: ~/.cache/pip key: pip-cache-${{ matrix.python-version }}-${{ hashFiles('requirements.txt') }} cache: 'pip' cache-dependency-path: 'requirements.txt' - name: Install Python dependencies run: pip install -r requirements.txt -r lib/galaxy/dependencies/dev-requirements.txt - name: Run tests Loading
.github/workflows/codeql-analysis.yml +3 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,9 @@ on: branches: [ dev ] schedule: - cron: '16 6 * * 0' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: analyze: name: Analyze Loading