Needed:
Helping:
Informed:
/sig docs
/sig contributor-experience
/sig architecture
git bisect
against k/k to work out this kind of detail/area enhancements
@LappleApple I am interested in this. Please ping me on Slack.
A site designed after the PEP page will fulfill most of the transparency requirements. The one additional feature we'll eventually need that PEP doesn't have is to have lists of:
Copying the PEP page would be a good first step, though, and way more accessible than what we have now.
Some user stories drafted in June 2020 for KEPs tooling, based on Make KEPs Transparent and misc. conversations:
Hi @LappleApple .
I may have some time to pitch in with the templating piece.
OK, here's a mockup of a future https://k8s.dev/resources/enhancements/:
What do we need to render that? The minimum is that for each KEP we have a bit of metadata.
For the mockup the minimum you need is like this:
path: "/keps/sig-contributor-experience/1553-issue-triage"
title: Issue Triage Workflow and Automation
kep-number: 1553
or
title: Implement maxUnavailable for StatefulSets
path: "/keps/sig-apps/20190226-maxunavailable-for-statefulsets.md"
(you _don't_ need a KEP number - but not having it makes them hard to sort!)
If those files end up in data/generated/enhancements
before site build, the mockup adds them to the KEP list.
https://github.com/kubernetes-sigs/contributor-site/compare/master...sftim:20201017_kep_list_mockup shows the Hugo & Markdown changes I made for the mockup.
How it could work:
title
and path
are availableQuestions about that mockup?
I'd go the table formatting route, but we should be able to get at a minimum from the metadata:
Once the enhancement structure is in place, we can get the kep # (and associated tracking issue).
I'm thinking to GitHub Pages
GitHub pages would require an additional commit any time a kep is updated =/ I think we could provision a gcs bucket and dump the content there as a postsubmit job.
@sftim -- that mockup looks great.
I have a few ideas that I was experimenting with related to preparing the data for the website.
One question I had though, do the KEP markdown files need to have certain Hugo metadata in order to be rendered by Hugo during the site generation phae?
I think we could provision a gcs bucket and dump the content there as a postsubmit job.
@mrbobbytables -- Putting the JSON into a GCS bucket sounds great. 👍🏽
I will get back with more updates by next Monday as I don't have free cycles to work on this during the work week. :(
One question I had though, do the KEP markdown files need to have certain Hugo metadata in order to be rendered by Hugo during the site generation phae?
We don't want to render the keps themselves in hugo (at this point). We do want to provide a list of them from a single page.
As someone that spent many hours trying to fix rendering of them in hugo (the original goal of the contrib site was to list keps). It very much is not a path forward without significant effort in fixing paths, links and more. =/
We don't want to render the keps themselves in hugo (at this point). We do want to provide a list of them from a single page.
Okay. That clears the doubt. Thank you! 😃
provision a gcs bucket and dump the content there as a postsubmit job
Something I've thought of doing as a place to dump generated JSON: use the repo wiki (which is actually a Git repo), and have the GitHub Action update a JSON file in that repo every time someone merges to the main branch in the main repo.
Depends what we think about GitHub Actions though!
:eyes:
Hi. I don't know whether you need more help.
Do you have a program to create the Markdown files from the KEP data?
I'd like to see what a list of KEPs looks like. Is there an existing site?
Hi everyone :wave:, I was experimenting with a change in kepctl
to output the list of KEPs in YAML/JSON. My changes are in this tree and I shared a sample output here.
Broadly, the tasks to complete this look like the following:
kepctl query
be able to output YAML/JSON, say keps.yaml
. (#2139)kubernetes-enhancements-artifacts
) to store the keps.yaml
.keps.yaml
which is public information.kubernetes/enhancements
to generate the keps.yaml
after every merge to master
and upload the same to the kubernetes-enhancements-artifacts
GCS bucket.kubernetes-sigs/contributor-site
which will get populated at build time by the contents of keps.yaml
.kubernetes-sigs/contributor-site
to rebuild the website.Let me know what do you think of the plan.
Hello @palnabarun .
Do you want to publish/republish the "chart" to the contributor site every time keps.yaml is changed or
could you batch the updates (small changes)?
How often during a release is this data updated? Does the information remain on the contributor site after the release?
Do you plan on showing historical data from previous releases?
BTW I looked again and JSON is going to be easier to work with with YAML, for the Kubernetes contributor website.