name: C/C++ CI

on:
  push:
    branches: [ master, ci ]
  pull_request:
    branches: [ master ]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      matrix:
        configs:
        - ""
        - "--with-kerberos5"
        - "--with-libedit"
        - "--with-pam"
        - "--with-security-key-builtin"
        - "--with-selinux"
        - "--with-kerberos5 --with-libedit --with-pam --with-security-key-builtin --with-selinux"
        - "--without-openssl --without-zlib"

    steps:
    - uses: actions/checkout@v2
    - name: setup CI system
      run: ./.github/setup_ci.sh ${{ matrix.configs }}
    - name: autoreconf
      run: autoreconf
    - name: configure
      run: ./configure ${{ matrix.configs }}
    - name: make
      run: make
    - name: make tests
      run: ./.github/run_test.sh ${{ matrix.configs }}
      env:
        TEST_SSH_UNSAFE_PERMISSIONS: 1
