This is an automated email from the ASF dual-hosted git repository. martinzink pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git
commit 71908d19e7256cd1a90805f083ca19292eaa11e2 Author: Gabor Gyimesi <[email protected]> AuthorDate: Wed Feb 25 14:52:30 2026 +0100 MINIFICPP-2727 Stabilize verify package tests - Remove volatile repository test for non-alpine distros, as memory management is different with glibc allocator and checking memory usage in the process does not reflect the actual memory usage of the repository - Do not cache errors in HTTP proxy, because transient initial connection errors can cause the proxy to always return the same error code even after establishing the connection Closes #2117 Signed-off-by: Martin Zink <[email protected]> --- .../containers/http_proxy_container.py | 1 + .../tests/features/environment.py | 21 +++++++++++++++++++++ .../tests/features/repository.feature | 1 + 3 files changed, 23 insertions(+) diff --git a/behave_framework/src/minifi_test_framework/containers/http_proxy_container.py b/behave_framework/src/minifi_test_framework/containers/http_proxy_container.py index d07c674ff..54e766fa7 100644 --- a/behave_framework/src/minifi_test_framework/containers/http_proxy_container.py +++ b/behave_framework/src/minifi_test_framework/containers/http_proxy_container.py @@ -34,6 +34,7 @@ class HttpProxy(Container): echo 'acl authenticated proxy_auth REQUIRED' >> /etc/squid/squid.conf && \ echo 'http_access allow authenticated' >> /etc/squid/squid.conf && \ echo 'http_port {proxy_port}' >> /etc/squid/squid.conf && \ + echo 'negative_dns_ttl 0 seconds' >> /etc/squid/squid.conf && \ echo 'max_filedescriptors 1024' >> /etc/squid/squid.conf """.format(base_image='ubuntu/squid:5.2-22.04_beta', proxy_username='admin', proxy_password='test101', proxy_port='3128')) diff --git a/extensions/standard-processors/tests/features/environment.py b/extensions/standard-processors/tests/features/environment.py index e2908d510..1edb297a3 100644 --- a/extensions/standard-processors/tests/features/environment.py +++ b/extensions/standard-processors/tests/features/environment.py @@ -14,6 +14,7 @@ # limitations under the License. import platform +import docker from minifi_test_framework.core.hooks import common_before_scenario from minifi_test_framework.core.hooks import common_after_scenario @@ -28,8 +29,28 @@ def before_feature(context, feature): feature.skip("This feature is only x86/x64 compatible") +def is_minifi_image_alpine_based(context): + client: docker.DockerClient = docker.from_env() + container = client.containers.create( + image=context.minifi_container_image, + command=['cat', '/etc/os-release'], + ) + try: + container.start() + result = container.logs() + container.remove(force=True) + except docker.errors.APIError: + container.remove(force=True) + return False + + return "alpine" in result.decode('utf-8').lower() + + def before_scenario(context, scenario): common_before_scenario(context, scenario) + if "ALPINE_ONLY" in scenario.tags: + if not is_minifi_image_alpine_based(context): + scenario.skip("This scenario is only compatible with Alpine-based Minifi images") def after_scenario(context, scenario): diff --git a/extensions/standard-processors/tests/features/repository.feature b/extensions/standard-processors/tests/features/repository.feature index 5cc8c6949..6c1bdc948 100644 --- a/extensions/standard-processors/tests/features/repository.feature +++ b/extensions/standard-processors/tests/features/repository.feature @@ -16,6 +16,7 @@ @CORE Feature: Flow file and content repositories work as expected + @ALPINE_ONLY Scenario: Flow file content is removed from memory when terminated when using Volatile Content Repository Given a GenerateFlowFile processor with the "File Size" property set to "20 MB" And the scheduling period of the GenerateFlowFile processor is set to "1 sec"
