Closed LappleApple closed 1 year ago
/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
.
This bucket should be writeable only by the workload in the next item. It may be read by anyone at the moment since the only thing we are storing at the moment is 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.
@kbhawkey
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)?
The contributor website can be published periodically.
How often during a release is this data updated?
The information is updated fairly frequently before the Enhancements Freeze kicks in during each release cycle.
Does the information remain on the contributor site after the release?
Yes. The plan was to have the listing permanent.
Do you plan on showing historical data from previous releases?
The scope of the ask right now is to just show all KEPs somewhere easily visible to whoever wants to see a summary. Tracking them through the releases can come in the next iterations.
@sftim
BTW I looked again and JSON is going to be easier to work with with YAML, for the Kubernetes contributor website.
The kepctl query
command supports JSON as well. So, you can use the exported JSON to test out things.
Can ⬆️📲
On Wed, Nov 25, 2020, 1:10 AM Nabarun Pal notifications@github.com wrote:
@kbhawkey https://github.com/kbhawkey
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)?
The contributor website can be published periodically.
How often during a release is this data updated?
The information is updated fairly frequently before the Enhancements Freeze kicks in during each release cycle.
Does the information remain on the contributor site after the release?
Yes. The plan was to have the listing permanent.
Do you plan on showing historical data from previous releases?
The scope of the ask right now is to just show all KEPs somewhere easily visible to whoever wants to see a summary. Tracking them through the releases can come in the next iterations.
@sftim https://github.com/sftim
BTW I looked again and JSON is going to be easier to work with with YAML, for the Kubernetes contributor website.
The kepctl query command supports JSON as well. So, you can use the exported JSON to test out things.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/kubernetes/enhancements/issues/2095#issuecomment-733513286, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACR5HAQ33KNCMA7W64YFQJTSRSUVRANCNFSM4SMR7RZQ .
Next steps, based on conversation during Feb 2, 2021 Enhancements meeting:
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale
.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close
.
Send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale
If only we had a website, things like this would be easy ...
https://groups.google.com/g/kubernetes-sig-architecture/c/EDebihCHoOo/m/qARtjfMFBAAJ
@kubernetes/enhancements -- is anyone interested in jamming on this?
I tried some prototype:
To make easy to search KEPs and get the details in few clicks, we can have :
kepctl query
- whenever there is new KEP is merged, CI/CD tool can trigger it and store it in file.Trying to get familiar with current website to load data: https://github.com/kubernetes/website/tree/master/data
Loading data file in Hugo can be done using : https://gohugo.io/templates/data-templates/
I will try it out and update.
@justaugustus I am 10000% interested in jamming on this
Hi team,
I have started the first step towards KEP page in k8s.io/keps : https://github.com/kubernetes/website/pull/28295/
If any one want to contribute to it, feel free to commit on the branch. Let me know your suggestion/comments it is still work in progress.
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.
This bot triages issues and PRs according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
https://github.com/kubernetes/contributor-site/pull/222 is still in progress
It would be great to rally some help to get this over the line. /remove-lifecycle stale
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.
This bot triages issues and PRs according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.
This bot triages issues and PRs according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
Still worth doing, and there is (slow) progress. /remove-lifecycle stale
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.
This bot triages issues and PRs according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
/remove-lifecycle stale
/assign
Remaining Tasks:
Already There:
Periodic job to rebuild contributor-site
Have a look at https://github.com/kubernetes/contributor-site/blob/master/.github/workflows/netlify-periodic-build.yml - I think we already have this.
Have a look at https://github.com/kubernetes/contributor-site/blob/master/.github/workflows/netlify-periodic-build.yml - I think we already have this.
This is what I exactly wanted. Thanks @sftim for pointing to that!
We would need to increase the frequency of that job.
The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.
This bot triages issues and PRs according to the following rules:
lifecycle/stale
is appliedlifecycle/stale
was applied, lifecycle/rotten
is appliedlifecycle/rotten
was applied, the issue is closedYou can:
/remove-lifecycle stale
/lifecycle rotten
/close
Please send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale
@palnabarun is this now Implemented? Can we close the issue?
This issue documents the roadmap/plan for a key 1.20 process-related objective.
What Is the Website
Why Do We Need It
Who's Needed, Who's Helping, Who's Informed
Needed:
Helping:
Informed: /sig docs /sig contributor-experience /sig architecture
How Do We Get There: Implementation Steps and Notes
Related Action Item: Preparing for 1.21
Potential Next Iterations/Milestones
git bisect
against k/k to work out this kind of detail