From df5324c7494a2da987656e82844bd0c328865829 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sat, 23 Dec 2023 18:55:10 +0100 Subject: [PATCH] CI rework Signed-off-by: falkTX --- .github/workflows/build.yml | 59 ++++++++++++----------------------- .github/workflows/irc.yml | 20 ------------ .github/workflows/release.yml | 9 +++++- 3 files changed, 28 insertions(+), 60 deletions(-) delete mode 100644 .github/workflows/irc.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 761b0cac63..e1c8f13c7e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,36 +4,26 @@ on: [push, pull_request] env: DEBIAN_FRONTEND: noninteractive + EMSCRIPTEN_VERSION: 3.1.27 HOMEBREW_NO_AUTO_UPDATE: 1 - WITH_LTO: false + HOMEBREW_NO_INSTALL_CLEANUP: 1 jobs: - macos-11: - runs-on: macos-11 + linux: + strategy: + matrix: + target: [debian:11, debian:12, ubuntu:18.04, ubuntu:20.04, ubuntu:22.04] + runs-on: ubuntu-latest + container: + image: ${{ matrix.target }} steps: - uses: actions/checkout@v3 - name: Set up dependencies run: | - brew install fluid-synth liblo libmagic libsndfile pkg-config pyqt@5 qt@5 sdl2 - - name: make features - run: make features - - name: make - run: make -j $(sysctl -n hw.logicalcpu) - - ubuntu-20_04: - runs-on: ubuntu-20.04 - steps: - - uses: actions/checkout@v3 - - name: Fix GitHub's mess - run: | - sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list sudo dpkg --add-architecture i386 sudo apt-get update -qq - sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal - - name: Set up dependencies - run: | - sudo apt-get install -yqq libasound2-dev libfluidsynth-dev libgl1-mesa-dev liblo-dev libmagic-dev libpulse-dev libsdl2-dev libsndfile1-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev pkg-config pyqt5-dev-tools qtbase5-dev - sudo apt-get install -yqq g++-multilib libx11-6:i386 libxext6:i386 + sudo apt-get install -yqq g++-multilib libasound2-dev libfluidsynth-dev libgl1-mesa-dev liblo-dev libmagic-dev libpulse-dev libsdl2-dev libsndfile1-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev make pkg-config pyqt5-dev-tools qtbase5-dev + sudo apt-get install -yqq libx11-6:i386 libxext6:i386 # Fix 32bit bridge build sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so sudo ln -s /usr/lib/i386-linux-gnu/libXext.so.6 /usr/lib/i386-linux-gnu/libXext.so @@ -44,34 +34,25 @@ jobs: - name: make posix32 run: make posix32 -j $(nproc) - ubuntu-22_04: - runs-on: ubuntu-22.04 + macos: + strategy: + matrix: + target: [macos-11, macos-12] + runs-on: ${{ matrix.target }} steps: - uses: actions/checkout@v3 - - name: Fix GitHub's mess - run: | - sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list - sudo dpkg --add-architecture i386 - sudo apt-get update -qq - sudo apt-get install -yqq --allow-downgrades libc6:i386 libgcc-s1:i386 libstdc++6:i386 + with: + submodules: recursive - name: Set up dependencies run: | - sudo apt-get install -yqq libasound2-dev libfluidsynth-dev libgl1-mesa-dev liblo-dev libmagic-dev libpulse-dev libsdl2-dev libsndfile1-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev pkg-config pyqt5-dev-tools qtbase5-dev - sudo apt-get install -yqq g++-multilib libx11-6:i386 libxext6:i386 - # Fix 32bit bridge build - sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so - sudo ln -s /usr/lib/i386-linux-gnu/libXext.so.6 /usr/lib/i386-linux-gnu/libXext.so + brew install fluid-synth liblo libmagic libsndfile pkg-config pyqt@5 qt@5 sdl2 - name: make features run: make features - name: make - run: make -j $(nproc) - - name: make posix32 - run: make posix32 -j $(nproc) + run: make -j $(sysctl -n hw.logicalcpu) wasm: runs-on: ubuntu-22.04 - env: - EMSCRIPTEN_VERSION: 3.1.27 steps: - uses: actions/checkout@v3 with: diff --git a/.github/workflows/irc.yml b/.github/workflows/irc.yml deleted file mode 100644 index 539fa1d2ac..0000000000 --- a/.github/workflows/irc.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: irc - -on: [push] - -jobs: - notification: - runs-on: ubuntu-latest - name: IRC notification - steps: - - name: Format message - id: message - run: | - message="${{ github.actor }} pushed $(echo '${{ github.event.commits[0].message }}' | head -n 1) ${{ github.event.commits[0].url }}" - echo ::set-output name=message::"${message}" - - name: IRC notification - uses: Gottox/irc-message-action@v2 - with: - channel: '#kxstudio' - nickname: kxstudio-bot - message: ${{ steps.message.outputs.message }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0ab65ebe62..7763594593 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,8 +4,12 @@ on: [push, pull_request] env: CACHE_VERSION: 1 + DEBIAN_FRONTEND: noninteractive + HOMEBREW_NO_AUTO_UPDATE: 1 + HOMEBREW_NO_INSTALL_CLEANUP: 1 PAWPAW_SKIP_LTO: 1 - PAWPAW_VERSION: cd7b760d6a32ecad263b112c12be8a306ed1e89c + PAWPAW_SKIP_TESTS: 1 + PAWPAW_VERSION: 4abf7b5fa7a8203e8f31db0f222b3a3b6f9a93a2 jobs: # macOS native universal build @@ -29,6 +33,7 @@ jobs: run: | git clone https://github.com/DISTRHO/PawPaw.git git -C PawPaw checkout ${{ env.PAWPAW_VERSION }} + ./PawPaw/.github/workflows/bootstrap-deps.sh macos-universal ./PawPaw/bootstrap-carla.sh macos-universal && ./PawPaw/.cleanup.sh macos-universal - name: Build macOS universal shell: bash @@ -92,6 +97,7 @@ jobs: run: | git clone https://github.com/DISTRHO/PawPaw.git git -C PawPaw checkout ${{ env.PAWPAW_VERSION }} + ./PawPaw/.github/workflows/bootstrap-deps.sh win32 ./PawPaw/bootstrap-carla.sh win32 && ./PawPaw/.cleanup.sh win32 - name: Build win32 cross-compiled shell: bash @@ -155,6 +161,7 @@ jobs: run: | git clone https://github.com/DISTRHO/PawPaw.git git -C PawPaw checkout ${{ env.PAWPAW_VERSION }} + ./PawPaw/.github/workflows/bootstrap-deps.sh win64 ./PawPaw/bootstrap-carla.sh win64 && ./PawPaw/.cleanup.sh win64 - name: Build win64 cross-compiled shell: bash