You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Nissim Shiman (Jira)" <ji...@apache.org> on 2022/07/27 16:24:00 UTC
[jira] [Updated] (NIFI-10287) ExecuteScript processor not supporting Module Directory for python
[ https://issues.apache.org/jira/browse/NIFI-10287?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nissim Shiman updated NIFI-10287:
---------------------------------
Description:
The ExecuteScript processor currently does not support pointing to python modules.
The Module Directory property is unable to find/process modules it is set to. See below [1] for example
Also, if Module Directory property is set to /usr/lib/python<version number> (or wherever python packages are installed) the processor will AdminYield when flowfile passes through.
[1] Set processor properties:
_Script Engine_ to python
_Script Body_ to
{code:java}
flowFile = session.get()
flowFile = session.putAttribute(flowFile,"helloKey",hello.hello())
session.transfer(flowFile, REL_SUCCESS)
{code}
_Module Directory_ to /tmp/testModule
where /tmp/testModule has a file in it named hello.py
with the code
{code:java}
def hello():
return "hello"
{code}
and pass a flowfile through.
The processor will roll back the session saying `hello` is not defined
was:
The ExecuteScript processor currently does not support pointing to python modules.
The Module Directory property is unable to find modules it is set to. So for example
when Script Engine is set to python
and Script Body is set to:
{code:java}
flowFile = session.get()
flowFile = session.putAttribute(flowFile,"helloKey",hello.hello())
session.transfer(flowFile, REL_SUCCESS)
{code}
and Module Directory is set to /tmp/testModule
and /tmp/testModule has a file in it named hello.py
with the code
{code:java}
def hello():
return "hello"
{code}
the processor roll back the session saying it cannot find the hello module
Also, if Module Directory property is set to /usr/lib/python<version number> (or wherever python packages are installed) the processor will AdminYield when flowfile passes through.
> ExecuteScript processor not supporting Module Directory for python
> ------------------------------------------------------------------
>
> Key: NIFI-10287
> URL: https://issues.apache.org/jira/browse/NIFI-10287
> Project: Apache NiFi
> Issue Type: Bug
> Reporter: Nissim Shiman
> Assignee: Nissim Shiman
> Priority: Major
>
> The ExecuteScript processor currently does not support pointing to python modules.
> The Module Directory property is unable to find/process modules it is set to. See below [1] for example
> Also, if Module Directory property is set to /usr/lib/python<version number> (or wherever python packages are installed) the processor will AdminYield when flowfile passes through.
> [1] Set processor properties:
> _Script Engine_ to python
> _Script Body_ to
> {code:java}
> flowFile = session.get()
> flowFile = session.putAttribute(flowFile,"helloKey",hello.hello())
> session.transfer(flowFile, REL_SUCCESS)
> {code}
> _Module Directory_ to /tmp/testModule
> where /tmp/testModule has a file in it named hello.py
> with the code
> {code:java}
> def hello():
> return "hello"
> {code}
> and pass a flowfile through.
> The processor will roll back the session saying `hello` is not defined
--
This message was sent by Atlassian Jira
(v8.20.10#820010)