ci: Update Github Actions workflows (#9774)
authorsfan5 <sfan5@live.de>
Sat, 2 May 2020 10:52:51 +0000 (12:52 +0200)
committerGitHub <noreply@github.com>
Sat, 2 May 2020 10:52:51 +0000 (12:52 +0200)
.github/workflows/build.yml
.github/workflows/cpp_lint.yml
.github/workflows/lua_lint.yml
util/ci/build.sh
util/ci/clang-tidy.sh
util/ci/common.sh

index 2c4d3abd1e0e78acbbb49825bb048c09b430a3bf..91ed8fd435799895e30592e1861c4825fb066cd4 100644 (file)
@@ -31,7 +31,7 @@ jobs:
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
-      - name: Install compiler
+      - name: Install deps
         run: |
           sudo apt-get install g++-6 gcc-6 -qyy
           source ./util/ci/common.sh
@@ -41,7 +41,8 @@ jobs:
         run: |
           ./util/ci/build.sh
         env:
-          CMAKE_FLAGS: "-DCMAKE_C_COMPILER=gcc-6 -DCMAKE_CXX_COMPILER=g++-6"
+          CC: gcc-6
+          CXX: g++-6
 
       - name: Test
         run: |
@@ -52,7 +53,7 @@ jobs:
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
-      - name: Install compiler
+      - name: Install deps
         run: |
           sudo apt-get install g++-8 gcc-8 -qyy
           source ./util/ci/common.sh
@@ -62,7 +63,8 @@ jobs:
         run: |
           ./util/ci/build.sh
         env:
-          CMAKE_FLAGS: "-DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8"
+          CC: gcc-8
+          CXX: g++-8
 
       - name: Test
         run: |
@@ -73,7 +75,7 @@ jobs:
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
-      - name: Install compiler
+      - name: Install deps
         run: |
           sudo apt-get install clang-3.9 -qyy
           source ./util/ci/common.sh
@@ -83,7 +85,8 @@ jobs:
         run: |
           ./util/ci/build.sh
         env:
-          CMAKE_FLAGS: "-DCMAKE_C_COMPILER=clang-3.9 -DCMAKE_CXX_COMPILER=clang++-3.9"
+          CC: clang-3.9
+          CXX: clang++-3.9
 
       - name: Test
         run: |
@@ -94,7 +97,7 @@ jobs:
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
-      - name: Install compiler
+      - name: Install deps
         run: |
           sudo apt-get install clang-9 valgrind -qyy
           source ./util/ci/common.sh
@@ -106,7 +109,8 @@ jobs:
         run: |
           ./util/ci/build.sh
         env:
-          CMAKE_FLAGS: "-DCMAKE_C_COMPILER=clang-9 -DCMAKE_CXX_COMPILER=clang++-9"
+          CC: clang-9
+          CXX: clang++-9
 
       - name: Test
         run: |
@@ -116,12 +120,13 @@ jobs:
         run: |
           valgrind --leak-check=full --leak-check-heuristics=all --undef-value-errors=no --error-exitcode=9 ./bin/minetest --run-unittests
 
-
+  # Build with prometheus-cpp (server-only)
   clang_9_prometheus:
+    name: "clang_9 (PROMETHEUS=1)"
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
-      - name: Install compiler
+      - name: Install deps
         run: |
           sudo apt-get install clang-9 -qyy
           source ./util/ci/common.sh
@@ -135,18 +140,21 @@ jobs:
         run: |
           ./util/ci/build.sh
         env:
-          CMAKE_FLAGS: "-DCMAKE_C_COMPILER=clang-9 -DCMAKE_CXX_COMPILER=clang++-9 -DENABLE_PROMETHEUS=1"
+          CC: clang-9
+          CXX: clang++-9
+          CMAKE_FLAGS: "-DENABLE_PROMETHEUS=1 -DBUILD_CLIENT=0"
 
       - name: Test
         run: |
-          ./bin/minetest --run-unittests
+          ./bin/minetestserver --run-unittests
 
-  # Some builds doesn't require freetype, ensure it compiled properly
+  # 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 compiler
+      - name: Install deps
         run: |
           sudo apt-get install clang-9 -qyy
           source ./util/ci/common.sh
@@ -156,13 +164,16 @@ jobs:
         run: |
           ./util/ci/build.sh
         env:
-          CMAKE_FLAGS: "-DCMAKE_C_COMPILER=clang-9 -DCMAKE_CXX_COMPILER=clang++-9 -DENABLE_FREETYPE=0"
+          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
     steps:
       - uses: actions/checkout@v2
@@ -171,11 +182,13 @@ jobs:
           docker build .
 
   win32:
+    name: "MinGW cross-compiler (32-bit)"
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
       - name: Install compiler
         run: |
+          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 tar -xaf mingw.tar.xz -C /usr
 
@@ -187,11 +200,13 @@ jobs:
           NO_PACKAGE: 1
 
   win64:
+    name: "MinGW cross-compiler (64-bit)"
     runs-on: ubuntu-18.04
     steps:
       - uses: actions/checkout@v2
       - name: Install compiler
         run: |
+          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 tar -xaf mingw.tar.xz -C /usr
 
index 3044d51863714fd830cc67ce606e9e5157d0ae07..1f97d105aae8a15ef5eb53e2feb436d61b19d978 100644 (file)
@@ -30,19 +30,20 @@ jobs:
       - uses: actions/checkout@v2
       - name: Install clang-format
         run: |
-          sudo apt-get install ${CLANG_FORMAT} -qyy
-        env:
-          CLANG_FORMAT: clang-format-9
+          sudo apt-get install clang-format-9 -qyy
+
       - name: Run clang-format
         run: |
           source ./util/ci/lint.sh
           perform_lint
+        env:
+          CLANG_FORMAT: clang-format-9
 
   clang_tidy:
     runs-on: ubuntu-18.04
     steps:
     - uses: actions/checkout@v2
-    - name: Install clang-tidy
+    - name: Install deps
       run: |
         sudo apt-get install clang-tidy-9 -qyy
         source ./util/ci/common.sh
index 1b2c0119233d00d72ffe6a44e0af2922cbe873fa..738e5afff0194b304c3b0646d790d3213b15c03f 100644 (file)
@@ -13,12 +13,12 @@ on:
 
 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 update -qyy
         sudo apt-get install luarocks -qyy
 
     - name: Install luarocks tools
index 59069b00a5f41edb070613db3aa4a57ba671710f..ba77cd645662b72ba244fd3144cef633014cc579 100755 (executable)
@@ -1,4 +1,4 @@
-#! /bin/bash -eu
+#! /bin/bash -e
 
 mkdir cmakebuild
 cd cmakebuild
index d048f54ee45d0826423240cd648f9f803e62da87..bb4e99fef8e3f27b465b6d35820ebb5353ccf607 100755 (executable)
@@ -5,8 +5,7 @@ cd cmakebuild
 cmake -DCMAKE_BUILD_TYPE=Debug \
        -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
        -DRUN_IN_PLACE=TRUE \
-       -DENABLE_GETTEXT=TRUE \
-       -DENABLE_SOUND=FALSE \
+       -DENABLE_{GETTEXT,SOUND}=FALSE \
        -DBUILD_SERVER=TRUE ..
 make GenerateVersion
 
index 5a4f784579afead63db973b9ae383a910ee6237b..a2e4beac9426e68063abc9b8c6994b89d3ac5f51 100644 (file)
@@ -1,21 +1,5 @@
 #!/bin/bash -e
 
-set_linux_compiler_env() {
-       if [[ "${COMPILER}" == "gcc-6" ]]; then
-               export CC=gcc-6
-               export CXX=g++-6
-       elif [[ "${COMPILER}" == "gcc-8" ]]; then
-               export CC=gcc-8
-               export CXX=g++-8
-       elif [[ "${COMPILER}" == "clang-3.9" ]]; then
-               export CC=clang-3.9
-               export CXX=clang++-3.9
-       elif [[ "${COMPILER}" == "clang-9" ]]; then
-               export CC=clang-9
-               export CXX=clang++-9
-       fi
-}
-
 # Linux build only
 install_linux_deps() {
        local pkgs=(libirrlicht-dev cmake libbz2-dev libpng-dev \