diff --git a/.forgejo/workflows/ci.yml b/.forgejo/workflows/ci.yml index 25ef1f0789..6be69600d9 100644 --- a/.forgejo/workflows/ci.yml +++ b/.forgejo/workflows/ci.yml @@ -1,33 +1,38 @@ # SPDX-FileCopyrightText: 2021 yuzu Emulator Project +# SPDX-FileCopyrightText: 2024 suyu Emulator Project # SPDX-License-Identifier: GPL-2.0-or-later -name: yuzu-ci +# Actions Documentation: https://forgejo.org/docs/next/user/actions/#list-of-tasks-in-a-repository + +name: suyu-ci on: push: - branches: [ master ] + branches: [ "*" ] tags: [ "*" ] pull_request: - branches: [ master ] + branches: [ "dev" ] jobs: - transifex: - runs-on: ubuntu-latest - container: yuzuemu/build-environments:linux-transifex - if: ${{ github.repository == 'yuzu-emu/yuzu' && !github.head_ref }} - steps: - - uses: actions/checkout@v3 - with: - submodules: recursive - fetch-depth: 0 - - name: Update Translation - run: ./.ci/scripts/transifex/docker.sh - env: - TX_TOKEN: ${{ secrets.TRANSIFEX_API_TOKEN }} +# We don't have transifex for now. +# transifex: +# runs-on: ubuntu-latest +# container: fijxu/build-environments:linux-transifex +# if: ${{ GITHUB_REPOSITORY == 'suyu/suyu' && !GITHUB_HEAD_REF }} +# steps: +# - uses: https://code.forgejo.org/actions/checkout@v3 +# with: +# submodules: recursive +# fetch-depth: 0 +# - name: Update Translation +# run: ./.ci/scripts/transifex/docker.sh +# env: +# TX_TOKEN: ${{ secrets.TRANSIFEX_API_TOKEN }} reuse: runs-on: ubuntu-latest - if: ${{ github.repository == 'yuzu-emu/yuzu' }} + if: ${{ github.repository == 'suyu/suyu' }} steps: - - uses: actions/checkout@v3 - - uses: fsfe/reuse-action@v1 + - uses: https://code.forgejo.org/actions/checkout@v3 + - uses: https://github.com/fsfe/reuse-action@v1 + diff --git a/.forgejo/workflows/verify.yml b/.forgejo/workflows/verify.yml index a9e28eefd0..26f19586e8 100644 --- a/.forgejo/workflows/verify.yml +++ b/.forgejo/workflows/verify.yml @@ -1,11 +1,16 @@ # SPDX-FileCopyrightText: 2022 yuzu Emulator Project +# SPDX-FileCopyrightText: 2024 suyu Emulator Project # SPDX-License-Identifier: GPL-3.0-or-later -name: 'yuzu verify' +# Actions Documentation: https://forgejo.org/docs/next/user/actions/#list-of-tasks-in-a-repository + +name: 'suyu verify' on: pull_request: - branches: [ master ] + branches: [ "dev" ] + push: + branches: [ "dev" ] env: PR_NUMBER: pr${{ github.event.number }} @@ -14,17 +19,17 @@ jobs: name: 'verify format' runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: https://code.forgejo.org/actions/checkout@v3 with: submodules: false - name: set up JDK 17 - uses: actions/setup-java@v3 + uses: https://github.com/actions/setup-java@v3 with: java-version: '17' distribution: 'temurin' - name: 'Verify Formatting' run: bash -ex ./.ci/scripts/format/script.sh - build: + build-linux: name: 'test build' needs: format runs-on: ubuntu-latest @@ -39,15 +44,15 @@ jobs: - type: windows image: linux-mingw container: - image: yuzuemu/build-environments:${{ matrix.image }} + image: fijxu/build-environments:${{ matrix.image }} options: -u 1001 steps: - - uses: actions/checkout@v3 + - uses: https://code.forgejo.org/actions/checkout@v3 with: submodules: recursive fetch-depth: 0 - name: Set up cache - uses: actions/cache@v3 + uses: https://code.forgejo.org/actions/cache@v3 id: ccache-restore with: path: ~/.ccache @@ -66,102 +71,102 @@ jobs: env: NO_SOURCE_PACK: "YES" - name: Upload - uses: actions/upload-artifact@v3 + uses: https://code.forgejo.org/actions/upload-artifact@v3 with: name: ${{ matrix.type }} path: artifacts/ - build-mac: - name: 'test build (macos)' - needs: format - runs-on: macos-14 - steps: - - uses: actions/checkout@v3 - with: - submodules: recursive - fetch-depth: 0 - - name: Install dependencies - run: | - brew install autoconf automake boost ccache ffmpeg fmt glslang hidapi libtool libusb lz4 ninja nlohmann-json openssl pkg-config qt@5 sdl2 speexdsp zlib zlib zstd - - name: Build - run: | - mkdir build - cd build - export Qt5_DIR="$(brew --prefix qt@5)/lib/cmake" - cmake .. -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DSUYU_USE_BUNDLED_VCPKG=OFF -DSUYU_TESTS=OFF -DENABLE_WEB_SERVICE=OFF -DENABLE_LIBUSB=OFF - ninja - build-msvc: - name: 'test build (windows, msvc)' - needs: format - runs-on: windows-2022 - steps: - - uses: actions/checkout@v3 - with: - submodules: recursive - fetch-depth: 0 - - name: Set up cache - uses: actions/cache@v3 - with: - path: ~/.buildcache - key: ${{ runner.os }}-msvc-${{ github.sha }} - restore-keys: | - ${{ runner.os }}-msvc- - - name: Install dependencies - shell: pwsh - run: | - $ErrorActionPreference = "Stop" - $BuildCacheVer = "v0.28.4" - $File = "buildcache-windows.zip" - $Uri = "https://github.com/mbitsnbites/buildcache/releases/download/$BuildCacheVer/$File" - $WebClient = New-Object System.Net.WebClient - $WebClient.DownloadFile($Uri, $File) - 7z x $File - $CurrentDir = Convert-Path . - echo "$CurrentDir/buildcache/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append - - name: Install Vulkan SDK - shell: pwsh - run: .\.ci\scripts\windows\install-vulkan-sdk.ps1 - - name: Set up MSVC - uses: ilammy/msvc-dev-cmd@v1 - - name: Configure - env: - CC: cl.exe - CXX: cl.exe - run: | - glslangValidator --version - mkdir build - cmake . -B build -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DSUYU_USE_BUNDLED_QT=1 -DSUYU_USE_BUNDLED_SDL2=1 -DSUYU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DSUYU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release -DGIT_BRANCH=pr-verify -DSUYU_CRASH_DUMPS=ON - - name: Build - run: cmake --build build - - name: Cache Summary - run: buildcache -s - - name: Pack - shell: pwsh - run: .\.ci\scripts\windows\upload.ps1 - - name: Upload - uses: actions/upload-artifact@v3 - with: - name: msvc - path: artifacts/ - - name: Upload EXE - uses: actions/upload-artifact@v3 - with: - name: ${{ env.INDIVIDUAL_EXE }} - path: ${{ env.INDIVIDUAL_EXE }} + # build-mac: + # name: 'test build (macos)' + # needs: format + # runs-on: macos-14 + # steps: + # - uses: https://code.forgejo.org/actions/checkout@v3 + # with: + # submodules: recursive + # fetch-depth: 0 + # - name: Install dependencies + # run: | + # brew install autoconf automake boost ccache ffmpeg fmt glslang hidapi libtool libusb lz4 ninja nlohmann-json openssl pkg-config qt@5 sdl2 speexdsp zlib zlib zstd + # - name: Build + # run: | + # mkdir build + # cd build + # export Qt5_DIR="$(brew --prefix qt@5)/lib/cmake" + # cmake .. -GNinja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DSUYU_USE_BUNDLED_VCPKG=OFF -DSUYU_TESTS=OFF -DENABLE_WEB_SERVICE=OFF -DENABLE_LIBUSB=OFF + # ninja + # build-msvc: + # name: 'test build (windows, msvc)' + # needs: format + # runs-on: windows-2022 + # steps: + # - uses: https://code.forgejo.org/actions/checkout@v3 + # with: + # submodules: recursive + # fetch-depth: 0 + # - name: Set up cache + # uses: https://code.forgejo.org/actions/cache@v3 + # with: + # path: ~/.buildcache + # key: ${{ runner.os }}-msvc-${{ github.sha }} + # restore-keys: | + # ${{ runner.os }}-msvc- + # - name: Install dependencies + # shell: pwsh + # run: | + # $ErrorActionPreference = "Stop" + # $BuildCacheVer = "v0.28.4" + # $File = "buildcache-windows.zip" + # $Uri = "https://github.com/mbitsnbites/buildcache/releases/download/$BuildCacheVer/$File" + # $WebClient = New-Object System.Net.WebClient + # $WebClient.DownloadFile($Uri, $File) + # 7z x $File + # $CurrentDir = Convert-Path . + # echo "$CurrentDir/buildcache/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append + # - name: Install Vulkan SDK + # shell: pwsh + # run: .\.ci\scripts\windows\install-vulkan-sdk.ps1 + # - name: Set up MSVC + # uses: https://github.com/ilammy/msvc-dev-cmd@v1 + # - name: Configure + # env: + # CC: cl.exe + # CXX: cl.exe + # run: | + # glslangValidator --version + # mkdir build + # cmake . -B build -GNinja -DCMAKE_TOOLCHAIN_FILE="CMakeModules/MSVCCache.cmake" -DUSE_CCACHE=ON -DSUYU_USE_BUNDLED_QT=1 -DSUYU_USE_BUNDLED_SDL2=1 -DSUYU_USE_QT_WEB_ENGINE=ON -DENABLE_COMPATIBILITY_LIST_DOWNLOAD=ON -DSUYU_ENABLE_COMPATIBILITY_REPORTING=ON -DUSE_DISCORD_PRESENCE=ON -DENABLE_QT_TRANSLATION=ON -DCMAKE_BUILD_TYPE=Release -DGIT_BRANCH=pr-verify -DSUYU_CRASH_DUMPS=ON + # - name: Build + # run: cmake --build build + # - name: Cache Summary + # run: buildcache -s + # - name: Pack + # shell: pwsh + # run: .\.ci\scripts\windows\upload.ps1 + # - name: Upload + # uses: https://code.forgejo.org/actions/upload-artifact@v3 + # with: + # name: msvc + # path: artifacts/ + # - name: Upload EXE + # uses: https://code.forgejo.org/actions/upload-artifact@v3 + # with: + # name: ${{ env.INDIVIDUAL_EXE }} + # path: ${{ env.INDIVIDUAL_EXE }} android: runs-on: ubuntu-latest needs: format steps: - - uses: actions/checkout@v3 + - uses: https://code.forgejo.org/actions/checkout@v3 with: submodules: recursive fetch-depth: 0 - name: set up JDK 17 - uses: actions/setup-java@v3 + uses: https://github.com/actions/setup-java@v3 with: java-version: '17' distribution: 'temurin' - name: Set up cache - uses: actions/cache@v3 + uses: https://code.forgejo.org/actions/cache@v3 with: path: | ~/.gradle/caches @@ -171,7 +176,7 @@ jobs: restore-keys: | ${{ runner.os }}-android- - name: Query tag name - uses: olegtarasov/get-tag@v2.1.2 + uses: https://github.com/olegtarasov/get-tag@v2.1.2 id: tagName - name: Install dependencies run: | @@ -186,7 +191,8 @@ jobs: ANDROID_KEYSTORE_PASS: ${{ secrets.ANDROID_KEYSTORE_PASS }} run: ./.ci/scripts/android/upload.sh - name: Upload - uses: actions/upload-artifact@v3 + uses: https://code.forgejo.org/actions/upload-artifact@v3 with: name: android path: artifacts/ +