15:02:11 <gundalow> #startmeeting Ansible Core 15:02:11 <zodbot> Meeting started Thu Mar 8 15:02:11 2018 UTC. The chair is gundalow. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:02:11 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic. 15:02:11 <zodbot> The meeting name has been set to 'ansible_core' 15:02:18 <gundalow> #chair abadger1999 bcoca 15:02:18 <zodbot> Current chairs: abadger1999 bcoca gundalow 15:02:24 <gundalow> #topic Open Floor 15:03:09 * akasurde waves 15:03:12 * mrproper waves 15:03:15 * bcoca hides in corner 15:03:15 <sivel> .hello2 15:03:16 <zodbot> sivel: sivel 'Matt Martz' <matt@sivel.net> 15:03:16 <gundalow> #chair mrproper akasurde 15:03:16 <zodbot> Current chairs: abadger1999 akasurde bcoca gundalow mrproper 15:03:39 * Pilou waves 15:04:21 <sdoran> \o 15:04:22 <gundalow> #topic mutually_exclusive with option 15:04:30 <gundalow> #chair sivel sdoran 15:04:30 <zodbot> Current chairs: abadger1999 akasurde bcoca gundalow mrproper sdoran sivel 15:04:45 <gundalow> mrproper: Want to outline your requirement here 15:06:20 <mrproper> I'd like to have a feature within the AnsibleModule class which is a mixture of required_if and mutually_exclusive for parameter evaluation. In my situation, I want to have Ansible evaluate this..."State cannot be absent if org_name or org_id is also specified". 15:07:02 <bcoca> at that point you just want expressions when a in ('x', 'y') and b != 13 15:07:07 <bcoca> aka python code? 15:07:41 <mrproper> Yes. That would accomplish the job. But I'm wondering if it makes sense to have it as a built in feature. 15:08:05 <bcoca> i prefer to keep it simple, its already a bit bloated imo 15:08:33 <mrproper> So your recommendation is to built it into my module or module_util instead of adding a feature? 15:08:35 <bcoca> rember we copy this code for all modules, if most are not going to use it, its just increasing the copy size for no reason 15:08:52 <bcoca> 'built as feature' would have it in module_utils anyways 15:10:06 <abadger1999> We've added the ability to specify your own function for type validation. Maybe we should add a way to register your own checkers for inter-parameter checking 15:10:59 <abadger1999> Then we can ship the generic checkers in a subdirectory like the additional type validators are. 15:12:39 <bcoca> and include them on a per module basis? +10 15:13:11 <abadger1999> yep. 15:14:26 <bcoca> abadger1999: are you going to do the basic separation in 2.6? 15:14:52 <abadger1999> bcoca: I think it would get considered a feature. 15:15:02 <abadger1999> it's definitely not stabilization 15:15:43 <sivel> I was thinking 2.7 to pick that work up again 15:16:13 <sivel> despite best efforts I'm positive something will end up breaking for someone 15:16:14 <bcoca> you are not actually changing the code/function, just refactoring it to avoid the bloated packing 15:16:21 <bcoca> but i can see it both ways 15:16:28 <sivel> splitting the files will require refactoring 15:16:47 <dag> mrproper: my implementation was denied: https://github.com/ansible/ansible/pull/28662 15:16:53 <bcoca> sivel: change breeds uncertainty 15:17:13 <sivel> we will have to change functionality slightly to not have access to `module`, and then import back into basic, and re-implement to use the new methods 15:17:25 <abadger1999> mrproper: So for now, if you want to keep the checker i nthe module you can. If you want to look at making it more generic, the way types was implemented is here: https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/basic.py#L2038 15:18:25 <sivel> My work thus far: https://github.com/ansible/ansible/compare/devel...sivel:categorization-of-basic 15:18:46 <mrproper> abadger1999, That's fair, thank you! 15:18:48 <abadger1999> It's not all applicable, though, because types has a single entry whereas the inter-param validators currently each have a parameter to AnsibleModule 15:21:33 <dag> mrproper: we are stepping on the same toes lately ;-) 15:32:00 <sivel> gundalow: looks like we have stalled. Should we close? 15:32:36 <mrproper> dag, Yeah clearly! Without knowing either. 15:33:12 * bcoca now suspects both accounts are the same user, using vpn to mask ip 15:36:46 <dag> bcoca: now there's an idea ;-) 15:36:58 <dag> I may get sufficient votes in next core meeting :p 15:37:21 * bcoca checks if 13 aliaes is enough 15:38:21 <gundalow> Anything else on this? 15:38:37 <gundalow> #topic Open Floor 15:39:07 <gundalow> #chair 15:39:07 <zodbot> Current chairs: abadger1999 akasurde bcoca gundalow mrproper sdoran sivel 15:39:16 <gundalow> Anyone got anything else? 15:39:27 <mrproper> I'm set for now. Thanks. 15:39:30 <gundalow> (I realise most of us are in another meeting at the same time) 15:39:36 <dag> :-) 15:39:41 <bcoca> https://github.com/ansible/ansible/pull/36788 15:39:45 * dag is dedicated to this meeting 15:39:48 <gundalow> mrproper: Ace, thanks for the discussion. Feel free to speak to us in #ansible-devel any anypoint 15:40:05 <gundalow> bcoca: discussion/review? 15:40:22 <bcoca> alloftheabove 15:40:34 <rvgate> bcoca, that typo tho... *grumbles* 15:40:37 <bcoca> i have 3 other meetings also at this time ... yet my calendar is mostly blank for the week ... 15:40:56 <gundalow> #topic actual error reprting on failed galaxy clone #36788 15:41:02 <gundalow> #link https://github.com/ansible/ansible/pull/36788 15:41:57 * dag is out 15:42:20 <gundalow> #info also allow debugging to see stdout/stderr from command. we were not being 'nice' by devnulling all this info. 15:52:57 <gundalow> OK, guess we are done 15:53:00 <gundalow> Thanks y'all 15:53:02 <bcoca> https://github.com/ansible/ansible/issues/37148 < no, this 15:53:02 <gundalow> #endmeeting