nifi-minifi-cpp icon indicating copy to clipboard operation
nifi-minifi-cpp copied to clipboard

MINIFICPP-2346-P2: Added Support to Create MiNiFi Conan2 Package, Easier Integration into C++ RT Infra

Open james94 opened this issue 1 year ago • 1 comments

@szaszm @martinzink Great news with my recent update, it still is below 1000 updates and believe still eligible for review. This PR is meant to go on top of james94:MINIFICPP-2346-P1.

Here is the command to create the minifi conan package:

cd nifi-minifi-cpp

conan create . --user=minifi --channel=develop -pr=etc/conan/profiles/release-linux

UPDATE: (June 14, 2024): Verified Can Create MiNiFi conan package & run 2 test programs AbstractProcessorTest and MinifiGenerateFlowFileTest, which are both tests from MiNiFi repo now just built and run from conan test_package.

After I create a MiNiFi C++ conan package, conan then compiles the C++ code in the test_package, which contains 2 C++ test example programs from MiNiFi. The first program is AbstractProcessorTest from libminifi and the second program is MinifiGenerateFlowFileTest.cpp. conan will successfully build the test_package for MiNiFi C++ conan package and link minifi-cpp lbrary aka the conan package to be used in running these 2 C++ test programs. AbstractProcessorTest succeeds and I believe MinifiGenerateFlowTest fails on some tests because we are missing some resource dependencies that are typically available in nifi-minifi-cpp repo, but currently not available in the minifi-cpp conan package. I just needed to verify I could use the minifi-cpp conan package to run a few minifi-cpp test programs, especially the test program that tests the GenerateFlowFile C++ processor within a minifi-cpp edge data pipeline that was programmatically created.

This update should make it easier now for other companies to bring MiNiFi CPP into their C++ infrastructure as a library as an alternative to bringing MiNiFi in as the standalone program

This PR goes right on top of my smaller "PR-1793: MINIFICPP-2346-P1: Integrated Conan2 for OpenSSL, CURL, ZLIB & Build MiNiFi", it just adds the ability for us to use Conan to create for instance a minifi-cpp/0.99.0@minifi/develop conan package for easier integration of MiNiFi C++ into other C++ real-time infrastructure.

Thank you for submitting a contribution to Apache NiFi - MiNiFi C++.

In order to streamline the review of the contribution we ask you to ensure the following steps have been taken:

For all changes:

  • [ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

  • [ ] Does your PR title start with MINIFICPP-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

  • [ ] Has your PR been rebased against the latest commit within the target branch (typically main)?

  • [ ] Is your initial contribution a single, squashed commit?

For code changes:

  • [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
  • [ ] If applicable, have you updated the LICENSE file?
  • [ ] If applicable, have you updated the NOTICE file?

For documentation related changes:

  • [ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:

Please ensure that once the PR is submitted, you check GitHub Actions CI results for build issues and submit an update to your PR as soon as possible.

james94 avatar Jun 09 '24 21:06 james94

Hi @james94, sorry this PR was closed automatically when I deleted the apache:MINIFICPP-2251 branch (as it was merged a while back) it was based on. Please rebase it to the main branch and reopen the PR.

lordgamez avatar Jun 24 '24 09:06 lordgamez

Closing this PR since conan create support was added to my other PR: https://github.com/apache/nifi-minifi-cpp/pull/1793

james94 avatar Aug 09 '24 21:08 james94