name: Linux build
on:
  push:
    branches:
      - '**'
  pull_request:
  schedule:
    - cron: '0 0 * * 0'
  workflow_dispatch:
jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        include:
          - language: python
          - language: java
            config: -old
          - language: java
            config: -new
          - language: csharp
          - language: r
          - language: scala
    container: ghcr.io/lballabio/quantlib-swig-devenv:${{ matrix.language }}
    steps:
    - uses: actions/checkout@v6
    - name: Build
      run: |
        ./.ci/${{ matrix.language }}${{ matrix.config }}.build
    - name: Install
      run: |
        ./.ci/${{ matrix.language }}${{ matrix.config }}.install
    - name: Check
      run: |
        ./.ci/${{ matrix.language }}${{ matrix.config }}.check
