Neutral fueling actor (WIP) #2504
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: runtests | |
on: | |
workflow_dispatch: | |
inputs: | |
debug: | |
type: boolean | |
required: false | |
default: false | |
bypass-cache: | |
type: boolean | |
required: false | |
default: false | |
push: | |
branches: | |
- master | |
pull_request: | |
env: | |
PTP_READ_TOKEN: ${{ secrets.PTP_READ_TOKEN }} | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
name: Julia ${{ matrix.flavor.version }} - ${{ matrix.flavor.os }} - ${{ matrix.flavor.arch }} | |
runs-on: ${{ matrix.flavor.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
flavor: | |
- { os: ubuntu-latest, arch: x64, version: "1.x" } | |
- { os: macos-latest, arch: arm64, version: "1.x" } | |
env: | |
GKSwstype: 100 # disable Plots.jl interactive output | |
steps: | |
- name: Get number of CPU cores | |
uses: SimenB/github-actions-cpu-cores@v1 | |
id: cpu-cores | |
- name: Set JULIA_NUM_THREADS=${{ steps.cpu-cores.outputs.count }} | |
run: echo "JULIA_NUM_THREADS=${{ steps.cpu-cores.outputs.count }}" >> $GITHUB_ENV | |
- uses: actions/checkout@v2 | |
- name: Check if fuse bot commit | |
run: | | |
author=$(git log -1 --pretty=format:'%an') | |
if [ "$author" = "fuse bot" ]; then | |
echo "Skipping action due to commit made by 'fuse bot'." | |
exit 78 | |
fi | |
- uses: julia-actions/setup-julia@v1 | |
with: | |
version: ${{ matrix.flavor.version }} | |
arch: ${{ matrix.flavor.arch }} | |
show-versioninfo: true | |
- name: Generate cache key with date | |
id: cache-date | |
run: echo "::set-output name=date::$(date +%Y-%m-%d)" | |
- name: Cache Julia artifacts | |
uses: actions/cache@v2 | |
if: github.event.inputs.bypass-cache != 'true' | |
with: | |
path: | | |
~/.julia/artifacts | |
~/.julia/packages | |
~/.julia/compiled | |
key: ${{ runner.os }}-julia-${{ matrix.flavor.version }}-${{ matrix.flavor.os }}-${{ matrix.flavor.arch }}-${{ steps.cache-date.outputs.date }} | |
- name: Add FuseRegistry | |
run: | | |
rm -rf ~/.julia/registries/FuseRegistry | |
julia -e 'using Pkg; Pkg.Registry.add(RegistrySpec(url="https://github.com/ProjectTorreyPines/FuseRegistry.jl.git")); Pkg.Registry.add("General"); Pkg.Registry.update()' | |
- name: Replace git@github.com with https in Package.toml files on macOS | |
if: matrix.flavor.os == 'macos-latest' | |
run: find ~/.julia/registries/FuseRegistry -type f -name 'Package.toml' -exec sed -i '' 's|git@github.com:|https://project-torrey-pines:${{secrets.PTP_READ_TOKEN}}@github.com/|g' {} + | |
- name: Replace git@github.com with https in Package.toml files on Linux | |
if: matrix.flavor.os == 'ubuntu-latest' | |
run: find ~/.julia/registries/FuseRegistry -type f -name 'Package.toml' -exec sed -i 's|git@github.com:|https://project-torrey-pines:${{secrets.PTP_READ_TOKEN}}@github.com/|g' {} + | |
- run: make install_ci_add | |
- name: 'Save Manifest.toml' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Manifest-${{ matrix.flavor.os }}-${{ matrix.flavor.arch }} | |
path: Manifest.toml | |
- uses: julia-actions/julia-buildpkg@v1 | |
- uses: julia-actions/julia-runtest@v1 | |
- name: Debug with tmate if failure + manual trigger + debug mode | |
if: ${{ failure() && github.event_name == 'workflow_dispatch' && inputs.debug }} | |
uses: mxschmitt/action-tmate@v3 | |
timeout-minutes: 120 |