You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by GitBox <gi...@apache.org> on 2020/07/29 07:22:11 UTC

[GitHub] [nifi-minifi-cpp] adamdebreceni commented on a change in pull request #853: MINIFICPP-952 - Use GitHub Actions

adamdebreceni commented on a change in pull request #853:
URL: https://github.com/apache/nifi-minifi-cpp/pull/853#discussion_r461486303



##########
File path: .github/workflows/ci.yml
##########
@@ -0,0 +1,331 @@
+name: "MiNiFi-CPP CI"
+on: [push, pull_request, workflow_dispatch]
+jobs:
+  macos_xcode_10_3:
+    name: "macos-xcode10.3"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/.ccache
+            ~/Library/Caches/Homebrew
+          key: xcode10.3-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode10.3-ccache-${{github.ref}}-
+            xcode10.3-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl doxygen graphviz python lua libusb libpng libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_10.3.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && sudo make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter
+  macos_xcode_11_2_1:
+    name: "macos-xcode11.2.1"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/.ccache
+            ~/Library/Caches/Homebrew
+          key: xcode11.2.1-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode11.2.1-ccache-${{github.ref}}-
+            xcode11.2.1-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl doxygen graphviz python lua libusb libpng libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_11.2.1.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && sudo make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter
+  windows:
+    name: "windows"
+    runs-on: windows-2016
+    timeout-minutes: 90

Review comment:
       because it takes longer to build on windows on the github provided agents

##########
File path: .github/workflows/ci.yml
##########
@@ -0,0 +1,331 @@
+name: "MiNiFi-CPP CI"
+on: [push, pull_request, workflow_dispatch]
+jobs:
+  macos_xcode_10_3:
+    name: "macos-xcode10.3"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/.ccache
+            ~/Library/Caches/Homebrew
+          key: xcode10.3-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode10.3-ccache-${{github.ref}}-
+            xcode10.3-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl doxygen graphviz python lua libusb libpng libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_10.3.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && sudo make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter

Review comment:
       `./bootstrap.sh` does more than just define cmake flags, will remove `sudo` and we'll see if it breaks anything

##########
File path: extensions/standard-processors/tests/unit/TailFileTests.cpp
##########
@@ -1521,8 +1521,8 @@ TEST_CASE("TailFile interprets the lookup frequency property correctly", "[multi
     REQUIRE(LogTestController::getInstance().contains("Logged 2 flow files"));
   }
 
-  SECTION("Lookup frequency set to 10 ms => new files are only picked up after 10 ms") {
-    plan->setProperty(tail_file, processors::TailFile::LookupFrequency.getName(), "10 ms");
+  SECTION("Lookup frequency set to 100 ms => new files are only picked up after 100 ms") {

Review comment:
       yes, otherwise this test fails on windows most of the time

##########
File path: .github/workflows/ci.yml
##########
@@ -0,0 +1,329 @@
+name: "MiNiFi-CPP CI"
+on: [push, pull_request, workflow_dispatch]
+jobs:
+  macos_xcode_10_3:
+    name: "macos-xcode10.3"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/Library/Caches/Homebrew
+          key: xcode10.3-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode10.3-ccache-${{github.ref}}-
+            xcode10.3-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl python lua libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_10.3.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter
+  macos_xcode_11_2_1:
+    name: "macos-xcode11.2.1"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/Library/Caches/Homebrew
+          key: xcode11.2.1-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode11.2.1-ccache-${{github.ref}}-
+            xcode11.2.1-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl python lua libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_11.2.1.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter
+  windows:
+    name: "windows"
+    runs-on: windows-2016
+    timeout-minutes: 90
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: build
+        run: |
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\;%path%
+          PATH=C:\Windows\Microsoft.NET\Framework\v4.0.30319;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin;%path%
+          PATH=C:\Program Files (x86)\Windows Kits\10\bin\x86;%path%
+          PATH=C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86;%path%
+          PATH=C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\Shared\Common\VSPerfCollectionTools\;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Team Tools\Performance Tools;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin\Roslyn;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCPackages;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin;%path%
+          PATH=C:\Windows\System32\;%path%
+          win_build_vs.bat build /CI
+        shell: cmd
+  ubuntu_16_04:
+    name: "ubuntu-16.04"
+    runs-on: ubuntu-16.04
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: ~/.ccache
+          key: ubuntu-16.04-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            ubuntu-16.04-ccache-${{github.ref}}-
+            ubuntu-16.04-ccache-refs/heads/main-
+      - id: install_deps
+        run: |
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE"
+          sudo apt install -y ccache
+          echo "::set-env name=PATH::/usr/lib/ccache:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DUSE_SHARED_LIBS= -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4   && make test ARGS="--timeout 300 -j2 --output-on-failure"
+  ubuntu_16_04_gcc_4_8:
+    name: "ubuntu-16.04-gcc-4.8"
+    runs-on: ubuntu-16.04
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: ~/.ccache
+          key: ubuntu-16.04-gcc-4.8-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            ubuntu-16.04-gcc-4.8-ccache-${{github.ref}}-
+            ubuntu-16.04-gcc-4.8-ccache-refs/heads/main-
+      - id: install_deps
+        run: |
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE"
+          sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
+          sudo apt update
+          sudo apt install -y gcc-4.8 g++-4.8 bison flex libboost-all-dev uuid-dev openssl libcurl4-openssl-dev ccache libpython3-dev liblua5.1-0-dev libpcap-dev libssh2-1-dev
+          echo "::set-env name=PATH::/usr/lib/ccache:$PATH"
+          sudo unlink /usr/bin/gcc && sudo ln -s /usr/bin/gcc-4.8 /usr/bin/gcc
+          sudo unlink /usr/bin/g++ && sudo ln -s /usr/bin/g++-4.8 /usr/bin/g++
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DUSE_SHARED_LIBS= -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4   && make test ARGS="--timeout 300 -j2 --output-on-failure"
+  ubuntu_14_04_gcc_4_8:
+    name: "ubuntu-14.04-gcc-4.8"
+    runs-on: ubuntu-18.04
+    container: ubuntu:14.04

Review comment:
       the host is a 18.04 machine but the docker it runs in is a 14.04 image, sadly GitHub does not provide 14.04 agents

##########
File path: .github/workflows/ci.yml
##########
@@ -0,0 +1,329 @@
+name: "MiNiFi-CPP CI"
+on: [push, pull_request, workflow_dispatch]
+jobs:
+  macos_xcode_10_3:
+    name: "macos-xcode10.3"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/Library/Caches/Homebrew
+          key: xcode10.3-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode10.3-ccache-${{github.ref}}-
+            xcode10.3-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl python lua libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_10.3.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter
+  macos_xcode_11_2_1:
+    name: "macos-xcode11.2.1"
+    runs-on: macos-10.15
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: |
+            ~/Library/Caches/Homebrew
+          key: xcode11.2.1-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            xcode11.2.1-ccache-${{github.ref}}-
+            xcode11.2.1-ccache-refs/heads/main-
+      - id: install_dependencies
+        run: brew install ccache ossp-uuid boost flex openssl python lua libpcap xz libssh2
+      - id: setup_env
+        run: |
+          echo -e "127.0.0.1\t$HOSTNAME" | sudo tee -a /etc/hosts > /dev/null
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE -DENABLE_LUA_SCRIPTING=1"
+          sudo xcode-select -switch /Applications/Xcode_11.2.1.app
+          echo "::set-env name=PATH::`brew --prefix`/opt/ccache/libexec:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4 && make test ARGS="--timeout 300 -j4 --output-on-failure" && make linter
+  windows:
+    name: "windows"
+    runs-on: windows-2016
+    timeout-minutes: 90
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: build
+        run: |
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\Tools\;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\;%path%
+          PATH=C:\Windows\Microsoft.NET\Framework\v4.0.30319;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin;%path%
+          PATH=C:\Program Files (x86)\Windows Kits\10\bin\x86;%path%
+          PATH=C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86;%path%
+          PATH=C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\Shared\Common\VSPerfCollectionTools\;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Team Tools\Performance Tools;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\bin\Roslyn;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCPackages;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86;%path%
+          PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin;%path%
+          PATH=C:\Windows\System32\;%path%
+          win_build_vs.bat build /CI
+        shell: cmd
+  ubuntu_16_04:
+    name: "ubuntu-16.04"
+    runs-on: ubuntu-16.04
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: ~/.ccache
+          key: ubuntu-16.04-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            ubuntu-16.04-ccache-${{github.ref}}-
+            ubuntu-16.04-ccache-refs/heads/main-
+      - id: install_deps
+        run: |
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE"
+          sudo apt install -y ccache
+          echo "::set-env name=PATH::/usr/lib/ccache:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DUSE_SHARED_LIBS= -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4   && make test ARGS="--timeout 300 -j2 --output-on-failure"
+  ubuntu_16_04_gcc_4_8:
+    name: "ubuntu-16.04-gcc-4.8"
+    runs-on: ubuntu-16.04
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: ~/.ccache
+          key: ubuntu-16.04-gcc-4.8-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            ubuntu-16.04-gcc-4.8-ccache-${{github.ref}}-
+            ubuntu-16.04-gcc-4.8-ccache-refs/heads/main-
+      - id: install_deps
+        run: |
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE"
+          sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
+          sudo apt update
+          sudo apt install -y gcc-4.8 g++-4.8 bison flex libboost-all-dev uuid-dev openssl libcurl4-openssl-dev ccache libpython3-dev liblua5.1-0-dev libpcap-dev libssh2-1-dev
+          echo "::set-env name=PATH::/usr/lib/ccache:$PATH"
+          sudo unlink /usr/bin/gcc && sudo ln -s /usr/bin/gcc-4.8 /usr/bin/gcc
+          sudo unlink /usr/bin/g++ && sudo ln -s /usr/bin/g++-4.8 /usr/bin/g++
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DUSE_SHARED_LIBS= -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_RULE_MESSAGES=OFF -DSTRICT_GSL_CHECKS=ON .. && cmake --build . --parallel 4   && make test ARGS="--timeout 300 -j2 --output-on-failure"
+  ubuntu_14_04_gcc_4_8:
+    name: "ubuntu-14.04-gcc-4.8"
+    runs-on: ubuntu-18.04
+    container: ubuntu:14.04
+    timeout-minutes: 60
+    steps:
+      - id: checkout
+        uses: actions/checkout@v2
+      - id: cache
+        uses: actions/cache@v2
+        with:
+          path: ~/.ccache
+          key: ubuntu-14.04-gcc-4.8-ccache-${{github.ref}}-${{github.sha}}
+          restore-keys: |
+            ubuntu-14.04-gcc-4.8-ccache-${{github.ref}}-
+            ubuntu-14.04-gcc-4.8-ccache-refs/heads/main-
+      - id: install_deps
+        run: |
+          echo "::set-env name=CMAKE_BUILD_OPTIONS::-DENABLE_PCAP=TRUE"
+          sudo apt install -y software-properties-common
+          sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
+          sudo apt update
+          sudo apt install -y wget patch gcc-4.8 g++-4.8 bison flex libboost-all-dev uuid-dev openssl libcurl4-openssl-dev ccache libpython3-dev liblua5.1-0-dev libpcap-dev libssh2-1-dev
+          sudo unlink /usr/bin/gcc && sudo ln -s /usr/bin/gcc-4.8 /usr/bin/gcc
+          sudo unlink /usr/bin/g++ && sudo ln -s /usr/bin/g++-4.8 /usr/bin/g++
+          cd $HOME
+          wget https://github.com/Kitware/CMake/releases/download/v3.18.0/cmake-3.18.0-Linux-x86_64.sh
+          chmod a+x cmake-3.18.0-Linux-x86_64.sh
+          export CMAKE_HOME=$HOME/opt/cmake
+          mkdir -p $CMAKE_HOME
+          ./cmake-3.18.0-Linux-x86_64.sh --prefix=$CMAKE_HOME --skip-license
+          echo "::set-env name=CMAKE_ROOT::$CMAKE_HOME/share/cmake-3.18"
+          echo "::set-env name=PATH::/usr/lib/ccache:$CMAKE_HOME/bin:$PATH"
+      - id: build
+        run: ./bootstrap.sh -e -t && cd build  && cmake -DUSE_SHARED_LIBS= -DSTRICT_GSL_CHECKS=ON .. && make -j4 VERBOSE=1  && make test ARGS="--timeout 300 -j2 --output-on-failure"
+  ubuntu_14_04:

Review comment:
       +1 for dropping 14.04 as it reached its end of life on April 30, 2019
   similarly we could drop Xcode 10.3 
   we should also give VS 2019 a try
   @arpadboda should weigh in whether we should try to make these changes in this PR or in a separate one




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org