Skip to content

CI

CI #414

Workflow file for this run

name: CI
on:
push:
branches: '*'
tags: v*
pull_request:
branches:
- master
schedule:
- cron: '0 0 * * *'
jobs:
build:
name: DUB Build & Test
strategy:
matrix:
os: [ubuntu-20.04, windows-2019]
dc:
- dmd-master
- ldc-master
- dmd-beta
- dmd-latest
- ldc-latest
- dmd-2.078.3
- dmd-2.085.1
- dmd-2.090.1
arch: [x86_64]
buildType: [unittest]
include:
- os: windows-2019
dc: dmd-latest
arch: x86
- os: windows-2019
dc: ldc-latest
arch: x86
- os: ubuntu-20.04
dc: dmd-latest
arch: x86_64
buildType: optimized-unittests
- os: ubuntu-20.04
dc: ldc-latest
arch: x86_64
buildType: optimized-unittests
runs-on: ${{ matrix.os }}
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Install D Compiler ${{ matrix.dc }}
uses: dlang-community/setup-dlang@v1
with:
compiler: ${{ matrix.dc }}
- name: Run Build
run: |
dub build --arch=${{ matrix.arch }}
- name: Test Snippets
run: dub --single tools/test_snippets.d -- --arch=${{ matrix.arch }}
- name: Test base package
run: |
dub test dwt:base --arch=${{ matrix.arch }}
- name: Install Gtk dependencies
if: ${{ matrix.os == 'ubuntu-20.04' }}
run: |
sudo apt-get install -y libatk1.0-dev libcairo2-dev \
libfontconfig1-dev libgdk-pixbuf2.0-dev libglib2.0-dev \
libgl-dev libglx-dev libgtk2.0-dev libopengl-dev libpango1.0-dev \
libx11-dev libxcomposite-dev libxcursor-dev libxdamage-dev \
libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxrandr-dev \
libxrender-dev libxtst-dev
- name: Test DWT Gtk (${{ matrix.buildType }})
if: ${{ matrix.os == 'ubuntu-20.04' }}
uses: coactions/setup-xvfb@v1 # X virtual framebuffer
with:
working-directory: ./
run: dub test -c unittest-gtk -b ${{ matrix.buildType }}