name: "continuous integration test" on: push: branches: [ main, development ] paths-ignore: - 'CHANGELOG.md' - 'CITATION.cff' - 'CODE_OF_CONDUCT.md' - 'CONTRIBUTING.md' - 'LICENSE' - 'README.md' - '.github/workflows/cffvalidation.yml' - '.github/workflows/CompatHelper.yml' - '.github/workflows/debug.yml' - '.github/workflows/JuliaRegister.yml' - '.github/workflows/release.yml' - '.github/workflows/TagBot.yml' - '.github/zenodo/*' pull_request: branches: [ main, development ] paths-ignore: - 'CHANGELOG.md' - 'CITATION.cff' - 'CODE_OF_CONDUCT.md' - 'CONTRIBUTING.md' - 'LICENSE' - 'README.md' - '.github/workflows/cffvalidation.yml' - '.github/workflows/CompatHelper.yml' - '.github/workflows/debug.yml' - '.github/workflows/JuliaRegister.yml' - '.github/workflows/release.yml' - '.github/workflows/TagBot.yml' - '.github/zenodo/*' 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.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }} runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: version: - '1.6' # oldest - '1.8' # current - 'nightly' # dev os: - ubuntu-latest - macOS-latest - windows-latest arch: # - x86 - x64 # - aarch64 steps: - uses: actions/checkout@v2 - uses: julia-actions/setup-julia@v1 with: version: ${{ matrix.version }} arch: ${{ matrix.arch }} - uses: julia-actions/cache@v1 - uses: julia-actions/julia-buildpkg@v1 - uses: julia-actions/julia-runtest@v1 docs: name: Documentation runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: julia-actions/setup-julia@v1 with: version: '1' - uses: julia-actions/julia-buildpkg@v1 - uses: julia-actions/julia-docdeploy@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} - run: | julia --project=docs -e ' using Documenter: DocMeta, doctest using TrainRuns DocMeta.setdocmeta!(TrainRuns, :DocTestSetup, :(using TrainRuns); recursive=true) doctest(TrainRuns)'