diff options
author | Florian Bruhin <me@the-compiler.org> | 2020-12-02 15:56:42 +0100 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2020-12-02 15:56:42 +0100 |
commit | 42c979c433aa2614e9dce6a845176df8a2f1af24 (patch) | |
tree | f9d643b8b0faf98015985551e4f75f9e8dfb1137 | |
parent | 6c42f977814a3bfe937235b269bb80a5ba81a7a5 (diff) | |
download | qutebrowser-42c979c433aa2614e9dce6a845176df8a2f1af24.tar.gz qutebrowser-42c979c433aa2614e9dce6a845176df8a2f1af24.zip |
WIP: test cheroot
-rw-r--r-- | .github/workflows/ci.yml | 209 | ||||
-rw-r--r-- | misc/requirements/requirements-tests.txt | 2 |
2 files changed, 34 insertions, 177 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8e1f1341f..08ae68d8e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,88 +10,6 @@ env: MYPY_FORCE_TERMINAL_WIDTH: "180" jobs: - linters: - if: "!contains(github.event.head_commit.message, '[ci skip]')" - timeout-minutes: 10 - runs-on: ubuntu-20.04 - strategy: - fail-fast: false - matrix: - include: - - testenv: pylint - - testenv: flake8 - - testenv: mypy - - testenv: docs - - testenv: vulture - - testenv: misc - - testenv: pyroma - - testenv: check-manifest - - testenv: eslint - - testenv: shellcheck - args: "-f gcc" # For problem matchers - - testenv: yamllint - steps: - - uses: actions/checkout@v2 - - uses: actions/cache@v2 - with: - path: | - .mypy_cache - .tox - ~/.cache/pip - key: "${{ matrix.testenv }}-${{ hashFiles('misc/requirements/requirements-*.txt') }}-${{ hashFiles('requirements.txt') }}" - - uses: actions/setup-python@v2 - with: - python-version: '3.8' - - uses: actions/setup-node@v2-beta - with: - node-version: '12.x' - if: "matrix.testenv == 'eslint'" - - name: Set up problem matchers - run: "python scripts/dev/ci/problemmatchers.py ${{ matrix.testenv }} ${{ runner.temp }}" - - name: Install dependencies - run: | - [[ ${{ matrix.testenv }} == eslint ]] && npm install -g eslint - [[ ${{ matrix.testenv }} == docs ]] && sudo apt-get install --no-install-recommends asciidoc - if [[ ${{ matrix.testenv }} == shellcheck ]]; then - scversion="stable" - bindir="$HOME/.local/bin" - mkdir -p "$bindir" - wget -qO- "https://github.com/koalaman/shellcheck/releases/download/$scversion/shellcheck-$scversion.linux.x86_64.tar.xz" | tar -xJv --strip-components 1 -C "$bindir" shellcheck-$scversion/shellcheck - echo "$bindir" >> "$GITHUB_PATH" - fi - python -m pip install -U pip - python -m pip install -U -r misc/requirements/requirements-tox.txt - - name: "Run ${{ matrix.testenv }}" - run: "tox -e ${{ matrix.testenv}} -- ${{ matrix.args }}" - - tests-docker: - if: "!contains(github.event.head_commit.message, '[ci skip]')" - timeout-minutes: 30 - runs-on: ubuntu-20.04 - strategy: - fail-fast: false - matrix: - image: - - archlinux-webkit - - archlinux-webengine - # - archlinux-webengine-unstable - container: - image: "qutebrowser/ci:${{ matrix.image }}" - env: - QUTE_BDD_WEBENGINE: "${{ matrix.image != 'archlinux-webkit' }}" - DOCKER: "${{ matrix.image }}" - CI: true - PYTEST_ADDOPTS: "--color=yes" - volumes: - # Hardcoded because we can't use ${{ runner.temp }} here apparently. - - /home/runner/work/_temp/:/home/runner/work/_temp/ - options: --privileged --tty - steps: - - uses: actions/checkout@v2 - - name: Set up problem matchers - run: "python scripts/dev/ci/problemmatchers.py py38 ${{ runner.temp }}" - - run: tox -e py38 - tests: if: "!contains(github.event.head_commit.message, '[ci skip]')" timeout-minutes: 45 @@ -100,36 +18,47 @@ jobs: fail-fast: false matrix: include: - ### PyQt 5.12 (Python 3.6) - - testenv: py36-pyqt512 - os: ubuntu-20.04 - python: 3.6 - ### PyQt 5.13 (Python 3.7) - - testenv: py37-pyqt513 - os: ubuntu-20.04 + ### Windows: PyQt 5.15 (Python 3.7 to match PyInstaller env) + - testenv: py37-pyqt515 + os: windows-2019 python: 3.7 - ### PyQt 5.14 (Python 3.8) - - testenv: py38-pyqt514 - os: ubuntu-20.04 - python: 3.8 - ### PyQt 5.15 (Python 3.9, with coverage) - - testenv: py39-pyqt515-cov - os: ubuntu-20.04 - python: 3.9 - ### macOS: PyQt 5.15 (Python 3.7 to match PyInstaller env) + n: 1 - testenv: py37-pyqt515 - os: macos-10.15 + os: windows-2019 python: 3.7 - args: "tests/unit" # Only run unit tests on macOS - ### macOS Big Sur + n: 2 - testenv: py37-pyqt515 - os: macos-11.0 + os: windows-2019 python: 3.7 - args: "tests/unit" # Only run unit tests on macOS - ### Windows: PyQt 5.15 (Python 3.7 to match PyInstaller env) + n: 3 + - testenv: py37-pyqt515 + os: windows-2019 + python: 3.7 + n: 4 + - testenv: py37-pyqt515 + os: windows-2019 + python: 3.7 + n: 5 + - testenv: py37-pyqt515 + os: windows-2019 + python: 3.7 + n: 6 + - testenv: py37-pyqt515 + os: windows-2019 + python: 3.7 + n: 7 + - testenv: py37-pyqt515 + os: windows-2019 + python: 3.7 + n: 8 + - testenv: py37-pyqt515 + os: windows-2019 + python: 3.7 + n: 9 - testenv: py37-pyqt515 os: windows-2019 python: 3.7 + n: 10 runs-on: "${{ matrix.os }}" steps: - uses: actions/checkout@v2 @@ -157,75 +86,3 @@ jobs: python -m pip install -U -r misc/requirements/requirements-tox.txt - name: "Run ${{ matrix.testenv }}" run: "tox -e ${{ matrix.testenv}} -- ${{ matrix.args }}" - - name: Analyze backtraces - run: "bash scripts/dev/ci/backtrace.sh ${{ matrix.testenv }}" - if: "failure()" - - name: Upload coverage - if: "endsWith(matrix.testenv, '-cov')" - uses: codecov/codecov-action@v1 - with: - name: "${{ matrix.testenv }}" - - codeql: - if: "!contains(github.event.head_commit.message, '[ci skip]')" - timeout-minutes: 30 - runs-on: ubuntu-20.04 - steps: - - name: Checkout repository - uses: actions/checkout@v2 - with: - # We must fetch at least the immediate parents so that if this is - # a pull request then we can checkout the head. - fetch-depth: 2 - # If this run was triggered by a pull request event, then checkout - # the head of the pull request instead of the merge commit. - - run: git checkout HEAD^2 - if: ${{ github.event_name == 'pull_request' }} - - name: Initialize CodeQL - uses: github/codeql-action/init@v1 - with: - languages: javascript, python - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 - - irc: - timeout-minutes: 2 - continue-on-error: true - runs-on: ubuntu-20.04 - needs: [linters, tests, tests-docker, codeql] - if: "always() && github.repository_owner == 'qutebrowser'" - steps: - - name: Send success IRC notification - uses: Gottox/irc-message-action@v1.1 - if: "needs.linters.result == 'success' && needs.tests.result == 'success' && needs.tests-docker.result == 'success' && needs.codeql.result == 'success'" - with: - server: chat.freenode.net - channel: '#qutebrowser-dev' - nickname: qutebrowser-bot - message: "[${{ github.workflow }}] \u00033Success:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})" - - name: Send failure IRC notification - uses: Gottox/irc-message-action@v1.1 - if: "needs.linters.result == 'failure' || needs.tests.result == 'failure' || needs.tests-docker.result == 'failure' || needs.codeql.result == 'failure'" - with: - server: chat.freenode.net - channel: '#qutebrowser-dev' - nickname: qutebrowser-bot - message: "[${{ github.workflow }}] \u00034FAIL:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})\n - linters: ${{ needs.linters.result }}, tests: ${{ needs.tests.result }}, tests-docker: ${{ needs.tests-docker.result }}, codeql: ${{ needs.codeql.result }}" - - name: Send skipped IRC notification - uses: Gottox/irc-message-action@v1.1 - if: "needs.linters.result == 'skipped' || needs.tests.result == 'skipped' || needs.tests-docker.result == 'skipped' || needs.codeql.result == 'skipped'" - with: - server: chat.freenode.net - channel: '#qutebrowser-dev' - nickname: qutebrowser-bot - message: "[${{ github.workflow }}] \u00038Skipped:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})" - - name: Send cancelled IRC notification - uses: Gottox/irc-message-action@v1.1 - if: "needs.linters.result == 'cancelled' || needs.tests.result == 'cancelled' || needs.tests-docker.result == 'cancelled' || needs.codeql.result == 'cancelled'" - with: - server: chat.freenode.net - channel: '#qutebrowser-dev' - nickname: qutebrowser-bot - message: "[${{ github.workflow }}] \u000314Cancelled:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})\n - linters: ${{ needs.linters.result }}, tests: ${{ needs.tests.result }}, tests-docker: ${{ needs.tests-docker.result }}, codeql: ${{ needs.codeql.result }}" diff --git a/misc/requirements/requirements-tests.txt b/misc/requirements/requirements-tests.txt index bd77427d4..c0f6f548d 100644 --- a/misc/requirements/requirements-tests.txt +++ b/misc/requirements/requirements-tests.txt @@ -5,7 +5,7 @@ attrs==20.3.0 beautifulsoup4==4.9.3 certifi==2020.11.8 chardet==3.0.4 -cheroot==8.4.7 +cheroot==8.4.8 click==7.1.2 # colorama==0.4.4 coverage==5.3 |