Skip to content

Treat as Julia code #21

Treat as Julia code

Treat as Julia code #21

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
# When two jobs run in parallel, cancel the older ones, to make sure that the website is generated from the most recent commit.
concurrency:
group: ci
cancel-in-progress: true
# This action needs permission to write the exported HTML file to the gh-pages branch.
# needed to allow julia-actions/cache to delete old caches that it has created
permissions:
actions: write
contents: read
# (all other permission fields default to "none")
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout this repository
uses: actions/checkout@v4
- name: Install Julia
uses: julia-actions/setup-julia@v2
with:
version: "1" # This will automatically pick the latest Julia version
- name: Cache Julia artifacts & such
uses: julia-actions/cache@v2
with:
cache-registries: "true"
# We set up a folder that Pluto can use to cache exported notebooks. If the notebook file did not change, then Pluto can take the exported file from cache instead of running the notebook.
- name: Set up notebook state cache
uses: actions/cache@v4
with:
path: pluto_state_cache
key: ${{ runner.os }}-pluto_state_cache-v2-${{ hashFiles('**/Project.toml', '**/Manifest.toml', '.github/workflows/*' ) }}-${{ hashFiles('**/*jl') }}
restore-keys: |
${{ runner.os }}-pluto_state_cache-v2-${{ hashFiles('**/Project.toml', '**/Manifest.toml', '.github/workflows/*' ) }}
- name: Instantiate
run: |
julia --project -e 'using Pkg; Pkg.instantiate()'
- name: Run tests
run: |
julia --project scripts/runtests.jl