CI #76
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: CI | |
on: | |
schedule: | |
- cron: '45 6 1 * *' | |
push: | |
pull_request: | |
branches: [ main ] | |
jobs: | |
build-latest: | |
name: ${{ matrix.compiler }} on ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ ubuntu-latest, windows-latest, macos-latest ] | |
compiler: | |
- dmd-latest | |
- ldc-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install D ${{ matrix.compiler }} | |
uses: dlang-community/setup-dlang@v1 | |
with: | |
compiler: ${{ matrix.compiler }} | |
- name: Build library | |
run: dub build --build=release --config=library | |
- name: Build unittest | |
run: dub test --build=unittest --config=unittest | |
- name: Build examples | |
run: | | |
dub run --build=release --config=quickstartExample | |
dub run --build=release --config=qualifiersExample | |
dub run --build=release --config=arrayCompletionExample | |
dub run --build=release --config=annotationsExample | |
dub run --build=release --config=applicationContextExample | |
dub run --build=release --config=registerOnResolveExample | |
dub run --build=release --config=constructorInjectionExample | |
dub run --build=release --config=valueInjectionExample | |
dub run --build=release --config=postConPreDestExample | |
build-older: | |
name: ${{ matrix.compiler }} on ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ ubuntu-latest ] | |
compiler: | |
- dmd-latest | |
- ldc-latest | |
- dmd-2.102.2 | |
- dmd-2.101.2 | |
- dmd-2.100.2 | |
- dmd-2.099.1 | |
- dmd-2.098.1 | |
- dmd-2.097.2 | |
- dmd-2.096.1 | |
- dmd-2.095.1 | |
- dmd-2.094.2 | |
- dmd-2.093.1 | |
- dmd-2.092.1 | |
- dmd-2.091.1 | |
- dmd-2.090.1 | |
- dmd-2.089.1 | |
- dmd-2.088.1 | |
- dmd-2.087.1 | |
- dmd-2.086.1 # Baseline DMD version | |
- ldc-1.32.0 # eq to dmd v2.102.2 | |
- ldc-1.31.0 # eq to dmd v2.101.2 | |
- ldc-1.30.0 # eq to dmd v2.100.1 | |
- ldc-1.29.0 # eq to dmd v2.099.1 | |
- ldc-1.28.1 # eq to dmd v2.098.1 | |
- ldc-1.27.1 # eq to dmd v2.097.1 | |
- ldc-1.26.0 # eq to dmd v2.096.1 | |
# - ldc-1.25.1 # eq to dmd v2.095.1. This version has issues. Do not use with Poodinis. | |
- ldc-1.24.0 # eq to dmd v2.094.1 | |
- ldc-1.23.0 # eq to dmd v2.093.1 | |
- ldc-1.22.0 # eq to dmd v2.092.1 | |
- ldc-1.21.0 # eq to dmd v2.091.1 | |
- ldc-1.20.1 # eq to dmd v2.090.1 | |
- ldc-1.19.0 # eq to dmd v2.089.1 | |
- ldc-1.18.0 # eq to dmd v2.088.1 | |
- ldc-1.17.0 # eq to dmd v2.087 | |
- ldc-1.16.0 # eq to dmd v2.086.1 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install D ${{ matrix.compiler }} | |
uses: dlang-community/setup-dlang@v1 | |
with: | |
compiler: ${{ matrix.compiler }} | |
- name: Build library | |
run: dub build --build=release --config=library | |
- name: Build unittest | |
run: dub test --build=unittest --config=unittest | |
- name: Build examples | |
run: | | |
dub run --build=release --config=quickstartExample | |
dub run --build=release --config=qualifiersExample | |
dub run --build=release --config=arrayCompletionExample | |
dub run --build=release --config=annotationsExample | |
dub run --build=release --config=applicationContextExample | |
dub run --build=release --config=registerOnResolveExample | |
dub run --build=release --config=constructorInjectionExample | |
dub run --build=release --config=valueInjectionExample | |
dub run --build=release --config=postConPreDestExample | |
gdc-latest: | |
name: GDC on Ubuntu | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install DMD (so dub is available) | |
uses: dlang-community/setup-dlang@v1 | |
with: | |
compiler: dmd-latest | |
- name: Install GDC | |
run: | | |
sudo apt-get update | |
sudo apt-get install gdc -y | |
gdc --version | |
- name: Build library | |
env: | |
DC: gdc | |
run: dub build --compiler=gdc --build=release --config=library | |
- name: Build unittest | |
env: | |
DC: gdc | |
run: dub test --compiler=gdc --build=unittest --config=unittest | |
- name: Build examples | |
env: | |
DC: gdc | |
run: | | |
dub run --compiler=gdc --build=release --config=quickstartExample | |
dub run --compiler=gdc --build=release --config=qualifiersExample | |
dub run --compiler=gdc --build=release --config=arrayCompletionExample | |
dub run --compiler=gdc --build=release --config=annotationsExample | |
dub run --compiler=gdc --build=release --config=applicationContextExample | |
dub run --compiler=gdc --build=release --config=registerOnResolveExample | |
dub run --compiler=gdc --build=release --config=constructorInjectionExample | |
dub run --compiler=gdc --build=release --config=valueInjectionExample | |
dub run --compiler=gdc --build=release --config=postConPreDestExample |