00:00:24 <nitzmahone> #startmeeting Ansible Azure Working Group
00:00:24 <zodbot> Meeting started Thu Aug  9 00:00:24 2018 UTC.
00:00:24 <zodbot> This meeting is logged and archived in a public location.
00:00:24 <zodbot> The chair is nitzmahone. Information about MeetBot at http://wiki.debian.org/MeetBot.
00:00:24 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
00:00:24 <zodbot> The meeting name has been set to 'ansible_azure_working_group'
00:00:49 <yungezz> Hello
00:00:54 <nitzmahone> So far it looks like the spambots haven't found this channel yet :)
00:00:55 <yuwei> hi
00:01:20 <yungezz> Nice :)
00:01:58 <jborean93> hey
00:01:58 <nitzmahone> #chair yungezz zikalino82 yuwei
00:01:58 <zodbot> Current chairs: nitzmahone yungezz yuwei zikalino82
00:02:07 <nitzmahone> #chair jborean93 Kylie_
00:02:07 <zodbot> Current chairs: Kylie_ jborean93 nitzmahone yungezz yuwei zikalino82
00:02:12 <Kylie_> Hi all
00:02:14 <zikalino82> hello :-)
00:02:18 <yungezz> Hi
00:02:42 <nitzmahone> Hey Kylie, you want to run things today?
00:02:57 <Kylie_> I have some topics related to PR. 1) PR for new modules; 2) PRs Zim you submitted to enable Openshift on Azure
00:03:29 <Kylie_> 3) Other items planned for 2.7 - Azure stack; VMSS inventory; key vault
00:03:50 <Kylie_> For 1), Zim, Catherine and Yuwei, what PR do you want to discuss here?
00:04:12 <yungezz> My vmss inventory pr https://github.com/ansible/ansible/issues/40327
00:04:35 <yungezz> It’s community contribution
00:04:41 <yungezz> I did update
00:04:48 <yuwei> https://github.com/ansible/ansible/pull/41533
00:04:54 <yuwei> auto scale
00:05:34 <yuwei> I see Matt has some comment to the route one
00:05:35 <zikalino82> remaining pr for openshift is a part of somebody else's pr https://github.com/ansible/ansible/pull/43695
00:05:58 <nitzmahone> Yeah, the route stuff is very close- a few minor things and we're ready to merge
00:06:02 <nitzmahone> Same for the postgres facts
00:06:36 <yuwei> i will change it today
00:06:51 <yungezz> @yuwei: do you know Cai Hao pr for traffic manager?
00:06:52 <zikalino82> ok, so i can fix these minto things, and maybe yungezz can merge when fixed?
00:06:59 <Kylie_> #action yuwei, update https://github.com/ansible/ansible/pull/41175 per comments
00:07:43 <yungezz> Traffic manager:https://github.com/ansible/ansible/issues/40327
00:08:08 <yungezz> With facts
00:09:10 <nitzmahone> I was looking at auto scale just before this; tis a big one, so I suspect will take some time and a few rounds
00:10:25 <yuwei> i see
00:10:32 <nitzmahone> I started review on appgateway again also, but it seems that there are still codepaths that aren't being tested. All these modules that have embedded lists of sub-resources we need to figure out how to handle consistently (ie, is it "make the list like this" vs "add this item")
00:10:33 <Kylie_> Matt, when you say postgres facts, do you mean https://github.com/ansible/ansible/pull/43327?
00:11:55 <nitzmahone> https://github.com/ansible/ansible/pull/43328
00:12:23 <Kylie_> Understand the effort for auto scale. Considering feature freeze date is upcoming (end of this month?), it is better to complete it to catch up 2.7:). Thank you.
00:12:38 <yungezz> And traffic manger
00:13:15 <nitzmahone> Hrm, looks like 2x copies of postgres facts? (43327/43328- I reviewed 43328)
00:13:17 <zikalino82> nitzmahone "the list like this" vs "add this item" -- so what's your idea? which one we should follow?
00:13:32 <zikalino82> no, there's server and database
00:13:37 <zikalino82> facts
00:13:41 <nitzmahone> ahh
00:13:49 <nitzmahone> OK, will look at 43327
00:13:52 <zikalino82> database stil [WIP] - i need to add tests etc
00:14:33 <Kylie_> Then Zim, could you please complete them before next Tuesday? Then Matt and Jordan can have enough time to review them.
00:15:03 <zikalino82> yes, i have a few facts modules, but all pretty small
00:15:12 <zikalino82> just want to fill the gap
00:15:53 <nitzmahone> I know another partner is planning to dump a huge wad of modules on us next week- hopefully won't fall to me to review again
00:16:31 <Kylie_> Related to Azure?
00:16:32 <yungezz> @Kylie_: how about we send a list of new module for 2.7 to Matt? So Matt could understand our priorities when reviewing prs?
00:17:13 <Kylie_> Yes. Let me summarize the list here.
00:18:11 <Kylie_> @yungezz, what is the PR for traffic manager? And do we have plan for CDN?
00:18:43 <yungezz> Tm https://github.com/ansible/ansible/pull/43812
00:18:51 <yungezz> Cdn is coming
00:19:08 <yungezz> Yes cdn is planned
00:19:30 <Kylie_> Matt, Web App scenario is the top scenario we would like to build and include in 2.7.
00:20:23 <Kylie_> It includes Web App (done), App Service Plan (done), Traffic Manager (https://github.com/ansible/ansible/pull/43812) and CDN (upcoming).
00:21:02 <nitzmahone> OK, good to know
00:21:08 <nitzmahone> That's probably doable
00:21:33 <nitzmahone> So long as CDN is in pretty soon- how complex will that one be (multiple modules?)
00:22:23 <yungezz> One module, one facts module
00:22:44 <nitzmahone> Deep-and-complex arguments, or pretty straightforward?
00:23:07 <nitzmahone> (every time we do something new, we have to go play with and learn about the resources to see if the module UI makes sense)
00:23:09 <yungezz> Not too deep
00:23:19 <nitzmahone> cool
00:23:19 <yungezz> Agree
00:24:01 <nitzmahone> So back to Zim's question about modules that manage lists of sub-resources; there are a few options:
00:24:17 <nitzmahone> * require a separate module for each sub-resource type
00:24:43 <nitzmahone> * pick a single fixed strategy for list management ("make it like this" or "add if missing")
00:25:02 <nitzmahone> * use a mode parameter for each sub-resource list
00:25:27 <nitzmahone> #1 is a pain, but we do it for more complex sub resources
00:25:45 <zikalino82> i am currently doing: "make it like this"
00:25:46 <nitzmahone> #3 is the most flexible for users, at the expense of somewhat more complex UI
00:26:15 <nitzmahone> OK cool, so long as that's consistent throughout, that's arguably the more useful of the two
00:26:16 <zikalino82> so which one should we do, i will just follow your idea :-)
00:26:39 <nitzmahone> We also need to communicate that in the docs somehow
00:26:47 <zikalino82> i was thinking whether perhaps instread of list we could have dicts
00:26:52 <zikalino82> ok
00:27:30 <jborean93> we can always add the mode option in the future if there is demand
00:27:38 <zikalino82> yes
00:27:39 <nitzmahone> what, dict sub-keys with lists? (eg, subnets: { exact: [], ensure_present: [], delete: [] })
00:27:54 <nitzmahone> s/delete/ensure_absent/
00:28:14 <zikalino82> hmm... i was thinking of dicts of resources instead of list... well... i think not a good idea...
00:28:52 <nitzmahone> Yeah, depends on the resource- the dict "key" has to be a single unique value and usable, which works for some but not others
00:29:07 <zikalino82> but,  (eg, subnets: { exact: [], ensure_present: [], delete: [] }), .... maybe too complex
00:29:32 <nitzmahone> Yeah, that was my thought too, just wasn't sure where you were going with "use a dict"
00:29:34 <jborean93> I'm not too much a fan of that format
00:29:38 <nitzmahone> nor I
00:29:44 <jborean93> especially since exact is mutually exclusive to the others
00:29:48 <nitzmahone> yep
00:29:49 <zikalino82> ok, let's stick with "make it like this" list, and possibly add param later
00:29:52 <nitzmahone> +1
00:29:58 <jborean93> sounds good to me
00:31:33 <nitzmahone> I've been working with Ryan on the design/impl for the cloud-as-inventory stuff; he was working on it yesterday, but not sure how far along it is yet. May slide into 2.8, but should still be workable for Ignite and/or AnsibleFest demo.
00:31:57 <nitzmahone> Zim- did they accept your talk? I know they sent out a batch of acceptance, but not sure if they've finished
00:32:18 <nitzmahone> (they accepted one of my proposals that I wasn't expecting)
00:32:29 <Kylie_> @yungezz, you mentioned your solution for key vault depends on cloud-as-inventory. Right?
00:32:31 <zikalino82> not yet
00:32:46 <yungezz> Yes
00:32:54 <zikalino82> but yesterday i spoke to Stuart Kirk and and we agreed to co-present
00:32:57 <nitzmahone> I think there was one more batch they still needed to send out, so I don't know if I'm on the hook for 1 or 2-3 talks
00:33:21 <yungezz> Discussed with Matt and Jordan last week, will put it in role for now
00:33:40 <Kylie_> Ok.
00:33:43 <yungezz> Maybe revisit it after cloud inventory ready
00:33:47 <nitzmahone> So the keyvault stuff will likely need to slip into 2.8; I don't want to push the cloud-as-inventory stuff out until it's ready, but keyvault will be an excellent use case to test with
00:34:07 <Kylie_> What is rough schedule for 2.8?
00:34:24 <nitzmahone> Probably February-ish release?
00:34:47 <Kylie_> @zikalino82, https://github.com/ansible/ansible/pull/43695 is the only fix you need to enable OpenShift on Azure. Right? Any else?
00:34:50 <nitzmahone> (we haven't talked calendar yet, but we always have to bake in a little extra time for holidays on the end-of-year stuff)
00:35:16 <zikalino82> Kylie_
00:35:24 <zikalino82> yes, just includes too much other stuff...
00:35:49 <nitzmahone> ugh, "accept_terms"
00:35:50 <zikalino82> i created my own pr but closed
00:36:09 <zikalino82> maybe i should reopen, because it's really simple and could go in faster
00:36:36 <Kylie_> Did you talk w/ the contributor spmp?
00:36:57 <zikalino82> yes
00:36:59 <jborean93> he's usually in this chat, was here earlier this morning
00:37:08 <jborean93> but I saw him leave as the meeting started
00:37:09 <zikalino82> but silent
00:37:15 <spmp> All tests green: Can some of you good peple review/approve my PR's: https://github.com/ansible/ansible/pull/43335 https://github.com/ansible/ansible/pull/43588 https://github.com/ansible/ansible/pull/43695
00:37:19 <spmp> Thanks
00:37:19 <jborean93> s/chat/channel/
00:37:31 <jborean93> cool he's back
00:37:32 <nitzmahone> speak of the devil and he shall appear ;)
00:38:07 <Kylie_> Welcome spmp back. It is great to have more people join discussion.
00:38:32 <spmp> aaaah, crap, what did I do
00:38:49 <jborean93> nothing bad I assure you, welcome
00:39:20 <spmp> Uh huh, thats a fire I see over there, looks good for roasting 8)
00:39:38 <Kylie_> #43335, I saw Yuwei add comments. This is to add a new parameter but a bug fix. Jordan or Matt, do you wan to take a look or leave it to Zim and Catherine?
00:40:55 <Kylie_> #43588, Yuwei added one comment. This is also to add a new parameter but changes are small.
00:41:05 <nitzmahone> My only commetn on 43335 is can you un-fix all the formatting changes in the test YAML
00:41:18 <nitzmahone> Otherwise you're taking attribution on all those
00:41:29 <zikalino82> yes, that would be useful
00:41:42 <spmp> I dont want attribution, just wanted consistent formatting as it got my OCD up.
00:41:52 <spmp> But... quite a PITA to do 8/
00:41:58 <nitzmahone> Right, but you touched all the lines, so you took attribution
00:42:08 <nitzmahone> Gotta live with what's there
00:42:15 <zikalino82> the major thing was test
00:42:49 <nitzmahone> (I'm a two-spacer-YAML guy myself, so I feel your pain, but "when in Rome" and all)
00:43:13 <nitzmahone> When it's your module, you can write whatever you want that passes the linter ;)
00:44:16 <nitzmahone> So anyway, once the attribution issues are fixed on that one, feel free to merge
00:44:50 <spmp> I am two spacer everwhere, but if spacing is X then use X everywhere. OK doing it now 8(
00:46:37 <Kylie_> For  https://github.com/ansible/ansible/pull/43695, we really want this fix ASAP because it also will unblock OpenShift set up on Azure. Zim, do you have any suggestion as the reviewer? Thanks.
00:48:54 <nitzmahone> Yeah, impl looks OK there at a glance, just the matter of the increased testing time
00:49:19 <jborean93> looks like `auth_source` is still in the tests, spmp: is that still needed after what we spoke about this morning?
00:49:21 <nitzmahone> Do the tests run now with a plan-required image?
00:49:42 <spmp> Which test? I tried to remove it from everywhere.
00:49:49 <spmp> on which branch
00:49:53 <jborean93> https://github.com/ansible/ansible/pull/43695/files#diff-767ce3092886ccbc7e8c33b649fe33bf
00:51:19 <spmp> Oh, I thought I just removed them...
00:52:28 * nitzmahone wonders how much we'll be paying F5 every time we test this thign
00:52:42 <spmp> #43335
00:52:51 <spmp> Oooh so much. I can tell you the rate... hold on.
00:53:13 <jborean93> maybe we need to create an image in the marketplace and pay ourselves :)
00:54:29 <nitzmahone> We already dropped $1000 this month to Microsoft on busted undeleteable load balancers in our Azure subscription ;)
00:54:46 <jborean93> maybe Kylie_ can help follow that up?
00:54:48 <nitzmahone> (and many hours fighting with support)
00:55:02 <spmp> $68.80AUD/hr
00:55:15 <nitzmahone> Yowtch
00:55:33 <spmp> Good idea @jborean93 8) -10BTC/hr
00:55:57 <spmp> yea, so in testing this environment build I could have bought two houses (not kidding) with the cost!
00:56:05 <nitzmahone> We definitely need to find a cheaper thing there; on a test failure, that will hang out for almost an hour
00:56:07 <spmp> probably more now.
00:56:42 <Kylie_> @nitzmahone and @jborean93, yes, our CSS just replied Matt Clay.
00:56:47 <spmp> I was looking for hooks to note the failure and delete anyway. I hoped/assumed you created a resource group then destroyed it after test.
00:56:53 <nitzmahone> and if there's other problems, it will get cost-prohibitive quickly, esp since mattclay is still paying the Azure CI bill on his credit card because Microsoft invoicing contact has also ignored us
00:57:26 * nitzmahone wonders why we're paying for this at all, but that discussion has gone nowhere in 3 years
00:57:37 <spmp> Yea...
00:57:48 <spmp> We are a case in point as to why you should _not_ be.
00:58:04 <spmp> You should have another 10 full time devs off our usage
00:59:02 <Kylie_> As for "mattclay is still paying the Azure CI bill on his credit card because Microsoft invoicing contact has also ignored us", no idea for this one. Do you raise this before? Do you mean Ansible CI for Azure is under Matt's personal credit card? Will Red Hat pay for it?
00:59:07 <nitzmahone> Anyway, yeah, we need to figure out a free/very-cheap  plan VM for that one
00:59:34 <nitzmahone> Yes, Red Hat reimburses, but when the bill exceeds $1000/mo the accounting people get grouchy
01:00:07 <nitzmahone> (we're not supposed to use credit cards for regular stuff this big, but our billing/invoicing contact at Microsoft is unresponsive)
01:00:11 <zikalino82> i think perhaps we should have some unit tests for cases like that?
01:00:28 <nitzmahone> So either we keep it cheap or we'll stop being able to pay the bill
01:00:44 <nitzmahone> zikalino82 Yeah, that might be a better short-term solution
01:00:59 <zikalino82> i actually think there's so many things to test
01:00:59 <nitzmahone> Module unit tests are rare and tricky
01:01:04 <zikalino82> especially idempotence
01:01:09 <zikalino82> can't test everything
01:01:14 <jborean93> what about we keep the test there but disable/comment it out
01:01:24 <nitzmahone> Or make it conditional
01:01:26 <jborean93> I've done that for a few windows modules that require a domain infra
01:01:29 <Kylie_> I see. Red Hat has many subscriptions. Can you use one of corp subscription for this one? Or you want but no response from billing/invoicing contact at Microsoft. If it is this case, let me try to ask who could help though I also don't know billing people.
01:01:43 <nitzmahone> Nobody wants to share their subscriptions
01:01:57 <nitzmahone> Every time we've asked one of the other groups, they say "sorry, just for us, get your own"
01:02:15 <jborean93> I would guess some of the things we do as part of the CI require some higher level perms some people may not want to give out
01:02:24 <nitzmahone> That too
01:02:41 <mattclay> Yeah, I did get access to one of the company accounts -- but permissions were inadequate.
01:02:53 <nitzmahone> We definitely need our own for some things- the way the CI termination stuff works, wouldn't want to have other resources in there or they'd get killed all the time
01:03:45 <nitzmahone> Making the plan VM tests conditional with `when: enable_plan_vm|bool` or something is probably the best short-term solution
01:03:56 <spmp> How hard would it be to get your friends at M$ to create a free VM that had a plan and needs terms accepted?
01:04:19 <nitzmahone> No clue- I've never tried to publish anything in Marketplace
01:05:38 <zikalino82> we could publish ubuntu vm with ansible preinstalled ;-)
01:06:01 <nitzmahone> zikalino82 which part do you need for Openshift- the accept_terms part or the plan part?
01:06:13 <nitzmahone> (or both)
01:06:14 <spmp> zikalino82 sounds expensive
01:06:17 <zikalino82> no we don't need accept terms
01:06:28 <zikalino82> we just need os disk size part
01:09:59 <nitzmahone> I see a couple of minor issues at a glance around the plan arg validation in the accept_terms case.
01:11:07 <nitzmahone> So dunno how fast spmp can turn around changes, but if we get off the expensive VMs and fix those, I'm probably fine to merge 43695
01:11:33 <spmp> Yup, on it now if pos. Pretty easy to change VM.
01:11:38 <nitzmahone> (should be able to remove auth_source from those tests too at a glance)
01:11:39 <spmp> What do you want done?
01:11:49 <nitzmahone> I'll do inline review comments
01:11:56 <Kylie_> Nice. Thank you guys.
01:12:19 <spmp> Hold on, I will check why auth_source is not removed from that branch and push before you review..
01:14:07 <Kylie_> Let me summarize items we discussed today on our high priority list.
01:14:26 <Kylie_> Priority 1:
01:14:26 <Kylie_> VMSS inventory - customer request
01:14:26 <Kylie_> https://github.com/ansible/ansible/pull/40327
01:14:27 <Kylie_> New modules for Web App scenario (basic):
01:14:27 <Kylie_> Web App (done), App Service Plan (done), Traffic Manager (https://github.com/ansible/ansible/pull/43812) and CDN (upcoming).
01:14:27 <Kylie_> New modules for complete scenario:
01:14:27 <Kylie_> autoscale: https://github.com/ansible/ansible/pull/41533 (Matt will take a look)
01:14:28 <Kylie_> Route table: https://github.com/ansible/ansible/pull/41175 (close to merge)
01:14:28 <Kylie_> App gateway: https://github.com/ansible/ansible/pull/39940 (Matt will take a look)
01:14:29 <Kylie_> Bug fixes:
01:14:29 <Kylie_> https://github.com/ansible/ansible/pull/43335 https://github.com/ansible/ansible/pull/43588 https://github.com/ansible/ansible/pull/43695
01:14:58 <Kylie_> Hope we could close discussion for most of them and move to next priority items:). Thank you Matt and Jordan!!
01:15:37 <nitzmahone> sounds good
01:15:41 <nitzmahone> Anything else for today?
01:15:43 <Kylie_> Any other topic?
01:15:46 <Kylie_> No from me.
01:15:49 <nitzmahone> nor here
01:16:00 <zikalino82> no
01:16:10 <Kylie_> Thank you all.
01:16:11 <spmp> Pushed
01:16:18 <nitzmahone> noice
01:16:24 <nitzmahone> Thanks all- until next week!
01:16:26 <nitzmahone> #endmeeting