20:00:00 #startmeeting Ansible Windows Working Group 20:00:00 Meeting started Tue Jun 21 20:00:00 2022 UTC. 20:00:00 This meeting is logged and archived in a public location. 20:00:00 The chair is nitzmahone. Information about MeetBot at https://fedoraproject.org/wiki/Zodbot#Meeting_Functions. 20:00:00 Useful Commands: #action #agreed #halp #info #idea #link #topic. 20:00:00 The meeting name has been set to 'ansible_windows_working_group' 20:00:03 bam 20:00:07 #chair jborean93 20:00:07 Current chairs: jborean93 nitzmahone 20:00:09 hey 20:00:12 #info agenda https://github.com/ansible/community/issues/644 20:00:14 hey hey 20:00:19 hey 20:00:29 nothing new, so 20:00:32 #topic open floor 20:00:40 same, I'm pretty boring these past 2 weeks 20:00:52 * nitzmahone clearly still hasn't reviewed the docs publishing PR revamp :( 20:01:36 heh that's ok, as long as it's still on the list 😅🙏 20:02:03 yeah, it is, and I'm pretty sure the current incarnation will be fine, but want to make sure I can give it the proper attention instead of just rubber-stamping it ;) 20:02:17 I'd expect nothing less :) 20:02:34 I don't have any other windows-related news 20:02:54 I did get a release out for the Galaxy -> Artifactory proxy I made: https://github.com/briantist/galactory 20:03:05 Cool, we'll wait til 5 after for any new topics, then I'll go find lunch :D 20:03:10 oh nice 20:03:38 got tired of waiting for Artifactory to implement it (not likely to happen), and I didn't want to run full galaxy_ng, so this was a neat learning experience 20:03:54 So is it an Artifactory plugin then? 20:03:57 and is unblocking a lot of internal ansible stuff where I work 20:04:16 no, it's a separate app (Flask) that uses Artifactory for the backend storage 20:04:21 ah ok 20:04:34 I guess that means you didn't have to write it in Java, so win :D 20:04:54 and also has a way to proxy to upstream Galaxy, and then put those collections in Artifactory too (kind of like Artifactory's own "virtual" repositories), so it gives transparent local caching in that way 20:05:01 heh yeah exactly 20:05:20 I statted hitting 429 errors from galaxy very quickly as I started ramping up internal CI stuff... 20:05:22 * nitzmahone rarely misses Java 20:05:42 Yeah, the public service's ratelimiting is pretty aggressive :( 20:06:06 gotta create a GHA/AZP caching plugin for Ansible CI :P 20:06:17 actually, I was considering exactly that! 20:06:26 Heh, isn't that basically just the "pulp all in one" container? 20:06:28 much of what I wrote for this would be applicable 20:07:10 but in my own collection's CI, I stopped using galaxy directly a long time ago 20:07:12 They finally updated that to contain a version of pulp_container that supports signatures 20:07:55 I have this GH action, it's not published separately though anyone could use it even where it sits: 20:07:56 https://github.com/ansible-collections/community.hashi_vault/blob/main/.github/actions/collection-via-git/action.yml 20:08:21 usage looks like this: https://github.com/ansible-collections/community.hashi_vault/blob/8c0fc19d125d4e979888be2c11e8a6d3c67de94d/.github/workflows/ansible-test.yml#L348-L356 20:08:40 nice, a tight little utility action 20:08:48 yup, it has limitations.. some of which could be worked around if one were motivated 20:10:40 I keep bumping up against a bunch of things with GHA that I've taken for granted in AZP and other CI systems- the biggest one is how dumb the official type system is, since it doesn't support list/dict values in things like `matrix`, so you end up having to smuggle things of any complexity around via JSON blobs, which, ick 20:11:16 (and the way it fails when you try is ... not generally intuitive or helpful) 20:11:23 yeah, that stuff gets annoying quick, also the inconsistent availability of various contexts so you end up trying a bunch of things that look like they will work but then the whole workflow is invalid 20:11:30 yep 20:11:46 Jinja isn't my favorite thing in the world, but I'd kill for it in GHA 20:12:19 at times, even YAML anchor support (cursed at it is) would be a win, but that also is unsupported 20:12:38 reusable workflows have helped with some things, but they have their own quirks and limitations 20:12:49 you just have too complex workflows :P 20:12:50 as it is to do anything that's not purely static or has any kind of dynamic fan-in/fan-out behavior you end up having to write these stupid little one-off JSON splatter scripts 20:12:52 KISS 20:13:31 ironically, these "advanced" features that are missing are what prevents keeping it simple :p 20:13:46 Yeah, the reusable workflow limitations have always caused me more trouble than they're worth for what I've needed them for :( 20:14:10 * nitzmahone lives in a glass house and should probably shut up ;) 20:14:11 I don't know, complex types in matrixes don't sound simple :P 20:14:48 well.. maybe.. that's more of a nitz thing ;-p 20:15:03 Sure, but eg I'm writing a container publishing thing and I want the various job invocations to support publishing to multiple tags (eg, "latest", "$some_ver") 20:15:44 So I have to keep/transform those things in multiple formats or roll my own list-smuggling behavior in the matrix 20:16:24 (or define them in files, or whatever, but there's just no clean way to do it all in the workflow) 20:16:32 "So I have to keep/transform those things in multiple formats or roll my own list-smuggling behavior in the matrix" --Morpheus 20:16:41 lol 20:16:51 "you think that's a list you're consuming now?" 20:17:00 hahah 20:17:46 OK, I should end the meeting before it turns into a full-on GHA whine session for me (and go find some lunch) 20:17:49 #endmeeting