diff options
author | Florian Bruhin <me@the-compiler.org> | 2022-06-21 20:45:20 +0200 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2022-06-21 20:45:20 +0200 |
commit | 3ac1c8a7a37f2914a6b49f4349a6c65148783ec2 (patch) | |
tree | 7e6d0bcfa08ea99da0d6bee33a19e26905ec47ed /.github/workflows | |
parent | cf58c694e3a9289697ede33561ccb12b616b325e (diff) | |
download | qutebrowser-3ac1c8a7a37f2914a6b49f4349a6c65148783ec2.tar.gz qutebrowser-3ac1c8a7a37f2914a6b49f4349a6c65148783ec2.zip |
ci: Split bleeding CI and nightly builds into two
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/bleeding.yml | 67 | ||||
-rw-r--r-- | .github/workflows/nightly.yml | 92 |
2 files changed, 96 insertions, 63 deletions
diff --git a/.github/workflows/bleeding.yml b/.github/workflows/bleeding.yml index b2370357f..dc85f8b21 100644 --- a/.github/workflows/bleeding.yml +++ b/.github/workflows/bleeding.yml @@ -31,75 +31,16 @@ jobs: run: "python scripts/dev/ci/problemmatchers.py py3 ${{ runner.temp }}" - name: Run tox run: dbus-run-session tox -e bleeding - - pyinstaller: - if: "github.repository == 'qutebrowser/qutebrowser'" - strategy: - fail-fast: false - matrix: - include: - - os: macos-10.15 - - os: windows-2019 - args: --64bit - - os: windows-2019 - args: --32bit - - os: macos-10.15 - args: --debug - - os: windows-2019 - args: --64bit --debug - - os: windows-2019 - args: --32bit --debug - runs-on: "${{ matrix.os }}" - timeout-minutes: 30 - steps: - - uses: actions/checkout@v2 - with: - persist-credentials: false - - name: Set up Python - uses: actions/setup-python@v2 - with: - python-version: "3.10" - - name: Get asciidoc - uses: actions/checkout@v2 - with: - repository: asciidoc-py/asciidoc-py - ref: '9.x' - path: asciidoc - persist-credentials: false - - name: Move asciidoc out of the repo - run: mv asciidoc .. - - name: Install dependencies - run: | - python -m pip install -U pip - python -m pip install -U -r misc/requirements/requirements-tox.txt - - name: Patch qutebrowser for debugging - if: "contains(matrix.args, '--debug')" - run: | - sed -i '' '/.-d., .--debug.,/s/$/ default=True,/' qutebrowser/qutebrowser.py - - name: Run tox - run: "tox -e build-release -- --asciidoc ../asciidoc/asciidoc.py --gh-token ${{ secrets.GITHUB_TOKEN }} ${{ matrix.args }}" - - name: Wait 90s to avoid upload errors - if: "contains(matrix.args, '--32bit')" - run: "sleep 90" - - name: Upload artifacts - uses: actions/upload-artifact@v2 - with: - name: "qutebrowser-nightly-${{ github.sha }}" - path: | - dist/qutebrowser-*.dmg - dist/qutebrowser-*-windows-standalone-*.zip - dist/qutebrowser-*-*.exe - irc: timeout-minutes: 2 continue-on-error: true runs-on: ubuntu-20.04 - needs: [tests, pyinstaller] + needs: [tests] if: "always() && github.repository == 'qutebrowser/qutebrowser'" steps: - name: Send success IRC notification uses: Gottox/irc-message-action@v1 - if: "needs.tests.result == 'success' && needs.pyinstaller.result == 'success'" + if: "needs.tests.result == 'success'" with: server: irc.libera.chat channel: '#qutebrowser-bots' @@ -107,10 +48,10 @@ jobs: message: "[${{ github.workflow }}] \u00033Success:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})" - name: Send non-success IRC notification uses: Gottox/irc-message-action@v1 - if: "needs.tests.result != 'success' || needs.pyinstaller.result != 'success'" + if: "needs.tests.result != 'success'" with: server: irc.libera.chat channel: '#qutebrowser-bots' nickname: qutebrowser-bot message: "[${{ github.workflow }}] \u00034FAIL:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})\n - tests: ${{ needs.tests.result }}, pyinstaller: ${{ needs.pyinstaller.result }}" + tests: ${{ needs.tests.result }}" diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml new file mode 100644 index 000000000..af13091c2 --- /dev/null +++ b/.github/workflows/nightly.yml @@ -0,0 +1,92 @@ +name: Nightly builds + +on: + workflow_dispatch: + schedule: + # Every day at 04:05 UTC + # https://crontab.guru/#05_04_*_*_* + - cron: '05 04 * * *' + +jobs: + pyinstaller: + if: "github.repository == 'qutebrowser/qutebrowser'" + strategy: + fail-fast: false + matrix: + include: + - os: macos-10.15 + - os: windows-2019 + args: --64bit + - os: windows-2019 + args: --32bit + - os: macos-10.15 + args: --debug + - os: windows-2019 + args: --64bit --debug + - os: windows-2019 + args: --32bit --debug + runs-on: "${{ matrix.os }}" + timeout-minutes: 30 + steps: + - uses: actions/checkout@v2 + with: + persist-credentials: false + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: "3.10" + - name: Get asciidoc + uses: actions/checkout@v2 + with: + repository: asciidoc-py/asciidoc-py + ref: '9.x' + path: asciidoc + persist-credentials: false + - name: Move asciidoc out of the repo + run: mv asciidoc .. + - name: Install dependencies + run: | + python -m pip install -U pip + python -m pip install -U -r misc/requirements/requirements-tox.txt + - name: Patch qutebrowser for debugging + if: "contains(matrix.args, '--debug')" + run: | + sed -i '' '/.-d., .--debug.,/s/$/ default=True,/' qutebrowser/qutebrowser.py + - name: Run tox + run: "tox -e build-release -- --asciidoc ../asciidoc/asciidoc.py --gh-token ${{ secrets.GITHUB_TOKEN }} ${{ matrix.args }}" + - name: Wait 90s to avoid upload errors + if: "contains(matrix.args, '--32bit')" + run: "sleep 90" + - name: Upload artifacts + uses: actions/upload-artifact@v2 + with: + name: "qutebrowser-nightly-${{ github.sha }}" + path: | + dist/qutebrowser-*.dmg + dist/qutebrowser-*-windows-standalone-*.zip + dist/qutebrowser-*-*.exe + + irc: + timeout-minutes: 2 + continue-on-error: true + runs-on: ubuntu-20.04 + needs: [pyinstaller] + if: "always() && github.repository == 'qutebrowser/qutebrowser'" + steps: + - name: Send success IRC notification + uses: Gottox/irc-message-action@v1 + if: "needs.pyinstaller.result == 'success'" + with: + server: irc.libera.chat + channel: '#qutebrowser-bots' + nickname: qutebrowser-bot + message: "[${{ github.workflow }}] \u00033Success:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})" + - name: Send non-success IRC notification + uses: Gottox/irc-message-action@v1 + if: "needs.pyinstaller.result != 'success'" + with: + server: irc.libera.chat + channel: '#qutebrowser-bots' + nickname: qutebrowser-bot + message: "[${{ github.workflow }}] \u00034FAIL:\u0003 ${{ github.ref }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (@${{ github.actor }})\n + pyinstaller: ${{ needs.pyinstaller.result }}" |