diff options
| author | Elias Fleckenstein <eliasfleckenstein@web.de> | 2022-05-17 22:12:00 +0200 |
|---|---|---|
| committer | Elias Fleckenstein <eliasfleckenstein@web.de> | 2022-05-17 22:12:00 +0200 |
| commit | 21df26984da91143c15587f5a03c98d68c3adc4e (patch) | |
| tree | aaa707a628ad331f67890023dffe1b4f60dd01d3 /.github/workflows | |
| parent | b09fc5de5cdb021f43ad32b7e3f50dc75c0bc622 (diff) | |
| parent | eabf05758e3ba5f6f4bb1b8d1d1f02179b84e410 (diff) | |
| download | dragonfireclient-21df26984da91143c15587f5a03c98d68c3adc4e.tar.xz | |
Merge branch 'master' of https://github.com/minetest/minetest
Diffstat (limited to '.github/workflows')
| -rw-r--r-- | .github/workflows/android.yml | 16 | ||||
| -rw-r--r-- | .github/workflows/build.yml | 120 | ||||
| -rw-r--r-- | .github/workflows/cpp_lint.yml | 14 | ||||
| -rw-r--r-- | .github/workflows/lua.yml | 61 | ||||
| -rw-r--r-- | .github/workflows/lua_lint.yml | 32 | ||||
| -rw-r--r-- | .github/workflows/macos.yml | 10 |
6 files changed, 130 insertions, 123 deletions
diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 660b5c8df..20411a332 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -21,24 +21,22 @@ on: jobs: build: - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 - - name: Set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 + - uses: actions/checkout@v3 - name: Install deps - run: sudo apt-get update; sudo apt-get install -y --no-install-recommends gettext + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends gettext openjdk-11-jdk-headless - name: Build with Gradle run: cd android; ./gradlew assemblerelease - name: Save armeabi artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: Minetest-armeabi-v7a.apk path: android/app/build/outputs/apk/release/app-armeabi-v7a-release-unsigned.apk - name: Save arm64 artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: Minetest-arm64-v8a.apk path: android/app/build/outputs/apk/release/app-arm64-v8a-release-unsigned.apk diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 417b4f650..2cc83923b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,53 +30,53 @@ on: - '.dockerignore' jobs: - # This is our minor gcc compiler - gcc_6: + # Older gcc version (should be close to our minimum supported version) + gcc_5: runs-on: ubuntu-18.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | source ./util/ci/common.sh - install_linux_deps g++-6 + install_linux_deps g++-5 - name: Build run: | ./util/ci/build.sh env: - CC: gcc-6 - CXX: g++-6 + CC: gcc-5 + CXX: g++-5 - name: Test run: | ./bin/minetest --run-unittests - # This is the current gcc compiler (available in bionic) - gcc_8: - runs-on: ubuntu-18.04 + # Current gcc version + gcc_10: + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | source ./util/ci/common.sh - install_linux_deps g++-8 + install_linux_deps g++-10 - name: Build run: | ./util/ci/build.sh env: - CC: gcc-8 - CXX: g++-8 + CC: gcc-10 + CXX: g++-10 - name: Test run: | ./bin/minetest --run-unittests - # This is our minor clang compiler + # Older clang version (should be close to our minimum supported version) clang_3_9: runs-on: ubuntu-18.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | source ./util/ci/common.sh @@ -93,26 +93,26 @@ jobs: run: | ./bin/minetest --run-unittests - - name: Integration test + - name: Integration test + devtest run: | ./util/test_multiplayer.sh - # This is the current clang version - clang_9: - runs-on: ubuntu-18.04 + # Current clang version + clang_10: + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | source ./util/ci/common.sh - install_linux_deps clang-9 valgrind libluajit-5.1-dev + install_linux_deps clang-10 valgrind libluajit-5.1-dev - name: Build run: | ./util/ci/build.sh env: - CC: clang-9 - CXX: clang++-9 + CC: clang-10 + CXX: clang++-10 CMAKE_FLAGS: "-DREQUIRE_LUAJIT=1" - name: Test @@ -126,9 +126,9 @@ jobs: # Build with prometheus-cpp (server-only) clang_9_prometheus: name: "clang_9 (PROMETHEUS=1)" - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | source ./util/ci/common.sh @@ -150,34 +150,11 @@ jobs: run: | ./bin/minetestserver --run-unittests - # Build without freetype (client-only) - clang_9_no_freetype: - name: "clang_9 (FREETYPE=0)" - runs-on: ubuntu-18.04 - steps: - - uses: actions/checkout@v2 - - name: Install deps - run: | - source ./util/ci/common.sh - install_linux_deps clang-9 - - - name: Build - run: | - ./util/ci/build.sh - env: - CC: clang-9 - CXX: clang++-9 - CMAKE_FLAGS: "-DENABLE_FREETYPE=0 -DBUILD_SERVER=0" - - - name: Test - run: | - ./bin/minetest --run-unittests - docker: name: "Docker image" - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Build docker image run: | docker build . -t minetest:latest @@ -185,13 +162,13 @@ jobs: win32: name: "MinGW cross-compiler (32-bit)" - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install compiler run: | - sudo apt-get update -q && sudo apt-get install gettext -qyy - wget http://minetest.kitsunemimi.pw/mingw-w64-i686_9.2.0_ubuntu18.04.tar.xz -O mingw.tar.xz + sudo apt-get update && sudo apt-get install -y gettext + wget http://minetest.kitsunemimi.pw/mingw-w64-i686_11.2.0_ubuntu20.04.tar.xz -O mingw.tar.xz sudo tar -xaf mingw.tar.xz -C /usr - name: Build @@ -203,13 +180,13 @@ jobs: win64: name: "MinGW cross-compiler (64-bit)" - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install compiler run: | - sudo apt-get update -q && sudo apt-get install gettext -qyy - wget http://minetest.kitsunemimi.pw/mingw-w64-x86_64_9.2.0_ubuntu18.04.tar.xz -O mingw.tar.xz + sudo apt-get update && sudo apt-get install -y gettext + wget http://minetest.kitsunemimi.pw/mingw-w64-x86_64_11.2.0_ubuntu20.04.tar.xz -O mingw.tar.xz sudo tar -xaf mingw.tar.xz -C /usr - name: Build @@ -222,13 +199,10 @@ jobs: msvc: name: VS 2019 ${{ matrix.config.arch }}-${{ matrix.type }} runs-on: windows-2019 - #### Disabled due to Irrlicht switch - if: false - #### Disabled due to Irrlicht switch env: - VCPKG_VERSION: 0bf3923f9fab4001c00f0f429682a0853b5749e0 -# 2020.11 - vcpkg_packages: irrlicht zlib zstd curl[winssl] openal-soft libvorbis libogg sqlite3 freetype luajit + VCPKG_VERSION: 5cf60186a241e84e8232641ee973395d4fde90e1 + # 2022.02 + vcpkg_packages: zlib zstd curl[winssl] openal-soft libvorbis libogg libjpeg-turbo sqlite3 freetype luajit gmp jsoncpp opengl-registry strategy: fail-fast: false matrix: @@ -249,11 +223,17 @@ jobs: # Enable it, when working on the installer. steps: - - name: Checkout - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + + - name: Checkout IrrlichtMt + uses: actions/checkout@v3 + with: + repository: minetest/irrlicht + path: lib/irrlichtmt/ + ref: "1.9.0mt5" - name: Restore from cache and run vcpkg - uses: lukka/run-vcpkg@v5 + uses: lukka/run-vcpkg@v7 with: vcpkgArguments: ${{env.vcpkg_packages}} vcpkgDirectory: '${{ github.workspace }}\vcpkg' @@ -261,7 +241,7 @@ jobs: vcpkgGitCommitId: ${{ env.VCPKG_VERSION }} vcpkgTriplet: ${{ matrix.config.vcpkg_triplet }} - - name: CMake + - name: Minetest CMake run: | cmake ${{matrix.config.generator}} ` -DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}\vcpkg\scripts\buildsystems\vcpkg.cmake" ` @@ -269,7 +249,7 @@ jobs: -DENABLE_POSTGRESQL=OFF ` -DRUN_IN_PLACE=${{ contains(matrix.type, 'portable') }} . - - name: Build + - name: Build Minetest run: cmake --build . --config Release - name: CPack @@ -288,7 +268,7 @@ jobs: - name: Package Clean run: rm -r $env:GITHUB_WORKSPACE\Package\_CPack_Packages - - uses: actions/upload-artifact@v1 + - uses: actions/upload-artifact@v3 with: name: msvc-${{ matrix.config.arch }}-${{ matrix.type }} path: .\Package\ diff --git a/.github/workflows/cpp_lint.yml b/.github/workflows/cpp_lint.yml index 2bd884c7a..581ee06d6 100644 --- a/.github/workflows/cpp_lint.yml +++ b/.github/workflows/cpp_lint.yml @@ -26,12 +26,13 @@ on: jobs: # clang_format: -# runs-on: ubuntu-18.04 +# runs-on: ubuntu-20.04 # steps: -# - uses: actions/checkout@v2 +# - uses: actions/checkout@v3 # - name: Install clang-format # run: | -# sudo apt-get install clang-format-9 -qyy +# sudo apt-get update +# sudo apt-get install -y clang-format-9 # # - name: Run clang-format # run: | @@ -41,14 +42,13 @@ jobs: # CLANG_FORMAT: clang-format-9 clang_tidy: - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | - sudo apt-get install clang-tidy-9 -qyy source ./util/ci/common.sh - install_linux_deps + install_linux_deps clang-tidy-9 - name: Run clang-tidy run: | diff --git a/.github/workflows/lua.yml b/.github/workflows/lua.yml new file mode 100644 index 000000000..3af4a6ee7 --- /dev/null +++ b/.github/workflows/lua.yml @@ -0,0 +1,61 @@ +name: lua_lint + +# Lint on lua changes on builtin or if workflow changed +on: + push: + paths: + - 'builtin/**.lua' + - 'games/devtest/**.lua' + - '.github/workflows/**.yml' + pull_request: + paths: + - 'builtin/**.lua' + - 'games/devtest/**.lua' + - '.github/workflows/**.yml' + +jobs: + # Note that the integration tests are also run build.yml, but only when C++ code is changed. + integration_tests: + name: "Compile and run multiplayer tests" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v3 + - name: Install deps + run: | + source ./util/ci/common.sh + install_linux_deps clang-10 gdb libluajit-5.1-dev + + - name: Build + run: | + ./util/ci/build.sh + env: + CC: clang-10 + CXX: clang++-10 + CMAKE_FLAGS: "-DENABLE_GETTEXT=0 -DBUILD_SERVER=0" + + - name: Integration test + devtest + run: | + ./util/test_multiplayer.sh + + luacheck: + name: "Builtin Luacheck and Unit Tests" + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v3 + - name: Install luarocks + run: | + sudo apt-get update && sudo apt-get install -y luarocks + + - name: Install luarocks tools + run: | + luarocks install --local luacheck + luarocks install --local busted + + - name: Run checks (builtin) + run: | + $HOME/.luarocks/bin/luacheck builtin + $HOME/.luarocks/bin/busted builtin + + - name: Run checks (devtest) + run: | + $HOME/.luarocks/bin/luacheck --config=games/devtest/.luacheckrc games/devtest diff --git a/.github/workflows/lua_lint.yml b/.github/workflows/lua_lint.yml deleted file mode 100644 index 738e5afff..000000000 --- a/.github/workflows/lua_lint.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: lua_lint - -# Lint on lua changes on builtin or if workflow changed -on: - push: - paths: - - 'builtin/**.lua' - - '.github/workflows/**.yml' - pull_request: - paths: - - 'builtin/**.lua' - - '.github/workflows/**.yml' - -jobs: - luacheck: - name: "Builtin Luacheck and Unit Tests" - runs-on: ubuntu-18.04 - steps: - - uses: actions/checkout@v2 - - name: Install luarocks - run: | - sudo apt-get install luarocks -qyy - - - name: Install luarocks tools - run: | - luarocks install --local luacheck - luarocks install --local busted - - - name: Run checks - run: | - $HOME/.luarocks/bin/luacheck builtin - $HOME/.luarocks/bin/busted builtin diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index d97cff1aa..c0278a38c 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -22,7 +22,7 @@ on: - '.github/workflows/macos.yml' env: - IRRLICHT_TAG: 1.9.0mt3 + IRRLICHT_TAG: 1.9.0mt5 MINETEST_GAME_REPO: https://github.com/minetest/minetest_game.git MINETEST_GAME_BRANCH: master MINETEST_GAME_NAME: minetest_game @@ -31,7 +31,7 @@ jobs: build: runs-on: macos-10.15 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Install deps run: | pkgs=(cmake freetype gettext gmp hiredis jpeg jsoncpp leveldb libogg libpng libvorbis luajit zstd) @@ -45,8 +45,8 @@ jobs: git clone -b $MINETEST_GAME_BRANCH $MINETEST_GAME_REPO games/$MINETEST_GAME_NAME rm -rvf games/$MINETEST_GAME_NAME/.git git clone https://github.com/minetest/irrlicht -b $IRRLICHT_TAG lib/irrlichtmt - mkdir cmakebuild - cd cmakebuild + mkdir build + cd build cmake .. \ -DCMAKE_OSX_DEPLOYMENT_TARGET=10.14 \ -DCMAKE_FIND_FRAMEWORK=LAST \ @@ -60,7 +60,7 @@ jobs: run: | ./build/macos/minetest.app/Contents/MacOS/minetest --run-unittests - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@v3 with: name: minetest-macos path: ./build/macos/ |
