Conversation
The board's minutes are published as text and have been read through whimsy's renderer ever since. Those pages are now generated from the same record by the Board Agenda Tool and committed to SVN beside calendar.md - one page per meeting, one page per committee, and an index over both - so the website can serve them itself rather than pointing at another host. This is the wiring only, and it is deliberately the same arrangement calendar.md already uses: a script in setup.run exports the markdown from SVN before the build, Pelican renders it with everything else, and the output is gitignored because it is generated rather than written. Absent is not an error. The tool writes these pages only once it is configured to, and that is thrown after this wiring exists - so there is a window where the SVN directory is not there yet, and failing hard would break every build of the whole site over a directory nothing serves from. It logs and carries on. The minutes text itself is not moved here yet. Those files live under /foundation/records/minutes/ and are proxied to svn.apache.org by content/foundation/records/.htaccess; bringing them alongside the rendered pages, and retiring that proxy, is a second pass. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01L6te4U8EufoXpmYjCaRB16
|
I would like @Paul-TT to review this when he gets back from paternity leave. |
@bproffitt When will @Paul-TT return from leave? Could @loganloganlogan check if this won't be soon? |
|
The agenda side is not ready. So there's still things to do. |
From Sander:
You can login and the pages are simulated. https://agenda-dev.apache.org/minutes-pages/raw/minutes/index.md - the generated markdown as written |
|
I can now, I just got access a little bit ago. |
|
Thanks @bproffitt. We'll mark the PR as ready as soon as the data side lands from the agenda tool. Please let us know if you are ok with integrating the minutes in this way into the main site. Styling/layout improvements can always be made. |
|
I am definitely okay with integrating the minutes into the main site like this. |
Replaces #714, on a
preview/branch so.asf.yaml'sautobuild: preview/*andautostage: preview/*pick it up and the change can be seen built rather than reasoned abouthence a new number; same commit,
aac62e0.What this does
Renders the board's minutes as pages of this site, using the same arrangement
calendar.mdalready uses: a script in
setup.runexports markdown from SVN before the build, Pelican rendersit with everything else, and the output is gitignored because it is generated rather than written.
get_minutes.shget_calendar.shpelicanconf.yamlsetup.run.gitignorecontent/foundation/board/minutes/, next to the existingcalendar.mdentryThe pages are generated from the published minutes by the Board Agenda Tool
(apache/tooling-agenda#54) and committed to
SVN beside
calendar.md. There are three kinds, all under/foundation/board/minutes/:Today those two views are served by whimsy, at
/board_minutes/<year>/...and/board/minutes/<Name>.html. The generating side reproduces whimsy's filenames and anchorsexactly, because www.apache.org already links to them by name, and it emits a matching
.htaccessof redirects so every URL whimsy serves keeps working. That is what lets whimsy beretired rather than kept alongside.
Absent is not an error
svn lsfirst, and skip with a message if the directory is not there.The tool writes these pages only once it is configured to, and that switch is thrown after this
wiring exists - otherwise it would be publishing into a site that does not render them. So there
is a window, starting when this merges, where the SVN path does not exist yet. A bare
svn exportwould exit non-zero for the whole build over a directory nothing is serving from.Verified both ways against the real SVN: the skip path exits 0 today, and
svn exportof anexisting path creates the directory named for the final URL segment, which is what puts the pages
at
content/foundation/board/minutes/.shellcheckis clean.Not in this PR
The minutes text stays where it is.
/foundation/records/minutes/is proxied tosvn.apache.org by
content/foundation/records/.htaccess, and this changes nothing about that -the rendered pages link out to it as they do now.
Bringing the
.txtalongside the rendered pages and retiring that proxy is a second pass. Twothings to know when it happens:
.htaccesscovers all of/foundation/records/, including the IRS 990 PDFs, so it cannotsimply be deleted
/foundation/records/minuteswithout a trailing slash currently 301s to svn.apache.org,because the proxied backend issues its own
DirectorySlashredirect and nothing rewrites itback - so the hostname leaks into the address bar today
Draft
Draft until the generating side lands. Nothing here serves anything until the tool is switched on
to publish, so merging it early is safe - but reviewing it against the pages it will render is
easier once those exist.