You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by Renier Morales <re...@linux.vnet.ibm.com> on 2014/10/03 03:03:55 UTC

Sudo problem in VanillaSoftwareProcess script (YAML)

Hello,

I get this when trying to deploy a simple YAML blueprint that uses the VanillaSoftwareProcess to run a bash script (that uses sudo):

    sudo: sorry, you must have a tty to run sudo

This is basically how the OS (RHEL 6.5) is configured by default (“Defaults requiretty” in /etc/sudoers), but it would be good to have a way to bypass this problem. I can think of the following:

* Have a `root: true/false` option in VanillaSoftwareProcess that would make it bypass this problem and run as root

* Simply have brooklyn’s system bootstrapping to configure /etc/sudoers, removing `Defaults requiretty` or adding `Defaults:username !requiretty` for whatever user that will run the VanillaSoftwareProcess script.

* Use an image that doesn’t have this problem :-). But that is tedious.

What do you guys think?

	-Renier

Re: Sudo problem in VanillaSoftwareProcess script (YAML)

Posted by Alasdair Hodge <al...@cloudsoftcorp.com>.
Renier,

PR #209 offers a quick-and-dirty fix for this issue, cribbed from 
previous work on customer projects.

   https://github.com/apache/incubator-brooklyn/pull/209

Longer term, I think your suggestion to have Brooklyn's machine 
bootstrapping Just Do The Right Thing (TM) is the way to go.

A.
-- 
Alasdair Hodge
Principal Engineer,
Cloudsoft Corporation


On 03/10/2014 02:03, Renier Morales wrote:
> Hello,
>
> I get this when trying to deploy a simple YAML blueprint that uses the VanillaSoftwareProcess to run a bash script (that uses sudo):
>
>      sudo: sorry, you must have a tty to run sudo
>
> This is basically how the OS (RHEL 6.5) is configured by default (“Defaults requiretty” in /etc/sudoers), but it would be good to have a way to bypass this problem. I can think of the following:
>
> * Have a `root: true/false` option in VanillaSoftwareProcess that would make it bypass this problem and run as root
>
> * Simply have brooklyn’s system bootstrapping to configure /etc/sudoers, removing `Defaults requiretty` or adding `Defaults:username !requiretty` for whatever user that will run the VanillaSoftwareProcess script.
>
> * Use an image that doesn’t have this problem :-). But that is tedious.
>
> What do you guys think?
>
> 	-Renier
>