diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ebdb5d223..9f255b9d6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -82,3 +82,65 @@ jobs: with: token: ${{ secrets.CODECOV_TOKEN }} file: coverage.xml + + integration: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: + - macos-latest + python-version: + - 2.7 + + steps: + + - name: [Ubuntu] Install Tor + if: matrix.os == 'ubuntu-latest' + run: sudo apt install tor + + - name: [macOS] Install Tor + if: matrix.os == 'macos-latest' + run: brew install tor + + - name: [Windows] Install Tor + if: matrix.os == 'windows-latest' + uses: crazy-max/ghaction-chocolatey@v1 + with: + args: install tor + + - name: Install MSVC 9.0 for Python 2.7 [Windows] + if: matrix.os == 'windows-latest' && matrix.python-version == '2.7' + uses: crazy-max/ghaction-chocolatey@v1 + with: + args: install vcpython27 + + - name: Check out Tahoe-LAFS sources + uses: actions/checkout@v2 + + - name: Fetch all history for all tags and branches + run: git fetch --prune --unshallow + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + + - name: Install Python packages + run: | + pip install --upgrade tox + pip list + + - name: Display tool versions + run: python misc/build_helpers/show-tool-versions.py + + - name: Run "tox -e integration" + run: tox -e integration + + - name: Upload eliot.log in case of failure + uses: actions/upload-artifact@v1 + if: failure() + with: + name: eliot.log + path: eliot.log +