sig-release
sig-release copied to clipboard
add hack/sync-enhancements-github-project-beta.sh
What type of PR is this:
/kind feature
What this PR does / why we need it:
The PR adds a script called hack/sync-enhancements-github-project-beta.sh.
This script will be run as part of a periodic Prow Job that will sync all open KEP issues from the k/enhancements repository under a current release milestone (say v1.25) to an Enhancements GitHub Project Beta board (similar to https://github.com/orgs/kubernetes/projects/87).
Limitations/assumptions:
As of the time of writing, there is no GitHub project beta api endpoint available for ~creating a project~[1] (and its columns and views) using github cli (gh). Only existing project field mutations are possible. Hence the following assumptions are made:
- The script expects that a GitHub Project Beta board has previously been created with at least the column fields (
Issue Number&KEP) existing under thekubernetesorganisation. - The script expects receiving the above project number from the environment variable
GITHUB_PROJECT_BETA NUMBER.
Update (July 22, 2022 [1] api for creating v2 project: mutations#createprojectv2
Which issue(s) this PR fixes:
Part of https://github.com/kubernetes/community/issues/6735
cc: @helayoty, @kubernetes/release-team-leads, @reylejano
FYI: The GitHub Project Beta board does not currently allow cloning/duplicating an existing project, which might be a blocker cc: @mrbobbytables
The plan is, with each new release cycle, the lead simply clone/duplicate the previous release cycle's project board and update the periodic Prow Job with the cloned new Project number and the then current "release milestone".
Without the option to clone/duplicate a project, each release cycle requires manually creating the project and adding all columns (respective data validations) and different views, which takes quite a lot of time.
Open to discussion, if we can come up some better approach. Thank you!
FYI: The GitHub Project Beta board does not currently allow cloning/duplicating an existing project, which might be a blocker
IMO - I don't think its a blocker, its a bit of administrative overhead, yes but not massive. We may wind up iterating on how the boards are used as more functionality is added as well.
Also a side note while testing, I was prompted to login via gh auth login or adding Github token. The first option doesn't work because I can't authorize for project using it so you gotta add the environment variable.
@gracenng @marosset I have reworked the script to filter k/enhancements issue by the label "lead-opted-in".
(Have tested it here https://github.com/orgs/kubernetes/projects/87/views/1)
PTAL. Thank you!
Once this script is merged, will do a quick revamp of the https://github.com/kubernetes/test-infra/pull/26812 to have the periodic script run in place.
@mrbobbytables appreciate if we can merge the PR to help the release team automate the Enhancement GH project :)
Thanks for updating @Priyankasaggu11929.
/lgtm
/approve
[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leonardpahlke, Priyankasaggu11929
The full list of commands accepted by this bot can be found here.
The pull request process is described here
- ~~release-team/OWNERS~~ [leonardpahlke]
Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment