On Fri, Jun 28, 2013 at 09:06:01AM -0400, Michael W. Lucas wrote:
> Hi,
> 
> I've emailed the port maintainer, but haven't heard back in a couple
> days. Sending here so it doesn't get lost.
> 
> The Ansible port isn't useful for managing systems that use a Python
> other than /usr/local/bin/python2.7 -- i.e., most Linuxes and other
> BSDs.
> 
> Ansible uses "#!/usr/bin/env python" to find the python on the target
> OS. This means you can manage any OS with a python somewhere in
> $PATH. By hard-coding this on the server, you can only manage systems
> that have /usr/local/bin/python2.7.
> 
> This change also breaks the ansible_python_interpreter variable used
> to override the client's python location, so I can't hard-code it
> otherwise.
> 
> Could you take a look at the discussion at
> https://groups.google.com/forum/#!topic/ansible-project/oM2FNuumWmw
> and adjust the OpenBSD package so Ansible works out of the box?
> 
> Thanks,
> ==ml
> 
> -- 
> Michael W. Lucas  -  [email protected], Twitter @mwlauthor 
> http://www.MichaelWLucas.com/, http://blather.MichaelWLucas.com/
> Absolute OpenBSD 2/e - http://www.nostarch.com/openbsd2e
> coupon code "ILUVMICHAEL" gets you 30% off & helps me.

I replied to your mail already two days ago!


>From [email protected] Wed Jun 26 22:08:08 2013
Date: Wed, 26 Jun 2013 22:08:08 +0200
From: Robert Peichaer <[email protected]>
To: "Michael W. Lucas" <[email protected]>
Subject: Re: problem with sysutils/ansible port
Message-ID: <[email protected]>
References: <[email protected]>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <[email protected]>
User-Agent: Mutt/1.5.21 (2010-09-15)

On Wed, Jun 26, 2013 at 03:33:39PM -0400, Michael W. Lucas wrote:
> Hi,
> 
> You're listed as the maintainer for OpenBSD's ansible port. I'm using
> Ansible, and have found a problem with the port.
> 
> Changing the #!/usr/bin/env python at the beginning of the program
> breaks some Ansible functionality. Specifically, you cannot override
> the client machine's python interpreter -- you must always have
> /usr/local/bin/python2.7 on the client machine.
> 
> This change also breaks the ansible_python_interpreter variable used
> to override the client's python location.
> 
> Could you take a look at the discussion at
> https://groups.google.com/forum/#!topic/ansible-project/oM2FNuumWmw
> and possibly adjust the OpenBSD port so Ansible works out of the box?
> 
> Thanks,
> ==ml
> 
> -- 
> Michael W. Lucas  -  [email protected], Twitter @mwlauthor 
> http://www.MichaelWLucas.com/, http://blather.MichaelWLucas.com/
> Absolute OpenBSD 2/e - http://www.nostarch.com/openbsd2e
> coupon code "ILUVMICHAEL" gets you 30% off & helps me.

Hi Michael

I was just writing a reply to the ansible-project list when I saw this
mail. Yes, there's some quirks with the packaging.

Like it is now, it works out of the box between OpenBSD machines because
during packaging, the shebang lines in the modules are replaced with the
OpenBSD standard path for python2.7, which is currently the standard.
Unfortunatly, this breaks the logic of ansible_python_interpreter.

I've repackaged ansible 1.2 without changing the shebang line of the
modules and now it works as designed. The only downside now is that for
using ansible between OpenBSD machines, we have always to specify 
ansible_python_interpreter=/usr/local/bin/python2.7 somewhere.

Right now, it seems not to be possible to specify it in the ansible.cfg
on a global basis, but needs to be in the hosts file like:

[openbsd]
srv.my.domain

[openbsd:vars]
ansible_python_interpreter=/usr/local/bin/python2.7

Not that bad, but not like "works by default" which we try to accomplish
for porting applications.

I'll publish an ansible-1.2p0.tgz package soon with this "fix".

Cheers
Robert

-- 
-=[rpe]=-

Reply via email to