[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/sdpython/pythonnet/master/.github/workflows/main.yml [Back]  [Original]

name: GitHub Actions

on: [ pull_request, push ]

jobs:
  build-test:
    name: Build and Test
    runs-on: ${{ matrix.os }}-latest
    timeout-minutes: 5

    strategy:
      fail-fast: false
      matrix:
        os: [windows, ubuntu, macos]
        python: [3.6, 3.7, 3.8, 3.9]
        platform: [x64]
        shutdown_mode: [Normal, Soft]

    env:
      PYTHONNET_SHUTDOWN_MODE: ${{ matrix.SHUTDOWN_MODE }}

    steps:
      - name: Set Environment on macOS
        uses: maxim-lobanov/setup-xamarin@v1
        if: ${{ matrix.os == 'macos' }}
        with:
          mono-version: latest

      - name: Checkout code
        uses: actions/checkout@v2

      - name: Setup .NET
        uses: actions/setup-dotnet@v1

      - name: Set up Python ${{ matrix.python }}
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python }}
          architecture: ${{ matrix.platform }}

      - name: Install dependencies
        run: |
          pip install --upgrade -r requirements.txt

      - name: Build and Install
        run: |
          python setup.py configure
          pip install -v .

      - name: Python Tests
        run: pytest

      - name: Embedding tests
        run: dotnet test --runtime any-${{ matrix.platform }} src/embed_tests/
        if: ${{ matrix.os != 'macos' }} # Not working right now, doesn't find libpython

      - name: Python tests run from .NET
        run: dotnet test --runtime any-${{ matrix.platform }} src/python_tests_runner/
        if: ${{ matrix.os == 'windows' }} # Not working for others right now

      # TODO: Run perf tests
      # TODO: Run mono tests on Windows?

Web Proxy Viewer  |  New URL  |  Original Page