Удалить свойство из процессора с помощью nipyapi - PullRequest
0 голосов
/ 19 марта 2020

Версия Nipyapi: последняя

Версия NiFi: 1,11

Версия NiFi-Registry

Python версия: 3,7

Операционная система: Ubuntu

Описание

Я хочу удалить указанные c реквизиты внутри RouteOnAttribute от nipyapi, пожалуйста, как я могу это сделать, каково решение для удаления свойств внутри конфига процессора.

Что я сделал

PropertyValue

Routing Strategy                                       Route to Property name
p10001                                                 ${project_id:matches('p10001')}
p11012                                                 ${project_id:matches('p11012')}

Я хочу, например, удалить все это:

Вместо того, чтобы нажимать на удаление, сделайте это с nipyapi !!

p11012                                                 ${project_id:matches('p11012')}  [remove]

1 Ответ

0 голосов
/ 20 марта 2020

Вот ответ, который я дал по вопросу о Github на будущее:

from nipyapi import canvas, nifi
# Test adding a custom Property
test_prop = {conftest.test_basename: 'test'}
_ = r1.component.config.properties.update(test_prop)
r2 = canvas.update_processor(
    r1,
    nifi.ProcessorConfigDTO(properties=r1.component.config.properties)
)
assert conftest.test_basename in r2.component.config.properties.keys()
# Test removing a property
r3 = canvas.update_processor(
    r2,
    nifi.ProcessorConfigDTO(properties={conftest.test_basename: None})
)
assert conftest.test_basename not in r3.component.config.properties.keys()
...