Skip to content

Commit

Permalink
Modernize CI infrastructure
Browse files Browse the repository at this point in the history
- Update actions to their latest version;
- Update compiler versions to be future proof;
- Set up a periodic build;

The periodic build is used as this project is complete
and does not require maintenance.
  • Loading branch information
Geod24 committed May 23, 2024
1 parent 4df16a2 commit aa169a1
Showing 1 changed file with 21 additions and 7 deletions.
28 changes: 21 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,33 @@
name: CI

on: [ push, pull_request ]
on:
push:
branches:
- 'v*.*.x'
tags:
- 'v*'
pull_request:
branches:
- 'v*.*.x'
# Do a periodic build (every Monday at 0600) to ensure integrity
schedule:
- cron: '0 6 * * 1'

jobs:
build:
name: Run
strategy:
matrix:
os: [ ubuntu-latest, macos-latest, windows-latest ]
dc: [ dmd-latest, ldc-latest, dmd-2.094.1, ldc-1.24.0 ]

include:
- { os: macos-latest, dc: ldc-latest }
- { os: ubuntu-latest, dc: dmd-latest }
- { os: ubuntu-latest, dc: ldc-latest }
- { os: windows-latest, dc: dmd-latest }
- { os: windows-latest, dc: ldc-latest }
runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
# For codecov
fetch-depth: 2
Expand All @@ -24,9 +38,9 @@ jobs:
- name: 'Build & Test'
shell: bash
run: |
dub test --compiler=$DC -b unittest-cov
dub test -b unittest-cov
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v4
with:
flags: unittests

0 comments on commit aa169a1

Please sign in to comment.