python-3.x - 使用 nipyapi 从处理器中删除属性
问题描述
Nipyapi 版本:最新
NiFi 版本:1.11
NiFi-Registry 版本
Python版本:3.7
操作系统:ubuntu
描述
我想通过nipyapi删除RouteOnAttribute中的特定道具,请问我该怎么做,删除处理器配置中的属性的解决方案是什么。
我做了什么
适当的价值
Routing Strategy Route to Property name
p10001 ${project_id:matches('p10001')}
p11012 ${project_id:matches('p11012')}
例如,我想删除所有这些:
与其单击删除,不如使用 nipyapi !
p11012 ${project_id:matches('p11012')} [remove]
解决方案
这是我在 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()
推荐阅读
- php - 如何在 Laravel 中加入相似的值和总和(相关表)?
- php - 如何修复迁移 Laravel 错误“PDOException 和 PDO::__construct”
- angular - Angular Element 没有在另一个 Angular 项目中解析路由(?),而只是“
“显示在网站上 - reactjs - 查看 react-bootstrap 导航栏是否折叠
- r - 多个李克特图的 for 循环返回 NOTHING
- javascript - 如何使用柯里化功能删除事件侦听器
- firebase - Firebase 我无法删除帐户
- content-management-system - 如何使健全的 io 数组选择为多选?
- mapbox-gl-js - mapboxgl.Marker 如何删除
- swift - 斯威夫特 4.2/5。获取分配给字典中此键的数组中数字的“键”