inputs.toml and support libRR intracellulars #1128
Workflow file for this run
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: CI | |
on: | |
push: | |
branches: | |
- main | |
- development | |
- test* | |
tags: ['*'] | |
pull_request: | |
workflow_dispatch: | |
concurrency: | |
# Skip intermediate builds: always. | |
# Cancel intermediate builds: only if it is a pull request build. | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} | |
jobs: | |
test: | |
name: Julia ${{ matrix.julia-version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
permissions: # needed for julia-actions/cache to delete old caches | |
actions: write | |
contents: read | |
strategy: | |
fail-fast: false | |
matrix: | |
julia-version: | |
- 'lts' # long-term support | |
- '1' # to check the latest v1 version | |
- 'pre' # check upcoming releases | |
os: ["ubuntu-latest"] | |
arch: ["x64"] | |
shell: ["bash"] | |
compiler: ["g++"] | |
include: | |
- os: "macOS-latest" | |
julia-version: 'lts' | |
shell: "bash" | |
compiler: "g++-14" | |
arch: "arm64" | |
- os: "macOS-latest" | |
julia-version: '1' | |
shell: "bash" | |
compiler: "g++-14" | |
arch: "arm64" | |
# - os: "windows-latest" | |
# julia-version: '1' | |
# shell: "pwsh" | |
# compiler: "g++" | |
# arch: "x64" | |
defaults: | |
run: | |
shell: ${{ matrix.shell }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Install ImageMagick on macOS | |
if: matrix.os == 'macOS-latest' | |
run: | | |
brew install imagemagick | |
brew install ffmpeg | |
- name: Install MSYS2 on Windows | |
if: matrix.os.name == 'windows-latest' | |
uses: msys2/setup-msys2@v2 | |
with: | |
update: true | |
install: mingw-w64-x86_64-binutils mingw-w64-x86_64-gcc mingw-w64-x86_64-headers-git mingw-w64-x86_64-gcc-libs mingw-w64-x86_64-libwinpthread-git mingw-w64-x86_64-lapack mingw-w64-x86_64-openblas mingw-w64-x86_64-libxml2 mingw-w64-x86_64-bzip2 mingw-w64-x86_64-python mingw-w64-x86_64-python-zstandard mingw-w64-x86_64-python-cffi make bison flex mingw-w64-x86_64-ca-certificates mingw-w64-x86_64-diffutils | |
- uses: julia-actions/setup-julia@v2 | |
with: | |
version: ${{ matrix.julia-version }} | |
arch: ${{ matrix.arch }} | |
- name: Set environment variable PHYSICELL_CPP | |
run: echo "PHYSICELL_CPP=${{ matrix.compiler }}" >> $GITHUB_ENV | |
- uses: julia-actions/cache@v2 | |
- name: Add PCVCTRegistry | |
run: julia -e 'import Pkg; Pkg.Registry.add("General"); Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/drbergman/PCVCTRegistry.git"))' | |
- uses: julia-actions/julia-buildpkg@v1 | |
- name: Run all tests | |
uses: julia-actions/julia-runtest@v1 | |
env: | |
PCVCT_NUM_PARALLEL_SIMS: 8 | |
PHYSICELL_CPP: ${{ matrix.compiler }} # maybe necessary for windows?? | |
PCVCT_PUBLIC_REPO_AUTH: ${{ secrets.PUBLIC_REPO_AUTH }} | |
- uses: julia-actions/julia-processcoverage@v1 | |
- uses: codecov/codecov-action@v5 | |
with: | |
files: lcov.info | |
token: ${{ secrets.CODECOV_TOKEN }} | |
fail_ci_if_error: false | |
docs: | |
name: Documentation | |
runs-on: ubuntu-latest | |
permissions: | |
actions: write # needed to allow julia-actions/cache to proactively delete old caches that it has created | |
contents: write | |
statuses: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: julia-actions/setup-julia@v2 | |
with: | |
version: '1' | |
- uses: julia-actions/cache@v2 | |
- name: Add PCVCTRegistry | |
run: julia -e 'import Pkg; Pkg.Registry.add("General"); Pkg.Registry.add(Pkg.RegistrySpec(url="https://github.com/drbergman/PCVCTRegistry.git"))' | |
- name: Configure doc environment | |
shell: julia --project=docs --color=yes {0} | |
run: | | |
using Pkg | |
Pkg.develop(PackageSpec(path=pwd())) | |
Pkg.instantiate() | |
- uses: julia-actions/julia-buildpkg@v1 | |
- uses: julia-actions/julia-docdeploy@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} | |
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} | |
- name: Run doctests | |
shell: julia --project=docs --color=yes {0} | |
run: | | |
using Documenter: DocMeta, doctest | |
using pcvct | |
DocMeta.setdocmeta!(pcvct, :DocTestSetup, :(using pcvct); recursive=true) | |
doctest(pcvct) |