Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CLA Plugin: Add support for EasyCLA #22721

Closed
mrbobbytables opened this issue Jun 28, 2021 · 14 comments
Closed

CLA Plugin: Add support for EasyCLA #22721

mrbobbytables opened this issue Jun 28, 2021 · 14 comments
Assignees
Labels
area/prow/plugins Issues or PRs related to prow's plugins for the hook component area/prow Issues or PRs related to prow kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/contributor-experience Categorizes an issue or PR as relevant to SIG Contributor Experience. sig/testing Categorizes an issue or PR as relevant to SIG Testing.
Milestone

Comments

@mrbobbytables
Copy link
Member

What would you like to be added:

Add support to the CLA Plugin for EasyCLA.

ref: kubernetes/org#2778

Why is this needed:
The LF plans to deprecate the current CLA service used by the project. They would like to migrate us off the old plugin by the 2nd week of August. They are handling the migration of the user databases, but if we want our labels to reflect the state of the cla, the plugin will have to support the EasyCLA context.

For migration purposes it'd be great if it could support both the current CLA and the future one in case there is a need to back out of the migration on their side.

Example EasyCLA status:
https://api.github.com/repos/CNCF-EasyCLAV2-Test/Repository1/statuses/31eb937fb47d258b060a762165f293de6f99d191


/priority important-soon
/sig contributor-experience testing

@mrbobbytables mrbobbytables added the kind/feature Categorizes issue or PR as related to a new feature. label Jun 28, 2021
@k8s-ci-robot k8s-ci-robot added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/contributor-experience Categorizes an issue or PR as relevant to SIG Contributor Experience. sig/testing Categorizes an issue or PR as relevant to SIG Testing. labels Jun 28, 2021
@BenTheElder BenTheElder added area/prow Issues or PRs related to prow area/prow/plugins Issues or PRs related to prow's plugins for the hook component labels Jun 28, 2021
@BenTheElder
Copy link
Member

BenTheElder commented Jun 28, 2021

@k8s-ci-robot k8s-ci-robot added the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Jun 28, 2021
@anusha94
Copy link
Contributor

/assign anusha94

@MadhavJivrajani
Copy link
Contributor

/assign @anusha94

@mrbobbytables mrbobbytables added this to the v1.22 milestone Jul 1, 2021
@spiffxp spiffxp added this to Help Wanted in sig-testing issues Jul 27, 2021
@spiffxp
Copy link
Member

spiffxp commented Jul 27, 2021

/remove-help
Since this has been taken on by @MadhavJivrajani

@k8s-ci-robot k8s-ci-robot removed the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Jul 27, 2021
@spiffxp spiffxp moved this from Help Wanted to In Progress in sig-testing issues Jul 27, 2021
@spiffxp
Copy link
Member

spiffxp commented Jul 27, 2021

/milestone clear

@k8s-ci-robot k8s-ci-robot removed this from the v1.22 milestone Jul 27, 2021
@spiffxp
Copy link
Member

spiffxp commented Aug 10, 2021

/milestone v1.23

@k8s-ci-robot k8s-ci-robot added this to the v1.23 milestone Aug 10, 2021
@spiffxp
Copy link
Member

spiffxp commented Sep 20, 2021

What is left to do before we can call this done?

@spiffxp spiffxp moved this from In Progress to Blocked in sig-testing issues Sep 20, 2021
@mrbobbytables
Copy link
Member Author

This is what I see at the moment as the current plan of action (please update if there is something else that should be done)

  1. Enable EasyCLA as non-blocking org wide (accompanied by comms, was thinking of this/next week)
  2. Assuming no issues are reported, we pick a date not near any important milestone to coordinate the cut-over date. (thinking mid-october plenty of time before freeze, or right after freeze)
  3. Three options for cut-over:
    1. Instruct everyone that they may need to refresh CLA status for their open PRs (easiest)
    2. Script hitting open PRs to refresh CLA status (moderate, IIRC @spiffxp / @cblecker you mentioned doing something like this in the past)
    3. Ensure functionality supporting both contexts is in place (Add support for EasyCLA #22742 - would need to be revisited)
  4. On date of cut-over, CNCF performs a final sync and we flip to using the EasyCLA context instead of cla/LinuxFoundation (assuming we can't support both). If there is an issue, we revert to the old system. Anyone that signed up after cut over may have to sign the old CLA.

Potential issue:

  • Mixed messaging regarding refreshing CLA status - Our tooling has its own message and command (/check-cla), EasyCLA has its own messaging and command (/easycla). I have an inquiry out with the LF about this.

@mrbobbytables
Copy link
Member Author

Update from LF, they have no way of independently triggering a recheck of a PR outside of an event that refreshes the status (e.g. new commit), or using /easycla.

It means that at the moment, a person would need to use both /easycla and /check-cla to refresh both systems, e.g. after finding they don't have a CLA, sign it and then go back to refresh.

@mrbobbytables
Copy link
Member Author

After discussion in today's GitHub management meeting, the potential problems between /easycla and /check-cla is a non-issue, the cla check should be fired automatically on any comment or update to the PR. The plan will now be:

  1. Enable EasyCLA as non-blocking org wide next week (accompanied by comms)
  2. Assuming no issues are reported, we cut-over after code freeze (Nov 16th). This means updating the current CLA plugin to look for EasyCLA instead of cla/linuxfoundation, removing our help text, and potentially updating it to also look for /easycla in the comments. The LF will also perform their final sync of the DBs between systems.
  3. Given the time, most PRs should be updated with an EasyCLA status. We script hitting open PRs to refresh CLA status on the remaining PRs.

If there is an issue, we revert to the old system. Anyone that signed up after cut over may have to sign the old CLA.

@spiffxp
Copy link
Member

spiffxp commented Nov 24, 2021

/milestone v1.24

@k8s-ci-robot k8s-ci-robot modified the milestones: v1.23, v1.24 Nov 24, 2021
@spiffxp
Copy link
Member

spiffxp commented Nov 24, 2021

The issue we're using to collect feedback on EasyCLA now that it's been enabled non-blocking: kubernetes/org#3068

@MadhavJivrajani
Copy link
Contributor

MadhavJivrajani commented Jan 12, 2022

/unassign @anusha94
(after speaking to Anusha)
/assign

@mrbobbytables
Copy link
Member Author

We have migrated over 👍

Going to go ahead and close this out

sig-testing issues automation moved this from Blocked to Done Feb 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/prow/plugins Issues or PRs related to prow's plugins for the hook component area/prow Issues or PRs related to prow kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/contributor-experience Categorizes an issue or PR as relevant to SIG Contributor Experience. sig/testing Categorizes an issue or PR as relevant to SIG Testing.
Projects
Development

Successfully merging a pull request may close this issue.

6 participants