tests/grouped-tests: optional container input (restore FEniCS-style containerized CI)#86
Merged
ChrisRackauckas merged 1 commit intoJun 10, 2026
Conversation
Allows packages that need a prebuilt system stack (e.g. FEniCS.jl's Python/FEniCS image cmhyett/julia-fenics:latest) to run their test jobs inside a Docker container, restoring pre-conversion containerized CI. Empty default means no container, the standard GHA semantics for an empty container expression. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ChrisRackauckas-Claude
pushed a commit
to ChrisRackauckas-Claude/FEniCS.jl
that referenced
this pull request
Jun 10, 2026
…ts caller The grouped-tests conversion dropped the Docker container the pre-conversion CI ran in, so every Core job failed with the FEniCS Python stack missing. Pass it through the new container input of grouped-tests.yml. Depends on SciML/.github#86 merging and a v1 retag. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ChrisRackauckas
added a commit
to SciML/FEniCS.jl
that referenced
this pull request
Jun 15, 2026
* Canonical CI: grouped-tests.yml + root test/test_groups.toml
Convert the root test workflow (CI.yml) to the canonical thin caller of
SciML/.github/.github/workflows/grouped-tests.yml@v1, declaring its
group x version matrix once in test/test_groups.toml.
- CI.yml: replace the hand-maintained group x version matrix job with the
reusable grouped-tests.yml caller (coverage:false; on:/triggers preserved
verbatim). Linux-only (no os axis).
- test/test_groups.toml: [Core] on [lts,1,pre] (reproduces the old matrix
exactly) + newly-wired [QA] on [lts,1].
- runtests.jl: add GROUP dispatch (existing suite is Core/All; GROUP==QA runs
the isolated QA env).
- test/qa/{Project.toml,qa.jl}: isolated Aqua + JET environment running
Aqua.test_all(FEniCS) and JET.test_package(FEniCS; target_defined_modules=true).
- Project.toml: raise [compat] julia 1.6 -> 1.10 (LTS floor); add Test = "1"
compat for the test-only extra (benign metadata fixes).
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Restore FEniCS container (cmhyett/julia-fenics:latest) in grouped-tests caller
The grouped-tests conversion dropped the Docker container the pre-conversion
CI ran in, so every Core job failed with the FEniCS Python stack missing.
Pass it through the new container input of grouped-tests.yml.
Depends on SciML/.github#86 merging and a v1 retag.
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* ci: re-trigger grouped-tests after SciML/.github@v1 gained container input
The grouped-tests caller passes container: cmhyett/julia-fenics:latest, which
was unsupported by SciML/.github grouped-tests.yml@v1 at the time of the last
run (startup_failure on 2026-06-10). v1 now resolves to v1.13.0, which adds the
container input, so re-run CI to validate.
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* Adopt SciMLTesting v1.2 folder-based run_tests (on top of grouped-tests conversion)
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: ChrisRackauckas-Claude <accounts@chrisrackauckas.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds an optional
containerinput (string, default"") to the reusable test workflows:tests.yml: newcontainerinput, applied ascontainer: ${{ inputs.container }}on thetestsjob. An empty string evaluates to "no container" per GitHub Actions semantics, so existing callers are unaffected.grouped-tests.yml: same input, passed through totests.ymlfor every matrix job.Why
Packages wrapping Python stacks need their test jobs to run inside a prebuilt Docker image. FEniCS.jl's pre-conversion CI ran in
container: cmhyett/julia-fenics:latest(the FEniCS Python stack); the grouped-tests conversion (SciML/FEniCS.jl#154) dropped the container, so every Core job fails because the FEniCS Python libraries are missing. This input restores that capability through the centralized workflows.Verification
actionlintclean on both modified workflows.containerinput present with empty-string default.After merge this needs a
v1retag for@v1callers (FEniCS.jl#154 depends on it).Ignore until reviewed by @ChrisRackauckas.
🤖 Generated with Claude Code