00:00:19 #startmeeting Ansible Azure Working Group 00:00:20 Meeting started Thu Mar 7 00:00:19 2019 UTC. 00:00:20 This meeting is logged and archived in a public location. 00:00:20 The chair is nitzmahone. Information about MeetBot at http://wiki.debian.org/MeetBot. 00:00:20 Useful Commands: #action #agreed #halp #info #idea #link #topic. 00:00:20 The meeting name has been set to 'ansible_azure_working_group' 00:00:24 hiya 00:00:50 #chair yungezz_ zikalino8265 yuwei 00:00:50 Current chairs: nitzmahone yungezz_ yuwei zikalino8265 00:00:58 Hi Matt 00:01:24 First thanks for Pr reviews 00:02:20 no worries- got a couple more to do for Zim ;) 00:02:56 hi all :-) 00:03:41 I know Zim wanted to chat about generic idempotence strategy- anyone else have anything for today? 00:04:15 I have some questions on tower 00:04:37 Will you join red hat summit this year? 00:04:47 Yes, I'm planning to be there 00:04:53 Great 00:04:54 I can't help much on Tower though ;) 00:05:17 myself and Stuart have 2 hours workshop 00:05:23 Ok, just some general user scenarios 00:05:27 Ok 00:05:54 Oh, general stuff sure, but if it's deep technical something about Tower, you're asking the wrong guy ;) 00:06:36 Got it :) 00:07:32 zikalino8265: cool- they didn't accept my talk this year, so other than customer meetings and a couple of "ask an expert" sessions, I'm pretty free... I'll try to come be the peanut gallery at your workshop ;) 00:07:37 * jborean93 sorry lost track of time 00:07:52 peanut gallery? :-) 00:08:44 does this help? https://www.youtube.com/watch?v=14njUwJUg1I 00:09:05 peanut gallery == the people that heckle the presenters 00:09:33 ah, ok, learned something new today 00:09:36 :-) 00:10:12 :D 00:10:23 yungezz_ did you have some questions you wanted to try asking, or probably too deep? 00:10:38 Zim can go fist 00:10:46 #topic https://zikalino.github.io/blog/2019/03/06/ansible-modules-proposed-improvements/ 00:10:51 yeah, so i just sent a link to the note 00:10:55 About idempotence 00:11:12 i have been playing with different approaches for long time now. 00:11:27 and i thin this kind of approach would be probably the best. 00:11:52 Yeah, I like the approach 00:11:57 i have tested if i can add any additional azure specific metadata 00:12:16 I make no guarantees that the extra data in the argspec won't break in the future, but it's probably a fine appraoch 00:12:21 maybe we could just make some of these things ansible-wide at some point 00:12:59 I think the GCE folks do something similar with their modules- they're all generated 00:13:15 but the fully generated modules are a pain for us 00:13:26 i don't know, but it looks similar to their input files ;-) 00:13:57 this does somewhat align the modules more to the actual API. Might be encouraging bad practices when building the module itself 00:15:19 if it's not flexible enough... 00:15:19 in most cases though there's a 1:1 mapping of a module arg to an API property, so having a declarative way to say "just do a straight comparison" or "ignore this one because it can't be updated" is a nice way to avoid writing stupid/repetitive/error-prone code that's just doing those basic comparisons 00:15:59 right now we have too many problems. every module behaves differently :-( 00:16:08 There will always be special cases where the module needs to do something more, but having a framework like this in place would cover the vast majority 00:16:22 fair enough 00:17:08 (but yes, would also make it easier to build "dumb API wrapper" style modules ;) ) 00:17:31 so we need good framework + good guidelines 00:17:51 Yeah- having this framework doesn't absolve the module author of the need to build good UX 00:18:13 (just makes it easier to do the repetitive parts in a declarative way) 00:19:34 Anything more you want to talk about on that? I'd be curious to see a strawman module or two (esp with some of the more complex ones where you have to dig a few layers into the API object to get the value) 00:20:07 yes, i can do it with selected 2 modules 00:21:06 thanks for input :-) 00:21:16 np- exciting stuff! 00:21:27 My turn then. In what scenarios user will use tower rest api? Is it common to integrate api call with other tools like ci/cd? 00:21:28 OK, on to yungezz_ questions 00:21:42 Yeah, that's what it's there for 00:21:55 Oh, ok 00:22:07 CI/CD, kicking off Tower jobs in response to external events, etc 00:22:42 Why not directly call ansible in ci/cd 00:22:57 Some people have built custom UI frameworks or integration with other apps where user can click a button and behind the scenes Tower does $thing 00:23:26 Any examples? 00:23:33 Some people do that too, but Tower provides credential storage, delegation, eventing, auditing, lots of other things over the top of command-line Ansible 00:23:43 Yes 00:25:16 I saw tower price tier, is there some tier like pay as you go? 00:25:36 So far standard and premium pay yearly 00:25:39 I think they've done something like that for cloud usage 00:25:47 But not sure 00:26:40 Ok 00:26:43 ($$$ stuff is very far away from my daily experience ;) ) 00:27:18 any others? 00:27:35 My question done 00:27:52 Cool... Anybody got anything else for today then? 00:28:14 i think i am fine 00:28:19 yuwei: how about 2sdks issue Jordan asked? 00:28:24 Yea 00:28:33 sorry was just about to bring it up :) 00:29:11 which one? 00:29:21 Paramiko 00:29:21 Seems I missed 00:29:47 So the first question was around the paramiko requirement in azure-cli-core 00:29:53 And the other about oauth latest version not compatible 00:29:56 oh yes 00:30:02 ssh things 00:30:14 the 2nd was an issue that was reported around oauthlib 3+ failed with msrest.credentials 00:30:46 I haven't got the answer now 00:31:21 I m still following up 00:31:31 ok, I'll pass that along 00:31:33 Jordan, Maybe we can send you email after figure it out 00:31:44 sure 00:32:28 OK, if nothing else then, closing in 5... 00:32:33 4.. 00:32:36 3.. 00:32:40 2.. 00:32:42 1.. 00:32:47 Thanks all- til next week! 00:32:50 Thanks and bye! 00:32:50 #endmeeting