Skip to content

avoid writing and reparsing the artifact usage file once per artifact file in the project deps #4263

avoid writing and reparsing the artifact usage file once per artifact file in the project deps

avoid writing and reparsing the artifact usage file once per artifact file in the project deps #4263

Workflow file for this run

name: Run tests
on:
pull_request:
branches:
- 'master'
- 'release-*'
- 'backports-release-*'
push:
branches:
- 'master'
- 'release-*'
- 'backports-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@v2
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@v2
with:
# version: '1.6'
version: 'nightly'
- name: Generate docs
run: |
julia --project --color=yes -e 'using Pkg; Pkg.activate("docs"); Pkg.instantiate();'
julia --project=docs --color=yes docs/make.jl pdf
env:
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}