Newer
Older
dub_jkp / .github / workflows / alpine.yml
  1. # Build dub on Alpine Linux, testing compatibility with Musl
  2. name: Alpine
  3.  
  4. on:
  5. pull_request:
  6. branches:
  7. - master
  8. - stable
  9. push:
  10. branches:
  11. - master
  12. - stable
  13. # Use this branch name in your fork to test changes
  14. - github-actions
  15.  
  16. jobs:
  17. main:
  18. name: Run
  19. strategy:
  20. # Default, disable if you want to debug
  21. fail-fast: false
  22. matrix:
  23. include:
  24. # Disabled as we rely on DIP1000 `foreach (scope)` which GDC < 12 doesn't support
  25. # - { dc: gdc, dcpkg: gcc-gdc, dcbin: gdc }
  26. - { dc: ldc, dcpkg: ldc, dcbin: ldc2 }
  27. - { dc: dmd, dcpkg: dmd, dcbin: dmd }
  28.  
  29. # OS doesn't matter, we just need Docker
  30. runs-on: ubuntu-latest
  31. steps:
  32. # Checkout the repository
  33. - name: Checkout
  34. uses: actions/checkout@v3
  35.  
  36. - name: Build
  37. run: |
  38. docker build -t alpine-dub-image \
  39. --build-arg="DCPKG=${{ matrix.dcpkg}}" \
  40. --build-arg="DCBIN=${{ matrix.dcbin}}" \
  41. -f docker/Dockerfile.alpine $(pwd)
  42.  
  43. - name: Test
  44. run: docker run alpine-dub-image