14:32:00 #startmeeting Documentation Working Group aka DaWGs 14:32:00 Meeting started Tue Apr 14 14:32:00 2020 UTC. 14:32:00 This meeting is logged and archived in a public location. 14:32:00 The chair is acozine. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:32:00 Useful Commands: #action #agreed #halp #info #idea #link #topic. 14:32:00 The meeting name has been set to 'documentation_working_group_aka_dawgs' 14:32:33 Today's agenda includes https://github.com/ansible/community/issues/521#issuecomment-610521747 and any comments below it 14:32:37 who's around? 14:32:37 * samccann waves 14:32:45 #chair samccann 14:32:45 Current chairs: acozine samccann 14:32:49 * felixfontein waves 14:32:58 #chair felixfontein 14:32:58 Current chairs: acozine felixfontein samccann 14:33:02 welcome, welcome! 14:34:10 odyssey4me: there's an issue you might want to follow: https://github.com/ansible/ansible/issues/68755 14:34:17 I added another item to the agenda, though in a new comment 14:34:17 who else is around? 14:34:31 thanks felixfontein 14:34:43 for the notes/changelog part it would be good if gundalow abadger1999 are around 14:35:11 it's awfully early for abadger1999, but gundalow might still be at his desk 14:35:20 gundalow: you here? 14:35:29 awesome, thanks felixfontein 14:35:31 Hi 14:35:46 * abadger1999 blearily rubs his eyes. 14:35:47 good morning abadger1999! :) 14:35:52 which timezone are you located in? 14:36:28 US Pacific Time, I think UTC -8, but daylight savings always confuses me :-) 14:36:56 ok, so -10 hours from here :) 14:37:02 early indeed 14:38:30 shall we start with the changelog question? or shall we start with felixfontein's PR and let you get a cup of coffee abadger1999? 14:38:44 I am okay for whatever :-) 14:39:26 let's start from the top then 14:39:45 #topic release notes and changelogs for ACD 14:40:06 #link https://github.com/ansible-collections/overview/issues/18#issuecomment-613036927 14:40:10 * relrod shows up 14:40:16 So that's my summary so far 14:40:18 thanks samccann for publicizing the question and bringing in so much feedback 14:40:21 hi relrod !! 14:40:28 #chair relrod 14:40:28 Current chairs: acozine felixfontein relrod samccann 14:40:34 hi relrod! 14:40:46 * acozine keeps fatfingering that as "rhelrod" 14:40:47 We still hope to get some more collection owners to give their feedback 14:40:52 HAHAHAH 14:40:53 RHELrod? 14:40:57 exactly 14:40:59 indeed 14:41:20 apparently words that being with r must be RHEL-related 14:41:32 s/being/begin 14:41:43 * acozine stops typing so she can reboot her fingers 14:42:01 So on the changelogs... we are balancing the needs of collection owners, ACD, and collection users in our list of options 14:42:42 so far the responses are heavy on the first two, but not so much on the users. I'm guessing the final comment is from a collection user (or potential collection user perspective anyway) 14:43:11 Existing responses lean toward #2 - recommend the ansible/ansible approach, but allow the collection owner to do what they want on individual collection changelogs 14:43:31 One clarification: "The collection owner can also use any tool they want (reno, towncrier, etc), but need to provide a per-collection changelog file that matches the current format of ansible/ansible changelogs." The format they'd need to provide would be a new format, not the current format. 14:43:33 if they use something like reno, we recommend they reformat to match ansible/ansible (or whatever our final format is) 14:43:39 I don't mind a long list when it is grouped by collection, so I can skip the collections I don't use 14:44:13 and if they don't do either (not ansible/ansible or not our new format) then at best they get a link to whatever they have 14:44:15 ansible/ansible would be more option 3 14:44:19 I'm not even sure the link is possible 14:44:41 felixfontein - #2 had more votes than #3 for sure. 14:44:44 they need to have something we can link to, of course 14:45:02 samccann: yes, but #3 is more what ansible/ansible has now; #2 is ansible/ansible with new combined format 14:45:08 That gets us down to 'what can we REQUIRE for ACD collections" 14:45:43 felixfontein okay I can clarify my summary to say ansible/ansible wit ha new combined format to make it cleaerier 14:46:04 hmmm, having something we can link to may be a problem 14:46:15 but for ACD - can we/should we REQUIRE the collection to provide either the matching format, or a fixed location we link to? 14:46:22 agreed acozine 14:46:47 can we assume that every collection will publish a changelog somewhere? 14:46:49 I think that would be a reasonable requirement 14:47:02 I'm thinking of certified collections, where they have their own entire docsite somewhere. They won't want to have to take an extra step to put a file in some fixed location. 14:47:13 in the "worst" case they could have a .md/.txt/.rst file in their github repository and link to that 14:47:18 Yeah I think it sounds fair to require that 14:47:54 again, i worry about those certified folks with their own docsite. They may not even have a publicly available github repo 14:48:01 that's true, I expect any collection that keeps its sourcecode in a private location will run a docsite somewhere 14:48:07 I have lost the plot on all that tho 14:48:45 yeah so they may not have a public place to put a changelog, but they would have say a release note on their own docsite that they'd want to include perhaps in ACD's changelog or something like that 14:49:25 I see two approaches here: 14:50:16 1 - we have a manual 'fallback' where if we can't find a changelog in the expected location to link to, we allow manual edits to the ACD changelog file (maybe an included fragment) that the collection owner can manually edit to add their link to it 14:50:18 or 14:50:36 2. we allow holes. You don't follow the recommended approach, you no get any thing in the ACD changelog 14:50:59 Note that an external link will likely get somewhat skewed. 14:51:10 can you explain further? 14:51:14 I'm for 2., since I think the assumption that they can publish a changelog *somewhere* is really very easy to fulfill 14:51:56 (ACD ships version 1.x but the latest upstream collection is 3.1.4.... the changelog link will likely have details of 3.1.4.... hopefully in addition to 1.x) 14:52:37 the link in ACD could have some text: "previous vresion of ACD had 1.x, the new version is 3.1.4, here's the link" 14:52:39 abadger1999 ah gotcha. Yeah the link would need to be to the changelog or whatever that matches what is in ACD. 14:53:12 If they need to have a link to the same version as ACD, that will avoid version skew but it means we'll need to update the links with every ACD release which might be difficult to coordinate. 14:54:16 yeah I think that depends on the number of collections not following the recommended approach. I think ACD was up around 50+ collections right? And the number that are under direct control of ansible team folks is quite smaller (we'll say 10-15?) 14:54:45 true, but ansible team controls the largest ones :) 14:54:49 But again, part of the collection move was to make it so that the core ansible team isn't responsible for everyone's everything right? 14:54:53 heh 14:54:57 Yeah, your numbers are correct 14:55:08 Yep. 14:55:28 So if we assume we aren't responsible for the quality of what is in ACD, that would extend to the quality of changelog info etc, right? 14:55:48 Just listing the pros and cons for each approach so we're not surprised by the final outcome :-) 14:55:53 Yeah. 14:55:58 i'm leading myself down the path of we provide a way to do things well, and some kind of fallback (manual edits to add their links) if they don't do it well 14:56:03 and live with the results 14:56:32 and I need to catch up on meeting minutes notes here... 14:56:50 and the worst fallback would be "sorry, we have no changelog for collection xxx" 14:57:19 #info survey so far leads to #2 option, with a fallback to manual links added to the ACD changelog for those collections who don't have the changelog in a fixed location we could link to programmatically 14:57:49 #info Still hoping to gather some more feedback from collection owners 14:58:43 #info #2 option includes a new combined format, so will be an update to what ansible/ansible provided in 2.9 (and possibly what ansible-base would have for 2.10+) 14:59:36 #info any links added to ACD should be for the collection version in ACD, not the latest collection version, which could be more recent 14:59:42 ok think I got most of it 15:01:02 #info and the final fallback - no link at all if the collection owner doesn't follow the recommended approach, doesn't provide a link in a programmatically retrievable fixed location, and doesn't manually add their link to the ACD changelog (perhaps in a separate manual link file). 15:01:10 phew 15:01:43 about providing ansible's internal tool: I'm not sure whether it makes sense to package it with ansible itself (like ansible-test). should it be its own package? 15:02:26 hmm a collection developer needs ansible anyway... so perhaps the ansible-test approach is best? 15:03:41 but a Ansible user really doesn't need it 15:03:47 From a collection owner's perspective: I can provide changelog fragments in the ansible/ansible format, which get automatically amalgamated and published in the ACD changelog. If I don't want to do that, I can provide the output of my changelog process in a defined format, which gets automatically published in the ACD changelog. If I don't want to do that either, I can provide a link to my changelog, wherever I publish it (including 15:03:47 GitHub). And if I don't do any of the above, ACD shows a "no entry available" for my collection in the changelog. 15:04:12 acozine: sounds like a good summary! 15:04:13 ansible/ansible has been cutting down on the number of committers to the repo... it might make the most sense that both ansible-test and the changelog tool belong outside of the ansible repo. 15:04:47 (but the changelog generator will be easier to extract... it's just a few python files which do not depend on the ansible code) 15:04:49 From a collection user's perspective: I see a changelog that includes some detailed entries, some links to external resources, and some "no entry available" lines. 15:04:57 #info From a collection owner's perspective: I can provide changelog fragments in the ansible/ansible format, which get automatically amalgamated and published in the ACD changelog. If I don't want to do that, I can provide the output of my changelog process in a defined format, which gets automatically published in the ACD changelog. 15:04:57 abadger1999: ansible-test is more closely coupled to the ansible-base version itself, so it makes also sense to keep it in ansible/ansible 15:05:00 #info If I don't want to do that either, I can provide a link to my changelog, wherever I publish it (including GitHub). And if I don't do any of the above, ACD shows a "no entry available" for my collection in the changelog. 15:05:50 this is Ansible's changelog generator: https://github.com/ansible/ansible/blob/devel/packaging/release/changelogs/changelog.py 15:06:08 #Topic how to extract ansible changelog generator 15:06:22 #info this is Ansible's changelog generator: https://github.com/ansible/ansible/blob/devel/packaging/release/changelogs/changelog.py 15:07:14 I guess I would like to hear from more users. As a user, how helpful is it to have a mixture of links and detailed entries? 15:07:21 #info this should most likely be pulled out of ansible-base into its own package 15:07:48 acozine can we cover that next after the package discussion (aka the ACD changelog flow) 15:09:19 anything else we should discuss about potentially pulling the ansible changelog stuff into its own package? Anything bad about having a separate package to mantain etc? 15:09:58 samccann: sounds good 15:10:58 hmmm seems like this was a conversation killer eh? :-) 15:11:07 heh 15:11:26 I guess putting it into a separate package would be ok 15:11:45 no idea if the core team has something against that :) 15:12:26 Well, rather than trying to solve it today, perhaps those of you 'in the know' (aka felixfontein abadger1999 relrod ) can think Deep Thoughts about it over the next few days and post here as/when you have ideas on this one 15:12:45 thinking about it from the user's point of view, is creating a framework/pipeline to amalgamate the changelogs worth the investment, if we allow collection owners to opt out? 15:13:16 #info - continue the to package or not to package discussion next week 15:13:28 #Topic ACD Changelog usability 15:13:29 15:13:34 well, there's always the problem that we have to provide a changelog for community.general and community.network anyway, so we have to do *something* 15:14:03 heh, that's true 15:14:15 So are we talking about how the ACD would flow? Like say 20 of the collections have the full info, and the other 20+ have links, and the final 10 have nothing? 15:14:17 I guess the additional step of adding the container format won't be that much more work. or at least I hope so :) 15:14:54 felixfontein: at my previous job, we had a team rule . . . anybody who said a certain chunk of work "should be easy" was automatically assigned that ticket 15:15:13 I was just about to say the same thing haha acozine 15:16:12 maybe we should approach this in a more agile-development way 15:16:20 #chair thedoubl3j 15:16:20 Current chairs: acozine felixfontein relrod samccann thedoubl3j 15:16:27 @samccann In a similar vein to mixing links and full info would be whether to have each collection included as a separate section or interspersed together somehow. 15:16:30 acozine: lol 15:16:36 I don't mind working on that :) 15:16:45 excellent! 15:16:53 Hi 15:17:01 #chair gundalow 15:17:01 Current chairs: acozine felixfontein gundalow relrod samccann thedoubl3j 15:17:07 * gundalow waves 15:17:07 right now I'm mostly waiting for reviews anyway, I've created too many PRs apparently... 15:17:12 * acozine waves at and welcomes newcomers 15:17:36 yeah abadger1999 agreed . I think it depends on how many collections the 'average' user would care about 15:18:06 i'm thinking an alphabetical list of collection sections in ACD, and then whatever detail we have is put under that section 15:18:15 maybe we can solve the collection-level problem using the community.general collection as a guinea pig, and once that is finished and working, we can at least provide a list of links in ACD 15:18:18 But it becomes abit of a hodgepodge to look at 15:18:40 wouldn't communit.general be one collection with one link? 15:18:48 samccann: maybe a section per collection which provides a changelog in a usable format, and one section with links for the remaining ones? 15:19:31 samccann: yes 15:20:09 but it's a small chunk of work we could start with, and then extend 15:20:22 #info options for ACD output - a section per collection and whatever we have available in that section (changelog in usable format or a link or nothing). Alternately, we could leave all the links to an end section. That would work better for allowing manual link additions 15:20:25 and see what the changelog actually looks like 15:21:05 ah gotcha acozine. My guess is some of the network collections will rev soon as well so will want/need changelogs 15:21:16 Maybe two collections would be good... then you can see what they look like if added sequentially and whether you'd want them interpsersed instead. 15:21:45 abadger1999: sounds like a good approach 15:22:24 I like the idea of doing a mockup (starting with the end result) 15:22:34 community.network and community.general both have a few changelog fragments already 15:22:36 #info we could try out the output options on community.general and/or some of the network collections that may have changelog need before ACD releases. 15:22:37 and zero scripts 15:22:41 (I added the existing ones from ansible/ansible for 2.10) 15:22:44 felixfontein: I can't remember exactly what you volunteered (voluntold?) for, are you willing to take a look at that work? 15:22:55 ooo I like that idea gundalow ! 15:23:18 #agreed try a manual mockup of what we want the end result ACD to look like and review that 15:23:26 I'll play around with the changelog tool from ansible/ansible, to see whether I can get it to work with community.general and community.network 15:23:49 #action felixfontein play around with the changelog tool from ansible/ansible, to see whether I can get it to work with community.general and community.network 15:23:54 To be clear, I mean copy-paste a few lines from changelog/fragements into an RST file (no Python required) 15:23:57 felixfontein: awesome, thank you! 15:24:15 gundalow: we can work on that in parallel with the collection-level work 15:24:17 yeah understood that gundalow 15:24:29 :) 15:24:40 though I have to toss in here - CAN it be rst? 15:24:50 if it's rst, galaxy/AH can't display it in the UI 15:25:07 if it's .md - dunno what we can do in sphinx land to display it. 15:25:08 Galaxy has no way to display it in the UI anyway 15:25:15 we could convert the result form .rst to .html, galaxy can hopefully handle that 15:25:19 not today but AH definitly will 15:25:40 the only thing we know AH can handle is md 15:25:41 relrod mentioned pandoc being a tool to convert. 15:25:56 if we decide anything different, we run the risk of AH not displaying it... ever 15:25:56 felixfontein: If you need a hand looking at the changelog tool, feel free to ping me. 15:26:04 I guess we can add Galaxy/AH as destinations for the docs build 15:26:05 relrod: will do! 15:26:05 rst is probably the better input format to a tool; I think it has more information built into the structure. 15:26:23 (if we do need both) 15:26:23 and markdown has too many dialects :D 15:26:32 yeah, rst is more clearly defined 15:26:43 than markdown 15:26:53 and yeah, pandoc can convert between tons of formats. It might be a bit heavy but might be useful here. 15:27:32 here's the thing though - galaxy/AH is not likely going to include pandoc to convert our .rst changelogs per collection into md 15:28:01 that's true, but if we publish them on docs.ansible.com, do they need to be in Galaxy/AH also? 15:28:21 so do we want Galaxy/AH to be able to display changelogs, or do we just say 'collection owner - you should include a link in your README to find the changelogs' and then it doesn't matter what format it is 15:28:39 samccann: I guess we can convert the resulting .rst file to markdown 15:28:40 I personally feel at the very least, a link has to be in Galaxy/AH 15:28:58 (or at least try) 15:29:06 no idea how terrible the result will be :) 15:29:28 I would 'like' as a user that galaxy/ah eventually displays something higher level (like a release note or porting guide type information) so it is right there at the collection user's fingertips 15:30:03 I think adding a link to the changelog in Galaxy/AH would be great, and displaying a more useful release note or porting guide there would be even better 15:30:14 keeping in mind that collections change faster than ACD so users may want to get the latest collection from galaxy and would want and need some level of info on 'what's changed' 15:30:40 but I don't want to block work on the current problem for something that Galaxy/AH can't currently display at all 15:30:42 anyway not a decisin we have to make today 15:30:59 that's something I disagree with, but we can take it up later :-) 15:31:21 meanwhile I hogged the whole meeting and we didn't get to felixfontein's pr 15:31:44 it has only been one hour yet ;) 15:31:44 do you want to grab that now? or take it up maybe tomorrow at a convenient time here? not sure what your timezone is 15:31:47 samccann: ah, interesting, let's have a discussion about that for sure! 15:32:03 felixfontein: heh, you're going for a new DaWGs record? 15:32:06 I'm around for a bit longer 15:32:16 acozine: I hope not, that one meeting was long enough ;) 15:32:21 I think what we'd do with pandoc is have it run and generate a .md in addition to the tool we write generate files in a format that we can consume. 15:32:43 #info experiment with pandoc conversions 15:32:48 #topic Felix's PR 15:32:50 :-) 15:32:53 #link https://github.com/ansible/ansible/pull/68899 15:33:39 I haven't read it in detail yet, but overall it looks good 15:33:48 ooo gundalow has a great question in that - how DO we want to refer to ansible/ansible now? 15:33:48 I see a few words I might change 15:34:07 ah, that is a good question 15:34:26 I lean towards the phrase "the ansible/ansible repo", especially in developer docs 15:34:36 it's a mouthful though 15:34:44 true 15:34:49 I'd love to be able to call it 'ansible-base' but I think we'd need marketing approval. 15:34:54 `ansible-base` repo? 15:35:02 hum, though it's not called gh/ansible/ansible-base 15:35:06 exactly 15:35:07 I'd probably make it "the `ansible/ansible repo `_" 15:35:07 that suggests that's the name of the repo, yeah 15:35:35 gundalow - who could approve a decision like this - to call ansible/ansible 'ansible-base' in docs, presentations, etc 15:35:40 Ƭ̵̬̊. 15:35:43 so far we have not used "Ansible Base" anywhere that I'm aware of 15:35:47 cuz we should all use the same term, and ansible/ansible is long 15:36:05 acozine: we can discuss that internally 15:36:29 kewl 15:36:51 So far seems nothing but some suggested edits coming for this PR 15:36:55 felixfontein: I'll review your PR in detail today 15:37:22 I'll probably suggest changing `Hacking Collections`, since "hacking" has some connotations we probably want to avoid 15:37:30 acozine: cool, thanks! 15:37:37 as a bit of feedback - we use Sentence case for all but the top-level headings. So `Integration Tests` should be `Integration tests` for example. Just an fyi 15:37:38 hehe :) just suggest something different ;) 15:37:59 #action acozine to review the PR later today 15:38:15 meanwhile thank you for documenting the testing process for collections! 15:38:21 this is great information to include 15:38:57 we may have to publish samccann's "module docs are under construction" banner so we can get this content published 15:39:16 questions about that have popped up, and so far there was nothing to link to which doesn't require some knowledge about how stuff works or worked 15:39:35 very true 15:39:48 all right, we're 10 minutes over 15:40:10 we'll do a very, very quick open floor 15:40:14 #topic open floor 15:40:35 does anyone have something they want to bring up? 15:40:41 PR that needs a review? 15:40:48 urgent issue we need to address? 15:41:06 preview of a topic we can cover in more detail next week? 15:41:19 question or request for help? 15:42:03 As always, anyone can set an agenda item by adding a comment to https://github.com/ansible/community/issues/521 15:42:22 all right, I think that's it for today 15:43:05 thanks everyone! 15:43:11 thanks samccann felixfontein abadger1999 gundalow relrod thedoubl3j and everyone who followed along at home! 15:43:17 #endmeeting