-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 11/18/2015 03:21 PM, Adam Williamson wrote:
On Wed, 2015-11-18 at 14:36 -0500, Bill Nottingham wrote:
> Adam Williamson (adamwill(a)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=4b9858ce8cabdec83b...
>>
>>
https://git.fedorahosted.org/cgit/spin-kickstarts.git/commit/?id=1d9ef5a9...
>>
>> 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.
I think the clarification we need is this: is libselinux-python needed
so that ansible can use python-dnf? If so (and there's a good reason
why it's not a direct dependency of python-dnf), then we will need to
include it *for that purpose*.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iEYEARECAAYFAlZM4CAACgkQeiVVYja6o6M9eACeI12Wk3jD0A5+c2v4x13ql4jH
Z4IAn1RvDTy4rYGQzEvkXMKQkJX/m5W3
=2Ijp
-----END PGP SIGNATURE-----