quick proof of concept of down
#3615
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: Run tests | |
on: | |
pull_request: | |
branches: | |
- 'master' | |
- 'release-*' | |
push: | |
branches: | |
- 'master' | |
- 'release-*' | |
tags: '*' | |
defaults: | |
run: | |
shell: bash | |
concurrency: | |
# Skip intermediate builds: all builds except for builds on the `master` or `release-*` branches | |
# Cancel intermediate builds: only pull request builds | |
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || startsWith(github.ref, 'refs/heads/release-') || github.run_number }} | |
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 70 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
- ubuntu-latest | |
- macOS-14 # arm | |
- windows-latest | |
julia-arch: | |
- 'x64' | |
- 'x86' | |
- 'aarch64' | |
pkg-server: | |
- "pkg.julialang.org" # Default to this for all except specific cases | |
julia-version: | |
- 'nightly' | |
exclude: | |
- os: ubuntu-latest | |
julia-arch: aarch64 | |
- os: windows-latest | |
julia-arch: aarch64 | |
- os: macOS-14 | |
julia-arch: x86 | |
- os: macOS-14 | |
julia-arch: x64 | |
include: | |
- os: ubuntu-latest | |
julia-arch: 'x64' | |
julia-version: 'nightly' | |
pkg-server: "" | |
- os: ubuntu-latest | |
julia-arch: 'x64' | |
julia-version: 'nightly' | |
pkg-server: "pkg.julialang.org" | |
steps: | |
- name: Set git to use LF and fix TEMP on windows | |
if: matrix.os == 'windows-latest' | |
run: | | |
git config --global core.autocrlf false | |
git config --global core.eol lf | |
# See https://github.com/actions/virtual-environments/issues/712 | |
echo "TMP=${USERPROFILE}\AppData\Local\Temp" >> ${GITHUB_ENV} | |
echo "TEMP=${USERPROFILE}\AppData\Local\Temp" >> ${GITHUB_ENV} | |
- uses: actions/checkout@v4 | |
- uses: julia-actions/setup-julia@v1 | |
with: | |
version: ${{ matrix.julia-version }} | |
arch: ${{ matrix.julia-arch }} | |
- uses: julia-actions/julia-runtest@v1 | |
with: | |
coverage: true | |
env: | |
JULIA_PKG_SERVER: ${{ matrix.pkg-server }} | |
JULIA_TEST_VERBOSE_LOGS_DIR: ${{ github.workspace }} | |
- uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: ${{ join(matrix.*, '-') }}_Pkg.log | |
path: ${{ github.workspace }}/Pkg.log | |
- uses: julia-actions/julia-processcoverage@v1 | |
env: | |
JULIA_PKG_SERVER: ${{ matrix.pkg-server }} | |
- uses: codecov/codecov-action@v3 | |
with: | |
file: lcov.info | |
docs: | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: julia-actions/setup-julia@v1 | |
with: | |
# version: '1.6' | |
version: 'nightly' | |
- name: Generate docs | |
run: | | |
julia --project --color=yes -e 'using Pkg; Pkg.activate("docs"); Pkg.instantiate(); Pkg.develop(PackageSpec(path = pwd()))' | |
julia --project=docs --color=yes docs/make.jl pdf | |
env: | |
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} |