00:02:44 <Kylie_> #startmeeting ansible_azure_working_group
00:02:44 <zodbot> Meeting started Thu Jul 12 00:02:44 2018 UTC.
00:02:44 <zodbot> This meeting is logged and archived in a public location.
00:02:44 <zodbot> The chair is Kylie_. Information about MeetBot at http://wiki.debian.org/MeetBot.
00:02:44 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
00:02:44 <zodbot> The meeting name has been set to 'ansible_azure_working_group'
00:03:02 <Kylie_> Hi Matt and Jordan
00:03:12 <Kylie_> We have multi topics today.
00:03:21 <Kylie_> 1. Ansible installation
00:03:24 <Kylie_> 2. Ansible changelog
00:03:28 <Kylie_> 3. PRs
00:03:44 <Kylie_> #topic 1 Ansible installation
00:04:12 <Kylie_> Recently we are validating Ansible[azure] installation on all kinds of Linux distros but met problems on SLES.
00:04:36 <Kylie_> Then we tried ansible installation on SLES, not work too.
00:04:47 <nitzmahone> via what mechanism?
00:05:03 <nitzmahone> We include SLES in our CI, so...
00:05:35 <Kylie_> https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ansible-install-configure
00:05:57 <Kylie_> https://www.irccloud.com/pastebin/W5MKhAKI/
00:06:43 <nitzmahone> The python-pip is probably ancient for whatever SLES version that is
00:06:49 <Kylie_> The issues was exposed w/ latest pip. Am I right? Yuwei.
00:07:09 <nitzmahone> Those instructions are using the distro pip
00:07:29 <nitzmahone> `sudo python -m pip install pip --upgrade` would probably fix whatever the issue was
00:07:33 <jborean93> out of curiosity, what's the actual error you are getting?
00:07:54 <yuwei> not about the pip
00:08:43 <yuwei> I think there are some packages conflict or missing
00:09:06 <Kylie_> https://www.irccloud.com/pastebin/HstSyuhS/
00:09:29 <nitzmahone> Probably ancient setuptools
00:09:56 <nitzmahone> `pip show setuptools` ?
00:10:12 <nitzmahone> The pip update would probably also fix that
00:10:28 <Kylie_> I see. Thank you Matt. Let us have a try again today.
00:10:45 * nitzmahone looks to see what we do to install on SLES
00:11:04 <Kylie_> Now we are testing CentOS, Ubuntu, RHEL and SLES. Are all in your test suites?
00:11:15 <Kylie_> Where to see how you do to install on SLES?
00:11:38 <nitzmahone> Oh, we're actually doing OpenSUSE, not SLES
00:11:38 <jborean93> here is our opensuse docker file https://github.com/ansible/ansible/blob/devel/test/utils/docker/opensuse42.3/Dockerfile
00:12:00 <nitzmahone> (of course that installs all the necessary CI bits too, so more than needed)
00:12:09 <jborean93> yep
00:12:16 <nitzmahone> OpenSUSE is also newer, like Fedora -> RHEL
00:12:32 <jborean93> and doesn't install Ansible directly because it uses the git checkout in the tests
00:12:35 <nitzmahone> Anyway, 99% sure it's an old setuptools issue
00:13:32 <Kylie_> Understand. Thank you for suggestion.
00:13:40 <Kylie_> #topic Ansible changelog
00:13:54 <Kylie_> Is there way to add azure bug fixing/features in https://github.com/ansible/ansible/blob/stable-2.5/changelogs/CHANGELOG-v2.5.rst?
00:14:34 <jborean93> are these fixes already in stable-2.5 but not in the changelog?
00:15:14 <Kylie_> Yes. We see some fixes documented for v2.5.1. But after that, no any documentation for Azure changes.
00:15:33 <jborean93> they are generated based on the changelog fragments in a commit
00:15:33 <Kylie_> We did backported some fixes (e.g. networking related) to 2.5 in recent months.
00:15:47 <jborean93> if there was no fragment then it wouldn't have been updated
00:16:11 <jborean93> no idea what the process is to manually update it, nitzmahone would know but I'm pretty sure you can just manually update and open a PR
00:16:26 <Kylie_> "changelog fragments in a commit", any example? I guess we missed them. Catherine, do you know what it is?
00:16:38 <yungezz> no idea
00:16:41 <nitzmahone> take a look in changelogs/fragments
00:16:53 <yungezz> ok
00:17:54 <nitzmahone> If you have a bugfix or feature that needs to go in the changelog, include a file like that with the commit and use 'bugfixes' or 'minor_features' as the name of a list in the root of the YAML doc
00:18:19 <yungezz> got it, will add ou changes there.
00:18:24 <yungezz> thanks
00:18:38 <jborean93> but for existing ones the changelog file needs to be manually added?
00:18:40 <Kylie_> I saw an example here - https://github.com/ansible/ansible/pull/42013/commits/4ba9d5da919253ddce3c6ecfe9ce6b9567968f11#diff-00a3bf453f4f572bbdf89873ea0d9d28.
00:18:54 <jborean93> otherwise it would show up as added in the 2.5.7 release
00:19:13 <nitzmahone> Yeah, don't try to fill in old stuff
00:19:26 <yungezz> got it
00:19:38 <nitzmahone> 2.5 uses an Openstack tool that auto-buckets the files into releases based on the release tag where they appear
00:19:39 <Kylie_> Any way to add changelog for existing ones manually?
00:20:57 <nitzmahone> Not easily
00:21:33 <nitzmahone> At least for 2.5, they'd have to be manually patched into another file that was created during the right release
00:21:59 <nitzmahone> 2.6+ we ditched the Openstack tool that was generating them off branch history, so there's a manual mapping file we can update to get it in the right bucket
00:22:23 <Kylie_> I see. So there will be 2.5.7. Right?
00:22:27 <nitzmahone> Yes
00:23:18 <Kylie_> Ok. #Action Zim, Catherine, please ensure Zim's fix for VM, networking and VMSS backpoint to 2.5. Thanks.
00:23:38 <Kylie_> I am done for first two topics. Leave time to Catherine, Zim and Yuwei for PRs.
00:23:46 <Kylie_> #topic PR
00:23:46 <yungezz> you mean 2.5 next minor release, right kylie?
00:23:50 <Kylie_> yes
00:23:58 <yungezz> sure
00:24:22 <yungezz> key vault bug fixing pr: https://github.com/ansible/ansible/pull/41683
00:24:39 <yungezz> webapp https://github.com/ansible/ansible/pull/40005
00:24:50 <zikalino82> and vm facts: https://github.com/ansible/ansible/pull/38279
00:24:53 <yungezz> app service plan https://github.com/ansible/ansible/pull/40906
00:26:12 <yungezz> yuwei's autoscale: https://github.com/ansible/ansible/pull/41533
00:26:29 <yungezz> yuwei's route table: https://github.com/ansible/ansible/pull/41175
00:27:32 <yuwei> Autoscale https://github.com/ansible/ansible/pull/41533
00:27:32 <yuwei> Route table https://github.com/ansible/ansible/pull/41175
00:27:49 <jborean93> have added them to my todo list
00:28:22 <zikalino82> and app gateway: https://github.com/ansible/ansible/pull/39940
00:28:32 <Kylie_> Matt, last time you mentioned you are working on inventory for performance issue and it is documented in the roadmap of core. Where is it? I did not saw core under https://github.com/ansible/community. And how's going on?
00:28:58 <nitzmahone> Hey @zikalino82 - there was a fix PR for 2.5 requirements that was still failing some stuff when I went to cut 2.5.6
00:29:34 <nitzmahone> Kylie_ https://docs.ansible.com/ansible/devel/roadmap/ROADMAP_2_7.html
00:29:50 <nitzmahone> "Azure inventory plugin"
00:30:13 <yungezz> @nitzmahone, could you pls share the fix pr? is it from zim? then I can do a search
00:30:16 <yungezz> zim is on vacation
00:30:25 <nitzmahone> ah ok, one sec
00:30:29 <yungezz> i'll back him up
00:30:31 <zikalino82> yes, i have some problem with ci with that one. not failing locally....
00:30:39 <Kylie_> #action @jborean93 and @nitzmahone, please help review below PRs.
00:30:39 <Kylie_> key vault bug fixing pr: https://github.com/ansible/ansible/pull/41683
00:30:39 <Kylie_> webapp https://github.com/ansible/ansible/pull/40005
00:30:39 <Kylie_> and vm facts: https://github.com/ansible/ansible/pull/38279
00:30:39 <Kylie_> app service plan https://github.com/ansible/ansible/pull/40906
00:30:39 <Kylie_> autoscale: https://github.com/ansible/ansible/pull/41533
00:30:39 <Kylie_> route table: https://github.com/ansible/ansible/pull/41175
00:30:40 <Kylie_> app gateway: https://github.com/ansible/ansible/pull/39940
00:30:45 <zikalino82> well, this week i am working actually
00:30:53 <yungezz> :)
00:30:53 <zikalino82> so i will try to close this one too
00:30:58 <nitzmahone> @yungezz https://github.com/ansible/ansible/pull/41952
00:31:51 <yungezz> thanks Matt. Zim feel free to let me know if you need help duirng vacation :)
00:32:35 <zikalino82> sure
00:32:53 <yungezz> @nitzmahone, i have some question about azure stack
00:33:07 <nitzmahone> sure
00:33:24 <nitzmahone> (tis something we should start discussing strategy for in the coming weeks anyway)
00:33:26 <Kylie_> Jordan, There are a bunch of PRs. I would like to highlight 2 first -  key vault bug fixing which is needed for one customer' scenario and VM facts we discussed for more than 2 months. It is better we could have an example for future facts modules. Thank you.
00:33:46 <yungezz> we met api version not supporting azure stack  in sdk
00:33:53 <yungezz> we looked at azure cli way
00:34:09 <yungezz> they have api profile so that user could custom it
00:34:30 <yungezz> what's your thought on resolving it in ansible?
00:34:49 <yungezz> also we found a related pr https://github.com/ansible/ansible/pull/39850
00:34:55 <nitzmahone> That's why we added support for API profiles as well, but need to go back and fix it now that they are part of the SDK
00:35:38 <nitzmahone> Yeah, that's not the way Laurent said to do it going forward- we should only be using the api_profile
00:35:47 <yungezz> yes
00:36:07 <yungezz> we setup a azure stack small env locally
00:36:26 <nitzmahone> I have access to one as well that we're supposedly allowed to set up Ansible CI against
00:36:46 <nitzmahone> The question is how to avoid using SDK properties that are not supported
00:37:11 <yungezz> yes
00:37:29 <yungezz> i suppose the official ansible azure stack ci will be ready after we fixed all those issues
00:38:41 <nitzmahone> I'm guessing we basically just need to guard around certain parts of the module impls so they don't try to get/set properties that aren't there on older API profiles for stack
00:39:19 <nitzmahone> We may also need to do some runtime discovery against the API endpoints, as I believe they actually (in some cases) support the necessary API version but don't allow certain features (eg managed disks)
00:39:51 <nitzmahone> So in that case, API profile alone is not enough to know that we need to avoid certain features and properties
00:40:53 <nitzmahone> It seems like it'll have to be case-by-case, though. CLI has it a little easier than us, but even they still manually avoid certain SDK bits or write directly to the REST APIs in some cases
00:40:57 <yungezz> maybe we can sync with laurent to see if there's way to get the list from sdk. to do it one by one in ansible is hugh work, and hard to maintain
00:41:08 <nitzmahone> What list?
00:41:29 <yungezz> such as feature list, supported properties
00:41:48 <nitzmahone> Yeah, seems unlikely. The SDK doesn't know either- all it has are API profiles
00:43:04 <nitzmahone> In most cases, the API profile should be sufficient- the REST API will fail in the other cases (eg, if you try to use managed disks on Stack today)
00:43:32 <nitzmahone> Stack team said managed disk support should be here before the end of the year, so depending on when that starts to be available, it may not be an issue anyway.
00:43:54 <yungezz> ok
00:44:27 <nitzmahone> We'll just have to see how it goes though- I haven't had time to run a full ansible-test run against the stack instance yet
00:44:51 <nitzmahone> If you guys have one, just set up the credentials for ansible-test and run it against that to see what breaks
00:45:06 <yungezz> we're testing from customer scneario, vm creation
00:45:20 <yungezz> let's try ansible test to see where it goes
00:46:56 <yungezz> will share results with you later
00:47:09 <Kylie_> Any other topic?
00:47:10 <nitzmahone> I'm guessing most things will be broken
00:47:16 <nitzmahone> Nothing from this side...
00:47:21 <yungezz> yes, we spent lots of time to make vm works
00:47:56 <yungezz> no from my side
00:48:03 <Kylie_> Additonal question, Ansible can be installed on Mac and Linux. Any plan to enable Ansible on Windows?
00:48:04 <nitzmahone> Once stack supports managed disks, I want to deprecate all the nasty automatic storage account mess in azure_rm_virtualmachine. I wish we hadn't written that :)
00:48:04 <jborean93> I'm good
00:48:54 <jborean93> no explicit plans, Ansible relies on fork() which isn't available on Windows
00:48:55 <nitzmahone> Kylie_ Someday, hopefully- there are some underlying architectural problems that prevent running on Windows natively today. There are some side-projects going to fix those
00:49:06 <jborean93> Best bet for Windows users is to use a VM or WSL
00:49:12 <nitzmahone> Yep
00:49:17 <Kylie_> I see. Thank you.
00:49:18 <nitzmahone> (for now anyway)
00:49:33 <Kylie_> :) Thank you all.
00:49:36 <Kylie_> #endmeeting