You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@storm.apache.org by "Shyam Rajendran (JIRA)" <ji...@apache.org> on 2015/07/10 15:50:05 UTC

[jira] [Resolved] (STORM-160) Allow ShellBolt to set env vars (particularly PATH)

     [ https://issues.apache.org/jira/browse/STORM-160?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shyam Rajendran resolved STORM-160.
-----------------------------------
    Resolution: Fixed

The user environment variable map can be now passed on during the building of the topology to either Spout or Bolt. PATH variable alone gets appended while other envs get overwritten if set by the user.

> Allow ShellBolt to set env vars (particularly PATH)
> ---------------------------------------------------
>
>                 Key: STORM-160
>                 URL: https://issues.apache.org/jira/browse/STORM-160
>             Project: Apache Storm
>          Issue Type: New Feature
>            Reporter: James Xu
>            Assignee: Shyam Rajendran
>            Priority: Minor
>              Labels: newbie
>
> https://github.com/nathanmarz/storm/issues/32
> While trying to implement a multilang based bolt, I discovered that binaries outside of /usr/bin, /usr/sbin, and /sbin, are not found despite being installed in say, /usr/local/bin.
> Is there a way to specify a PATH variable so when storm creates the sub shell, these binaries can be located by name? If not, can we get one added?
> ----------
> nathanmarz: This is a good idea. For the meantime, does using the full path of the binary (e.g., /usr/local/bin/python) work around this issue?
> ----------
> dinedal: That works for processes that don't require any other environment variables.
> Also, in cases where developers have multiple versions of a program (say, RVM) and the production servers have another one installed on the system, it means changing code for deploying the topology.
> ----------
> nicoo: +1
> To work around this issue you can start your multilang bolt from a bash script that set all needed env vars.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)