ansible in Fedora 23+ (python3)

Adam Williamson adamwill at fedoraproject.org
Wed Nov 18 20:21:20 UTC 2015


On Wed, 2015-11-18 at 14:36 -0500, Bill Nottingham wrote:
> Adam Williamson (adamwill at fedoraproject.org) said: 
> > On Tue, 2015-10-13 at 22:21 -0400, Dusty Mabe wrote:
> > > 
> > > Does anyone have a good solution for this? Obviously it would be nice
> > > if ansible went to python3 but I think they have stated clearly that
> > > they are sticking with python2 for backwards compat with systems that
> > > still need 2.4.
> > 
> > FWIW, as this came up in the Server WG meeting this morning, we decided
> > to Do Something About It:
> > 
> > https://git.fedorahosted.org/cgit/comps.git/commit/?id=4b9858ce8cabdec83bb78ab5f7af4c704278bdc2
> > https://git.fedorahosted.org/cgit/spin-kickstarts.git/commit/?id=1d9ef5a9c1e148b979c68a1b510f6b007e652d93
> > 
> > I added a new package group - 'ansible-node' - which you can select to
> > ensure the system can be managed via ansible. I decided that the
> > definition of 'can be managed' is simply 'enough bits present that you
> > can install any additional bits you need in the obvious way' - so for
> > now the group simply includes 'python2-dnf'. But it means we have a
> > 'result-based' mechanism for this so we can handle similar situations
> > in future through this package group, and it makes it visible in the
> > installer for interactive installs.
> > 
> > We *could* add a bunch of 'default' and/or 'optional' packages to the
> > group for commonly-needed stuff like the selinux support packages
> > needed for file operations, but I think for now I'd prefer to keep it
> > simple and only include packages necessary for the 'dnf' module to
> > work.
> 
> You really really want libselinux-python(2) for that as well - it's needed
> for any file/copy/templating you'd do on the node to ensure proper SELinux
> contexts. (In fact, Ansible will abort on the node without it if it detects
> SELinux in use, as it doesn't want to misconfigure the node.)

Well, I explicitly addressed that above: I think as soon as you get
into adding packages that are needed for some particular module, you're
on a slippery slope which winds up with including docker...how do we
decide which modules are 'essential' and which aren't?

I quite like making the rule 'whatever packages are needed so you can
install further packages with the module for the official package
manager without any hacks', as that's pretty clear and non-
controversial, I think. You can add other necessary packages as part of
the play(book) or in a kickstart, whichever convention works for you.
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net




More information about the devel mailing list