name: libnetconf2 CI
on:
  push:
    branches:
      - master
      - devel
  pull_request:
    branches:
      - master
      - devel

env:
  DEFAULT_PACKAGES: libcmocka-dev zlib1g-dev libssh-dev libssl-dev libpam0g-dev

jobs:
  git-branch:
    name: Get git branch
    runs-on: ubuntu-latest
    outputs:
      branch-name: ${{ steps.get-git-branch.outputs.branch-name }}
    steps:
      - id: get-git-branch
        run: |
          if ${{ github.event_name == 'push' }}
            then export GIT_BRANCH=`echo ${{ github.ref }} | cut -d'/' -f 3`
          else
            export GIT_BRANCH=${{ github.base_ref }}
          fi
          echo "branch-name=$GIT_BRANCH" >> $GITHUB_OUTPUT

  build:
    name: ${{ matrix.config.name }}
    runs-on: ${{ matrix.config.os }}
    needs: git-branch
    strategy:
      fail-fast: false
      matrix:
        config:
          - {
            name: "Release, gcc",
            os: "ubuntu-22.04",
            build-type: "Release",
            dep-build-type: "Release",
            cc: "gcc",
            options: "-DENABLE_TESTS=ON -DENABLE_DNSSEC=ON",
            packages: "",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "Release, clang",
            os: "ubuntu-22.04",
            build-type: "Release",
            dep-build-type: "Release",
            cc: "clang",
            options: "-DENABLE_TESTS=ON -DENABLE_DNSSEC=ON",
            packages: "",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "Debug, gcc",
            os: "ubuntu-22.04",
            build-type: "Debug",
            dep-build-type: "Release",
            cc: "gcc",
            options: "-DENABLE_DNSSEC=ON",
            packages: "valgrind",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "Debug, clang",
            os: "ubuntu-22.04",
            build-type: "Debug",
            dep-build-type: "Release",
            cc: "clang",
            options: "-DENABLE_DNSSEC=ON",
            # no valgrind because it does not support DWARF5 yet generated by clang 14
            packages: "",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "SSH Only",
            os: "ubuntu-22.04",
            build-type: "Debug",
            dep-build-type: "Release",
            cc: "gcc",
            options: "-DENABLE_TLS=OFF -DENABLE_SSH=ON",
            packages: "valgrind",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "TLS Only",
            os: "ubuntu-22.04",
            build-type: "Debug",
            dep-build-type: "Release",
            cc: "gcc",
            options: "-DENABLE_TLS=ON -DENABLE_SSH=OFF",
            packages: "valgrind",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "No SSH nor TLS",
            os: "ubuntu-22.04",
            build-type: "Debug",
            dep-build-type: "Release",
            cc: "gcc",
            options: "-DENABLE_TLS=OFF -DENABLE_SSH=OFF",
            packages: "valgrind",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "ASAN and UBSAN",
            os: "ubuntu-22.04",
            build-type: "Debug",
            dep-build-type: "Release",
            cc: "clang",
            options: "-DCMAKE_C_FLAGS=-fsanitize=address,undefined -DENABLE_VALGRIND_TESTS=OFF",
            packages: "",
            snaps: "",
            make-prepend: "",
            make-target: ""
          }
          - {
            name: "ABI Check",
            os: "ubuntu-22.04",
            build-type: "ABICheck",
            dep-build-type: "Debug",
            cc: "gcc",
            options: "",
            packages: "abi-dumper abi-compliance-checker snap",
            snaps: "core universal-ctags",
            make-prepend: "",
            make-target: "abi-check"
          }

    steps:
      - uses: actions/checkout@v3

      - name: Deps-packages
        shell: bash
        run: |
          sudo apt-get update
          sudo apt-get install $DEFAULT_PACKAGES ${{ matrix.config.packages }}
          if ${{ matrix.config.snaps != '' }}
            then sudo snap refresh; sudo snap install ${{ matrix.config.snaps }}
          fi

      - name: Deps-uncrustify
        shell: bash
        working-directory: ${{ github.workspace }}
        run: |
          git clone --branch uncrustify-0.77.1 https://github.com/uncrustify/uncrustify
          cd uncrustify
          mkdir build
          cd build
          CC=${{ matrix.config.cc }} cmake ..
          make
          sudo make install
        if: ${{ matrix.config.name == 'Debug, gcc' }}

      - name: Deps-libyang
        shell: bash
        run: |
          git clone -b ${{ needs.git-branch.outputs.branch-name }} https://github.com/CESNET/libyang.git
          cd libyang
          mkdir build
          cd build
          CC=${{ matrix.config.cc }} cmake -DCMAKE_BUILD_TYPE=${{ matrix.config.dep-build-type }} -DENABLE_TESTS=OFF ..
          make -j2
          sudo make install

      - name: Deps-libval
        shell: bash
        run: |
          git clone https://github.com/DNSSEC-Tools/DNSSEC-Tools.git dnssec-tools
          cd dnssec-tools/dnssec-tools/validator
          ./configure
          make -j2
          sudo make install

      - name: Configure
        shell: bash
        working-directory: ${{ github.workspace }}
        run: |
          mkdir build
          cd build
          CC=${{ matrix.config.cc }} cmake -DCMAKE_BUILD_TYPE=${{ matrix.config.build-type }} ${{ matrix.config.options }} ..

      - name: Build
        shell: bash
        working-directory: ${{ github.workspace }}/build
        run: |
          export LC_ALL=C.UTF-8
          export PATH=/snap/bin:${{ github.workspace }}/coverity-tools/bin:$PATH
          ${{ matrix.config.make-prepend }} make ${{ matrix.config.make-target }}

      - name: Test
        shell: bash
        working-directory: ${{ github.workspace }}/build
        run: |
          export LSAN_OPTIONS=suppressions=${{ github.workspace }}/tests/library_lsan.supp
          ctest --output-on-failure
