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

governance, kubevirt, org: remove inactive users #3283

Merged

Conversation

dhiller
Copy link
Contributor

@dhiller dhiller commented Mar 1, 2024

What this PR does / why we need it:

Removes inactive users from the org.

Announcement to kubevirt-dev

Also adds a script that can be used to automate the process of removing
users from the org that have no contributions according to the input
file.

List of removed users:

AdamJ
adityaramteke
alonsadan
alosadagrande
andreyod
ArthurSens
ashleyschuett
bardielle
beanh66
beekhof
booxter
borod108
brybacki
crobinso
cynepco3hahue
danielBelenky
danielerez
dcritch
djzager
doron-fediuck
dshchedr
dteplits
duyanyan
eedri
e-minguez
erkanerol
ezrasilvera
fabiendupont
fedepaol
fgimenez
gabrielecerami
gbenhaim
gonzolino
gsr-shanks
guy9050
hritvi
hroyrh
humblenginr
ibesso-rh
idanshaby
ifireball
igoihman
ILpinto
InbarRose
iranzo
irosenzw
isaacdorfman
itamarh
jakub-dzon
jelkosz
j-griffith
jhernand
JinjunXiong
jniederm
jordigilh
jparrill
jtomasek
krsacme
kwiesmueller
lukas-bednar
lveyde
machacekondra
mansam
marceloamaral
mareklibra
MarSik
masayag
matosatti
matthewcarleton
maya-r
mazzystr
michalskrivanek
mlsorensen
mmazur
mmirecki
mshitrit
myakove
n1r1
nellyc
nelsonspbr
nertpinx
nirarg
ohadlevy
omeryahud
pcbailey
petrkotas
pkliczewski
ptrnull
qwang1
ravidbro
rawagner
razo7
rgolangh
rhrazdil
rnetser
rollandf
ronensdeor
sandrobonazzola
sarahbx
SchSeba
scollier
screeley44
serenamarie125
sgarbour
shiywang
shwetaap
simon3z
slintes
sreichar
stbenjam
stoniko
suomiy
tareqalayan
thetechnick
tomob
usrbinkat
vatsalparekh
vojtechszocs
xphyr
yanirq
yossisegev
yuhaohaoyu
yuvalif
yuvalturg
zcahana
zvikorn

Inactive members

Members are active contributors in the community.

A core principle in maintaining a healthy community is encouraging active
participation. It is inevitable that people's focuses will change over time and
they are not expected to be actively contributing forever.

However, being a member of the KubeVirt GitHub organization comes with
an elevated set of permissions. These capabilities should not be used by those
that are not familiar with the current state of the KubeVirt project.

Therefore members with an extended period away from the project with no activity
will be removed from the KubeVirt GitHub Organizations and will be required to
go through the org membership process again after re-familiarizing themselves
with the current state.

How inactivity is measured

Inactive members are defined as members of the KubeVirt Organization
with no contributions in any repository within 12 months. This is
measured by the CNCF DevStats project.

Note: Devstats does not take into account non-code contributions. If a
non-code contributing member is accidentally removed this way, they may open an
issue to quickly be re-instated.

After an extended period away from the project with no activity
those members would need to re-familiarize themselves with the current state
before being able to contribute effectively.

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

Special notes for your reviewer:

Checklist

This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

Release note:

chore: remove inactive members

@kubevirt-bot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@kubevirt-bot kubevirt-bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. labels Mar 1, 2024
@kubevirt-bot kubevirt-bot requested review from vladikr and xpivarc March 1, 2024 12:22
@fabiand
Copy link
Member

fabiand commented Mar 1, 2024

Thanks, this is a great idea!

+1

Cleanup, and if there is an impact,then rather add users again.

@dhiller dhiller marked this pull request as ready for review March 1, 2024 14:01
@kubevirt-bot kubevirt-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Mar 1, 2024
@kubevirt-bot kubevirt-bot requested a review from rmohr March 1, 2024 14:01
@dhiller
Copy link
Contributor Author

dhiller commented Mar 1, 2024

/cc @aburdenthehand

I think we should add a paragraph in the member_dd section that adds the things from the PR.

@dhiller
Copy link
Contributor Author

dhiller commented Mar 1, 2024

/cc @aburdenthehand

I think we should add a paragraph in the member_dd section that adds the things from the PR.

kubevirt/community#263

@dankenigsberg
Copy link
Member

+1
But imho we should make an effort to notify the inactive members.

FYI, @AdamJ @adityaramteke @alonSadan @alosadagrande @andreyod @ArthurSens @ashleyschuett @bardielle @beanh66 @beekhof @booxter @borod108 @brybacki @crobinso @cynepco3hahue @danielBelenky @danielerez @dcritch @djzager @doron-fediuck @dshchedr @dteplits @duyanyan @eedri @e-minguez @erkanerol @ezrasilvera @fabiendupont @fedepaol @fgimenez @gabrielecerami @gbenhaim @gonzolino @gsr-shanks @guy9050 @hritvi @hroyrh @humblenginr @ibesso-rh @idanshaby @ifireball @igoihman @ILpinto @InbarRose @iranzo @irosenzw @isaacdorfman @itamarh @jakub-dzon @jelkosz @j-griffith @jhernand @JinjunXiong @jniederm @jordigilh @jparrill @jtomasek @krsacme @kubevirt-commenter-bot @kwiesmueller @lukas-bednar @lveyde @machacekondra @mansam @marceloamaral @mareklibra @MarSik @masayag @matosatti @matthewcarleton @maya-r @mazzystr @michalskrivanek @mlsorensen @mmazur @mmirecki @mshitrit @myakove @n1r1 @nellyc @nelsonspbr @nertpinx @nirarg @ohadlevy @omeryahud @pcbailey @petrkotas @pkliczewski @ptrnull @qwang1 @ravidbro @rawagner @razo7 @rgolangh @rhrazdil @rnetser @rollandf @ronensdeor @sandrobonazzola @sarahbx @SchSeba @scollier @screeley44 @serenamarie125 @sgarbour @shiywang @shwetaap @simon3z @slintes @sreichar @stbenjam @stoniko @suomiy @tareqalayan @thetechnick @tomob @usrbinkat @vatsalparekh @vojtechszocs @xphyr @yanirq @yossisegev @yuhaohaoyu @yuvalif @yuvalturg @zcahana @zvikorn

@AdamJ
Copy link

AdamJ commented Mar 1, 2024

The last time I committed anything to the project was August 2020 (kubevirt.github.io) and have no issues with being removed based on the reasoning. If there is anything that I can contribute to I'd be happy to jump back in.

@ArthurSens
Copy link

Same thing here, I was made a member thanks to a mentorship I did back in 2020 with the kubevirt community and I haven't contributed since the mentorship ended. I have no issues with the removal

I appreciate your time @dhiller, @fabiand, @danielBelenky and the community for all the wisdom shared!

@dhiller
Copy link
Contributor Author

dhiller commented Mar 1, 2024

/hold need to fix the script removing the bot user

@kubevirt-bot kubevirt-bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 1, 2024
@dhiller dhiller force-pushed the remove-users-without-contributions branch from d7e694c to da6eb79 Compare March 1, 2024 15:56
@dhiller dhiller requested a review from brianmcarey March 1, 2024 15:58
@dhiller
Copy link
Contributor Author

dhiller commented Mar 1, 2024

/unhold

commenter-bot removal reverted

@kubevirt-bot kubevirt-bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 1, 2024
@booxter
Copy link
Contributor

booxter commented Mar 1, 2024

I don't think we need a confirmation from every member affected, since it's a reflection of reality, and no one should be offended by reality. :) But +1 just in case this may help to move the change forward. It makes sense for projects to keep their rosters current.

@kubevirt-bot kubevirt-bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Mar 1, 2024
@dhiller dhiller force-pushed the remove-users-without-contributions branch from da6eb79 to 9ef09a9 Compare March 2, 2024 17:33
@kubevirt-bot kubevirt-bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Mar 2, 2024
@dhiller
Copy link
Contributor Author

dhiller commented Mar 2, 2024

/release-note chore: remove inactive members

@dhiller
Copy link
Contributor Author

dhiller commented Mar 2, 2024

/release-note-edit chore: remove inactive members

Copy link
Member

@EdDev EdDev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is an awesome cleanup, thank you!

Note: Devstats does not take into account non-code contributions.

Does this mean that active reviewers or approves can still be removed?
I would expect active approvers not to be removed, even if they do not author PRs. They also have a dedicated removal policy which includes OWNER files changes.

BTW, what will happen to the members in the OWNERs files in the different projects and folders?

hack/remove-users-without-contributions.sh Show resolved Hide resolved
@aburdenthehand
Copy link
Member

This is really great, @dhiller. Thank you for putting this together. Similar to Dan's point, would it make sense for the script to @username in the PR description whenever it removes someone so that they are notified of the change?

Not sure about that. Since we have announced this move in an email to kubevirt-dev, wouldn't anyone who's still interested in staying in the org directly jump on the PR and complain?

Also - when I look at #3283 (comment) I see that only half of the usernames seem to have been recognized - and I faintly remember a similar issue when people were trying to do this for k8s in a similar fashion. (Would need to look that up though)

I'm more thinking over time, like in the in months/years to come when this script runs again and picks up more inactive people. Presumably then it would only be a couple at a time.

@dhiller
Copy link
Contributor Author

dhiller commented Mar 4, 2024

This is really great, @dhiller. Thank you for putting this together. Similar to Dan's point, would it make sense for the script to @username in the PR description whenever it removes someone so that they are notified of the change?

Not sure about that. Since we have announced this move in an email to kubevirt-dev, wouldn't anyone who's still interested in staying in the org directly jump on the PR and complain?
Also - when I look at #3283 (comment) I see that only half of the usernames seem to have been recognized - and I faintly remember a similar issue when people were trying to do this for k8s in a similar fashion. (Would need to look that up though)

I'm more thinking over time, like in the in months/years to come when this script runs again and picks up more inactive people. Presumably then it would only be a couple at a time.

I Agree. I actually created the PR and description manually, besides the script consuming the csv data file there's no automation currently. We would need to discuss in which intervals we want to do this chore anyhow. But I think that we can refine this then. WDYT?

@aburdenthehand
Copy link
Member

/lgtm
Ah, I'm with you. Yep, that sounds like a plan. Thanks!

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Mar 4, 2024
@fabiand
Copy link
Member

fabiand commented Mar 5, 2024

/approve

It was great seeing old the former faces in this thread again! 👋

People are always welcome back, thus let's move on.

@dhiller
Copy link
Contributor Author

dhiller commented Mar 5, 2024

/approve

It was great seeing old the former faces in this thread again! 👋

People are always welcome back, thus let's move on.

It was mentioned in the k8s cleanup issue that somehow there should be a memorial for people having moved on from the project, in order to honor their contributions. I think we might do the same on kubevirt.io.

WDYT @fabiand @aburdenthehand ?

@fabiand
Copy link
Member

fabiand commented Mar 5, 2024

Sounds good.
How about creating a fresh ALUMNI.md file and adding the users to this file for now?

@dhiller
Copy link
Contributor Author

dhiller commented Mar 5, 2024

Sounds good. How about creating a fresh ALUMNI.md file and adding the users to this file for now?

kubevirt/community#266

@dhiller dhiller force-pushed the remove-users-without-contributions branch from 9ef09a9 to 4baef86 Compare March 5, 2024 10:31
@kubevirt-bot kubevirt-bot removed the lgtm Indicates that a PR is ready to be merged. label Mar 5, 2024
@dhiller
Copy link
Contributor Author

dhiller commented Mar 8, 2024

/retest

@aburdenthehand
Copy link
Member

@dhiller
Copy link
Contributor Author

dhiller commented Mar 11, 2024

Can I get another lgtm please? And probably an approval if we are good with this cleanup?

@dhiller
Copy link
Contributor Author

dhiller commented Mar 11, 2024

@dhiller Looks like there's a limit that we're exceeding to how many members you can remove in one PR: storage.googleapis.com/kubevirt-prow/pr-logs/pull/kubevirt_project-infra/3283/pull-kubevirt-org-github-config-updater/1766082766576816128/build-log.txt

@aburdenthehand yeah, that's just a security measure from the tool in order to no accidentally remove too many people. But we should override this one for once.

@aburdenthehand
Copy link
Member

/lgtm

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Mar 11, 2024
Copy link
Member

@brianmcarey brianmcarey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve

@kubevirt-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: brianmcarey, fabiand

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubevirt-bot kubevirt-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 11, 2024
@dhiller
Copy link
Contributor Author

dhiller commented Mar 11, 2024

/unhold

@kubevirt-bot kubevirt-bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 11, 2024
@dhiller
Copy link
Contributor Author

dhiller commented Mar 11, 2024

/override pull-kubevirt-org-github-config-updater

@kubevirt-bot
Copy link
Contributor

@dhiller: Overrode contexts on behalf of dhiller: pull-kubevirt-org-github-config-updater

In response to this:

/override pull-kubevirt-org-github-config-updater

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@kubevirt-bot kubevirt-bot merged commit 0960eee into kubevirt:main Mar 11, 2024
7 checks passed
Barakmor1 pushed a commit to Barakmor1/project-infra that referenced this pull request Apr 24, 2024
* governance, kubevirt, org: create script

Adds a script that can be used to automate the process for removing
users from the org that have no contributions according to the input
file.

Input file is taken from KubeVirt devstats.

Signed-off-by: Daniel Hiller <[email protected]>

* governance, KubeVirt, org: remove inactive users

Removes users without contributions within the last twelve months.
Input data for contributions taken from KubeVirt devstats:

https://kubevirt.devstats.cncf.io/d/48/users-statistics-by-repository-group?orgId=1&from=now-1y&to=now&var-period=w&var-metric=activity&var-repogroup_name=All&var-users=All&inspect=1&inspectTab=data

Signed-off-by: Daniel Hiller <[email protected]>

---------

Signed-off-by: Daniel Hiller <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. lgtm Indicates that a PR is ready to be merged. size/L
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants