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:59:24 UTC

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

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



##########
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:
       Why do we need to run `./bootsrap.sh` if we definethe cmake flags manually anyway?
   
   Also why do we `sudo` on `make test`?

##########
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:
       Why is the timeout longer for windows?

##########
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
+    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   && sudo 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 doxygen openssl libcurl4-openssl-dev ccache libpython3-dev liblua5.1-0-dev libusb-1.0-0-dev libpng12-dev libpcap-dev libssh2-1-dev

Review comment:
       Do we really have a dependency on `libpng` and `libusb`? As far as I understand they are only used to build the USB-camera processor, which is not enabled in our CI
   
   Also, we should discuss if we need `libboost-all-dev` here?

##########
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:
       Is this change meant to be in this PR?




----------------------------------------------------------------
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