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

Migrate krew & krew-index to kubernetes-sigs #599

Closed
ahmetb opened this issue Mar 13, 2019 · 30 comments
Closed

Migrate krew & krew-index to kubernetes-sigs #599

ahmetb opened this issue Mar 13, 2019 · 30 comments
Assignees
Labels
area/github-repo Creating, migrating or deleting a Kubernetes GitHub Repository

Comments

@ahmetb
Copy link
Member

ahmetb commented Mar 13, 2019

New Repo, Staging Repo, or migrate existing

Migrate two existing repositories of a project from github.com/GoogleContainerTools organization.

This is a transfer of these process to the SIG CLI as subproject as agreed upon by SIG CLI leadership.

Requested name for new repositories

  1. kubernetes-sigs/krew
  2. kubernetes-sigs/krew-index

Which Organization should it reside

kubernetes-sigs

If not a staging repo, who should have admin access

  • ahmetb
  • juanvallejo
  • soltysh
  • seans3

If not a staging repo, who should have write access

  • team: sig-cli-maintainers
  • ahmetb

If a new repo, who should be listed as approvers in OWNERS

  • ahmetb
  • juanvallejo

If a new repo, who should be listed in SECURITY_CONTACTS

  • ahmetb
  • juanvallejo

What should the repo description be

  • For krew: 📦 Package manager for "kubectl plugins"
  • For krew-index: Plugin index for https://github.com/kubernetes-sigs/krew. This repository is intended for plugin maintainers

What SIG and subproject does this fall under in sigs.yaml

This is a new subproject for sig-foo called Krew.

TODO(@ahmetb): Update sigs.yaml

Approvals

Please prove you have followed the appropriate approval process for this new
repo by including links to the relevant approvals (meeting minutes, e-mail
thread, etc.)

Additional context for request

Question about sigs.yaml: I am not sure if sigs.yaml must be updated first or this request should be processed first.

Question about CLAs: We've been using Google CLA for all previous contributions to these repositories. Would this pose a problem?

Question about copyright statements: Currently source code license headers read "Copyright [YYYY] Google, Inc". Could/should this be changed or retained for a proper transfer?

Question about third-party dependencies: Just like any other Go project, there are some 3rd party dependencies of this project. cc'ing @caniszczyk per this doc.

Transfer logistics I will be coordinating transfer of repos from github.com/GoogleContainerTools side once the issue is approved. dlorenc (cc'ed below) is the owner of the source org.

/cc @soltysh @seans3 @pwittrock @juanvallejo @dlorenc

@ahmetb ahmetb added the area/github-repo Creating, migrating or deleting a Kubernetes GitHub Repository label Mar 13, 2019
@nikhita
Copy link
Member

nikhita commented Mar 14, 2019

@ahmetb firstly, thank you for such a detailed issue! :)

Question about sigs.yaml: I am not sure if sigs.yaml must be updated first or this request should be processed first.

Would be better to have the repos created first. You can create a PR now if you'd like, get the necessary approvals and add a /hold on it. We can just /hold cancel it once the repo is created. Might be faster that way. 🤷‍♀️

Question about CLAs: We've been using Google CLA for all previous contributions to these repositories. Would this pose a problem?

I'll check if folks who have contributed to the repo have also signed the CNCF CLA. If no, I think there are ways to get exceptions - but I'll let you know if that's needed.

Question about third-party dependencies: Just like any other Go project, there are some 3rd party dependencies of this project. cc'ing @caniszczyk per this doc.

I'll check the licenses for the third-party dependencies and report here if there are any concerning ones.

Question about copyright statements: Currently source code license headers read "Copyright [YYYY] Google, Inc". Could/should this be changed or retained for a proper transfer?

Ref: https://groups.google.com/d/topic/kubernetes-sig-architecture/TjHLgJcDF-I/discussion

This should ideally be changed but it is ok to do this post-transfer. Also, this change needs to be made by someone from Google/someone who is authorized by Google to make the change.
fyi @swinslow

Transfer logistics I will be coordinating transfer of repos from github.com/GoogleContainerTools side once the issue is approved. dlorenc (cc'ed below) is the owner of the source org.

I'll confirm here after checking the CLA and licenses. After that's done + we get the approval from sig-cli (see below), please add me as an admin to both the repos and I can transfer them.


I can see that it says SIG-CLI will be adopting krew plugin manager. Will be adopted under the “kubernetes-sigs” repo in the sig-cli meeting minutes. I'd be ok to treat it as approval but since the mailing list discussion ended up with "What does SIG CLI leadership think?", I would prefer if a SIG CLI chair/TL could approve on the mailing list for the record.

@nikhita
Copy link
Member

nikhita commented Mar 14, 2019

/assign

@ahmetb
Copy link
Member Author

ahmetb commented Mar 14, 2019

@seans3 has just updated that thread with an approval. 🙌

I'm double checking from Google-side to see if there are any issues with the copyright transfer in the license headers.

ahmetb added a commit to ahmetb/community-1 that referenced this issue Mar 14, 2019
reference: kubernetes/org#599

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
@nikhita
Copy link
Member

nikhita commented Mar 14, 2019

A few points:

  • 🎉 for approval from sig-cli!

  • All Kubernetes repos need to have certain template files (like OWNERS). The template files are mentioned here: https://github.com/kubernetes/kubernetes-template-project. Could you add them to both the repos?

  • I verified licenses for third-party dependencies in both repos and they are fine. There are no problems with respect to licenses.

  • I also verified CLA for all contributors for both repos...and there are contributors who haven't signed the CNCF CLA. :( More details below.

krew - For krew, all contributors have signed the CNCF CLA.

krew-index: For krew-index, there are a few contributors who haven't signed the CNCF CLA. The rules for donated repos say that all contributors should have signed the CNCF Individual CLA or CNCF Corporate CLA. We'll need to reach out to the contributors listed below and ask them to sign the CLA. If we aren't able to reach them, we can add a NOTICE file, but I'd prefer to wait for a while to make sure they get a chance to sign.

Once everyone has confirmed that they've signed the CLA, I'll verify it again and proceed forward with the migration.

Note: if your name is listed above, could you please sign the CNCF CLA so that we can migrate the krew-index repo to Kubernetes? Instructions on how to sign the CLA can be found here. Thank you! :)

@jordanwilson230
Copy link

jordanwilson230 commented Mar 14, 2019

Just signed the CNCF CLA. Thanks, @nikhita.

@yokawasa
Copy link

yokawasa commented Mar 15, 2019 via email

@djboris9
Copy link

Hi @nikhita, I've just signed the CNCF CLA. Thanks!

@ernoaapa
Copy link

@nikhita also signed (I think)! Had some problems because I had already Linux Foundation account but not connected to my GH account. Now should be ok 👍

@emreodabas
Copy link

emreodabas commented Mar 16, 2019 via email

@gerald1248
Copy link

gerald1248 commented Mar 16, 2019 via email

@eldadru
Copy link

eldadru commented Mar 16, 2019 via email

@corneliusweig
Copy link
Contributor

Also signed. Sorry it took so long.

@nikhita
Copy link
Member

nikhita commented Mar 23, 2019

@jpdasma 👋 friendly reminder for singing the CNCF CLA :)

Once that's done, I can proceed forward with the migration! 🎉

@nikhita
Copy link
Member

nikhita commented Mar 27, 2019

I just verified CLA ...@ernoaapa looks like your github account is still somehow not detected by LF. :( Can you recheck and/or open a ticket at https://support.linuxfoundation.org/?

@ahmetb
Copy link
Member Author

ahmetb commented Mar 27, 2019

BTW we can probably remove contributions from krew-index temporarily, if we can't reach out to the author. In this case I pinged @.jpdasma several times over email and GitHub.

Perhaps we should leave krew-index out of the transfer process and revisit later.

@ernoaapa
Copy link

I contacted support, hopefully soon solve my issue

@nikhita
Copy link
Member

nikhita commented Mar 28, 2019

Perhaps we should leave krew-index out of the transfer process and revisit later.

@ahmetb to confirm, do you want me to migrate krew right now? I can do that once I get admin access to the repo.

BTW we can probably remove contributions from krew-index temporarily, if we can't reach out to the author.

@swinslow from the legal side, can you confirm here that this is ok to do?

In this case I pinged @.jpdasma several times over email and GitHub.

It looks like they are not reachable. Maybe we could add a NOTICE file saying this contributor could not be reached? @swinslow how long do we have to wait before we add the NOTICE file?

The rules say that If (a) contributor(s) have not signed the CLA and could not be reached, a NOTICE file should be added referencing section 7 of the CLA with a list of the developers who could not be reached. It doesn't mention anything about how long we need to wait until we can say "the contributor is not reachable".

I contacted support, hopefully soon solve my issue

@ernoaapa Perfect, thanks for replying so quick! :)

Once @ernoaapa's issue gets resolved + if we can add a NOTICE file, I am good with migrating krew-index too.

cc @dims @justaugustus
because licensing gotchas

@dims
Copy link
Member

dims commented Mar 28, 2019

@jpdasma seems to have signed the Google CLA at least kubernetes-sigs/krew-index#18

@swinslow
Copy link

@nikhita I don't know the original background for those rules -- I don't think there are any particular rules for how long to wait. It would be preferable to avoid pulling in the repo where some content / commits are not covered by the CNCF CLA, if possible.

It looks like @jpdasma only had two commits in krew-index (1, 2) both of which were for the file plugins/exec-all.yaml. Is it feasible to remove that file before bringing the repo over, if we continue to not hear from the author?

Alternatively, do any of the other contributors on this thread know @jpdasma and have a separate way to contact them?

@ernoaapa
Copy link

Now my CLA should be signed properly.

@nikhita
Copy link
Member

nikhita commented Mar 29, 2019

Now my CLA should be signed properly.

Thank you so much, Erno! I can verify that CLA is ok now.

Is it feasible to remove that file before bringing the repo over, if we continue to not hear from the author?

@ahmetb wdyt? do you think we can remove this file and maybe re-add after migrating?

@soltysh
Copy link
Contributor

soltysh commented Mar 29, 2019

@ahmetb wdyt? do you think we can remove this file and maybe re-add after migrating?

👍 for doing it and opening an issue and requesting the author to re-add it

ahmetb added a commit to ahmetb/krew-index that referenced this issue Mar 29, 2019
NOTE: Krew isn't handling removal of an installed plugin from the plugin
index right now.

We're removing this to bypass the CLA requirement of the original contributor
since the repo is being transferred to CNCF. kubernetes/org#599

I will add package plugin myself after the migration is complete.

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
ahmetb added a commit to kubernetes-sigs/krew-index that referenced this issue Mar 29, 2019
NOTE: Krew isn't handling removal of an installed plugin from the plugin
index right now.

We're removing this to bypass the CLA requirement of the original contributor
since the repo is being transferred to CNCF. kubernetes/org#599

I will add package plugin myself after the migration is complete.

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
@ahmetb
Copy link
Member Author

ahmetb commented Mar 29, 2019

Done, removed the particular contribution. (kubernetes-sigs/krew-index#121) There's a known issue with Krew while a plugin is removed from the index (users who installed this particular plugin won't be able to run krew update successfully for now) but I'll add this plugin back myself.

@nikhita
Copy link
Member

nikhita commented Mar 30, 2019

Awesome! @ahmetb can you add me as an admin to both repos? I can handle the migration after that.

@nikhita
Copy link
Member

nikhita commented Apr 1, 2019

Migration is done! 🎉 Thanks for your patience with the back-and-forth, everyone :)

I have created #672 to add teams for both repos. After that gets merged, a postsubmit will run which will actually create those GitHub teams. I'll then manually grant access to these teams. Once that's done + kubernetes/community#3429 gets merged, we can close this issue.

@nikhita
Copy link
Member

nikhita commented Apr 1, 2019

I'll then manually grant access to these teams.

The respective teams have been granted access. For Kubernetes repos, we want to grant access to repos only via teams so I've removed direct access for krew for @dlorenc and @lbb and for krew-index for @lbb.

If you'd like access, you could create a PR to add yourself to the appropriate teams? Thanks 😬

@ahmetb
Copy link
Member Author

ahmetb commented Apr 1, 2019

That sounds ok as the listed people aren't maintainers.

ahmetb added a commit to ahmetb/krew that referenced this issue Apr 1, 2019
Reference: kubernetes/community#3427

Updating the source code copyright per the kubernetes/org#599
as someone from the Google organization which has donated the krew code.

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
k8s-ci-robot pushed a commit to kubernetes-sigs/krew that referenced this issue Apr 3, 2019
Reference: kubernetes/community#3427

Updating the source code copyright per the kubernetes/org#599
as someone from the Google organization which has donated the krew code.

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
@nikhita
Copy link
Member

nikhita commented Apr 3, 2019

kubernetes/community#3429 has merged \o/

/close

@k8s-ci-robot
Copy link
Contributor

@nikhita: Closing this issue.

In response to this:

kubernetes/community#3429 has merged \o/

/close

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.

@ahmetb
Copy link
Member Author

ahmetb commented Apr 3, 2019

This is awesome!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/github-repo Creating, migrating or deleting a Kubernetes GitHub Repository
Projects
None yet
Development

No branches or pull requests