fix: special shortcut for Windows live notifications #8176
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Test Ubuntu | |
on: | |
pull_request: | |
workflow_dispatch: | |
merge_group: | |
push: | |
branches: | |
- master | |
- main | |
env: | |
TWITCH_PUBSUB_SERVER_TAG: v1.0.8 | |
HTTPBOX_TAG: v0.2.1 | |
QT_QPA_PLATFORM: minimal | |
concurrency: | |
group: test-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
name: "Test ${{ matrix.os }}, Qt ${{ matrix.qt-version }}" | |
runs-on: ubuntu-latest | |
container: ${{ matrix.container }} | |
strategy: | |
matrix: | |
include: | |
- os: "ubuntu-22.04" | |
container: ghcr.io/chatterino/chatterino2-build-ubuntu-22.04:latest | |
qt-version: 6.7.1 | |
plugins: true | |
fail-fast: false | |
env: | |
C2_PLUGINS: ${{ matrix.plugins }} | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Create build directory (Ubuntu) | |
run: mkdir build-test | |
- name: Install dependencies | |
run: | | |
sudo apt update | |
sudo DEBIAN_FRONTEND=noninteractive apt -y --no-install-recommends install \ | |
libbenchmark-dev gcovr gnupg | |
- name: Install httpbox | |
run: | | |
curl -L -o httpbox.tar.xz "https://github.com/Chatterino/httpbox/releases/download/${{ env.HTTPBOX_TAG }}/httpbox-x86_64-unknown-linux-gnu.tar.xz" | |
tar -xJf httpbox.tar.xz | |
mv ./httpbox-x86_64-unknown-linux-gnu/httpbox /usr/local/bin | |
working-directory: /tmp | |
- name: Build (Ubuntu) | |
run: | | |
cmake \ | |
-DBUILD_TESTS=On \ | |
-DBUILD_BENCHMARKS=On \ | |
-DBUILD_APP=OFF \ | |
-DCHATTERINO_PLUGINS="$C2_PLUGINS" \ | |
-DCMAKE_PREFIX_PATH="$Qt6_DIR/lib/cmake" \ | |
-DCHATTERINO_STATIC_QT_BUILD=On \ | |
-DCHATTERINO_GENERATE_COVERAGE=On \ | |
-DCMAKE_BUILD_TYPE=Debug \ | |
.. | |
cmake --build . -j $(nproc) | |
working-directory: build-test | |
- name: Download and extract Twitch PubSub Server Test | |
run: | | |
mkdir pubsub-server-test | |
curl -L -o pubsub-server.tar.gz "https://github.com/Chatterino/twitch-pubsub-server-test/releases/download/${{ env.TWITCH_PUBSUB_SERVER_TAG }}/server-${{ env.TWITCH_PUBSUB_SERVER_TAG }}-linux-amd64.tar.gz" | |
tar -xzf pubsub-server.tar.gz -C pubsub-server-test | |
rm pubsub-server.tar.gz | |
cd pubsub-server-test | |
cd .. | |
- name: Test | |
timeout-minutes: 30 | |
run: | | |
httpbox --port 9051 & | |
cd ../pubsub-server-test | |
./server 127.0.0.1:9050 & | |
cd ../build-test | |
ctest --repeat until-pass:4 --output-on-failure | |
working-directory: build-test | |
- name: Run benchmark | |
timeout-minutes: 2 | |
run: | | |
./bin/chatterino-benchmark --benchmark_min_time=1x | |
working-directory: build-test | |
- name: Upload coverage reports to Codecov | |
uses: codecov/[email protected] | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
plugins: gcov | |
fail_ci_if_error: true | |
verbose: true | |
eventsub-test: | |
name: "EventSub python test" | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install dependencies | |
run: | | |
sudo apt update | |
sudo DEBIAN_FRONTEND=noninteractive apt -y --no-install-recommends install \ | |
python3 python3-venv clang-18 clang-format-18 libclang-18-dev | |
echo "LIBCLANG_LIBRARY_FILE=/usr/lib/x86_64-linux-gnu/libclang-18.so" >> "$GITHUB_ENV" | |
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-18 42 | |
sudo update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-18 42 | |
- name: Setup virtual environment | |
run: | | |
python3 -m venv venv | |
./venv/bin/pip3 install -r requirements.txt | |
./venv/bin/pip3 install -r requirements-dev.txt | |
working-directory: lib/twitch-eventsub-ws/ast | |
- name: Run pytest | |
run: | | |
./venv/bin/pytest | |
working-directory: lib/twitch-eventsub-ws/ast |