# Copyright (C) 2021  The Symbiflow Authors.
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC

name: CI

on: [push, pull_request]

jobs:


  Checks:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
      with:
        submodules: recursive

    - uses: symbiflow/actions/checks@main


  Tests:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version: [3.6, 3.7, 3.8, 3.9]
    steps:
    - uses: actions/checkout@v2
      with:
        submodules: recursive

    - name: Setup
      run: |
        sed -i -e's/- python/- python=${{ matrix.python-version }}/' environment.yml
        cat environment.yml
        make env

    - name: Test
      run: |
        TOXENV="$(echo py${{ matrix.python-version }} | sed -e's/\.//g')" make test-py

    - name: Upload test results
      uses: actions/upload-artifact@v2
      with:
        name: test-results-${{ matrix.python-version }}
        path: junit/python${{ matrix.python-version }}-test-results.xml
      if: always()
