Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/workflows/downgrade.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,22 @@ on:
default: "ubuntu-latest"
required: false
type: string
apt-packages:
description: "Space-separated apt packages to install before building/testing (Linux only)."
default: ""
required: false
type: string
container:
description: "Docker container image to run the job in, e.g. for Python-stack packages (empty string = no container)"
default: ""
required: false
type: string

jobs:
downgrade:
name: "Downgrade Tests${{ inputs.group != '' && format(' - {0}', inputs.group) || '' }}"
runs-on: "${{ inputs.self-hosted && 'self-hosted' || inputs.os }}"
container: ${{ inputs.container }}
steps:
- uses: actions/checkout@v6

Expand Down Expand Up @@ -108,6 +119,12 @@ jobs:
projects: "${{ inputs.projects }}"
mode: "${{ inputs.mode != '' && inputs.mode || 'deps' }}"

- name: "Install system packages"
if: "${{ inputs.apt-packages != '' && runner.os == 'Linux' }}"
run: |
sudo apt-get update
sudo apt-get install -y ${{ inputs.apt-packages }}

- uses: julia-actions/julia-buildpkg@v1
with:
project: "${{ inputs.project }}"
Expand Down
16 changes: 16 additions & 0 deletions .github/workflows/sublibrary-downgrade.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,16 @@ on:
default: ""
required: false
type: string
apt-packages:
description: "Space-separated apt packages to install before building/testing (Linux only)."
default: ""
required: false
type: string
container:
description: "Docker container image to run the job in, e.g. for Python-stack packages (empty string = no container)"
default: ""
required: false
type: string

jobs:
discover:
Expand Down Expand Up @@ -81,6 +91,7 @@ jobs:
needs: discover
if: needs.discover.outputs.has_any == 'true'
runs-on: ubuntu-latest
container: ${{ inputs.container }}
strategy:
fail-fast: false
matrix:
Expand Down Expand Up @@ -156,6 +167,11 @@ jobs:
projects: ${{ matrix.project }}
skip: ${{ env.EFFECTIVE_SKIP }}
julia_version: ${{ env.JULIA_MM }}
- name: "Install system packages"
if: "${{ inputs.apt-packages != '' && runner.os == 'Linux' }}"
run: |
sudo apt-get update
sudo apt-get install -y ${{ inputs.apt-packages }}
- uses: julia-actions/julia-buildpkg@v1
with:
project: ${{ matrix.project }}
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,8 @@ to catch under-specified `[compat]` lower bounds.
| `projects` | string | `"."` | Comma-separated project dirs to downgrade. |
| `project` | string | `"@."` | `--project` for build/test (a workspace submodule or `lib/X`); default tests the repo root. |
| `self-hosted` / `os` | | `false` / `ubuntu-latest` | Runner selection. |
| `apt-packages` | string | `""` | Space-separated apt packages to install before building/testing (Linux only). |
| `container` | string | `""` | Docker container image to run the job in (e.g. `cmhyett/julia-fenics:latest` for Python-stack packages). Empty = no container. |

```yaml
jobs:
Expand Down Expand Up @@ -674,6 +676,8 @@ Downgrade-compat tests for each `lib/*` sublibrary.
| `exclude` | string | `""` | Space-separated sublibrary names to exclude from auto-discovery. |
| `group-env-name` | string | `""` | Optional group env var name (e.g. `ODEDIFFEQ_TEST_GROUP`). |
| `group-env-value` | string | `""` | Value for `group-env-name`. |
| `apt-packages` | string | `""` | Space-separated apt packages to install before building/testing (Linux only). |
| `container` | string | `""` | Docker container image to run the job in (e.g. `cmhyett/julia-fenics:latest` for Python-stack packages). Empty = no container. |

```yaml
jobs:
Expand Down
Loading