toc icon indicating copy to clipboard operation
toc copied to clipboard

[PROJECT ONBOARDING] Kubeflow

Open amye opened this issue 2 years ago • 60 comments
trafficstars

Welcome to CNCF Project Onboarding! This is an issue created to help onboard your project into the CNCF after the TOC has voted to accept your project. We would like to complete onboarding within one month of acceptance.

From the project side, please ensure that you:

Things that CNCF will need from the project:

  • [x] Provide emails for the maintainers added to https://maintainers.cncf.io in order to get access to the maintainers mailing list and ServiceDesk - [email protected] is the best email to send those to
  • [x] Trademarks: transfer any trademark and logo mark assets over to the LF - https://github.com/cncf/foundation/tree/master/agreements has agreements
  • [x] GitHub: ensure 'thelinuxfoundation' and 'caniszczyk' are added as initial org owners, this helps us make sure we have continuity of GH ownership that we will onboard to our GitHub Enterprise instance: https://github.com/enterprises/cncf
  • [x] GitHub: ensure DCO or CLA are enabled for all GitHub repositories of the project
  • [x] GitHub: ensure that that the CNCF Code of Conduct (or your adopted version of it) are explicitly referenced at the project's README on GitHub
  • [x] Website: ensure LF footer is there and website guidelines followed (if your project doesn't have a dedicated website, please adopt those guidelines to the README file of your project on GitHub).
  • [x] Website: Analytics transferred to [email protected]
  • [x] OpenSSF Best Practices Badge: Start on an OpenSSF Best Practices Badge https://bestpractices.coreinfrastructure.org/en

Things that the CNCF will do or help the project to do:

amye avatar Aug 04 '23 18:08 amye

@mrbobbytables - catching up here!

amye avatar Aug 04 '23 18:08 amye

cc Current kubeflow steering committee : @jbottum @theadactyl @james-jwu

zijianjoy avatar Aug 04 '23 18:08 zijianjoy

Looking at the task Devstats: add to devstats https://devstats.cncf.io/, looks like we already have kubeflow in the dashboard, https://kubeflow.devstats.cncf.io/d/8/dashboards?orgId=1&refresh=15m, do we consider this item done?

zijianjoy avatar Aug 04 '23 19:08 zijianjoy

Yep, that's already taken care of, this issue is just to track everything for onboarding.

amye avatar Aug 04 '23 19:08 amye

Thanks @amye !

Regarding the task of Ensure your project meets the CNCF IP Policy: https://github.com/cncf/foundation/blob/master/charter.md#11-ip-policy, kubeflow side has an ongoing issue to track its progress: https://github.com/kubeflow/community/issues/614

zijianjoy avatar Aug 04 '23 19:08 zijianjoy

Thanks @amye !

Regarding the task of Ensure your project meets the CNCF IP Policy: https://github.com/cncf/foundation/blob/master/charter.md#11-ip-policy, kubeflow side has an ongoing issue to track its progress: kubeflow/community#614

This actually looks like it's a Code of Conduct adoption issue?

amye avatar Aug 04 '23 19:08 amye

@amye You are right, it should be related to GitHub: ensure that that the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md) (or your adopted version of it) are explicitly referenced at the project's README on GitHub task.

zijianjoy avatar Aug 04 '23 19:08 zijianjoy

@zijianjoy - we can probably work on the rest of these tasks as we get that sorted out. Anything we can help with?

amye avatar Sep 29 '23 01:09 amye

@amye The OSPO on Google side has reached out to CNCF about the IP transfer, however, I don't have visibility to the progress. If that is finished, we can mark this item as done. Please let me know if this is not the case and I can reach out to CNCF for help.

zijianjoy avatar Sep 29 '23 15:09 zijianjoy

There's a thread with the right people for trademarks!

amye avatar Sep 29 '23 16:09 amye

PR https://github.com/cncf/foundation/pull/662 is open for the following:

Create maintainer list + add to aggregated https://maintainers.cncf.io/ list by submitting a PR to it

annajung avatar Oct 31 '23 16:10 annajung

Issue https://github.com/kubeflow/community/issues/656 can be used to track progress for the following:

Understand the project proposal process and reqs: https://github.com/cncf/toc/blob/main/process/project_proposals.md#introduction

Understand the services available for your project at CNCF https://www.cncf.io/services-for-projects/

Review the online programs guidelines: https://github.com/cncf/foundation/blob/master/online-programs-guidelines.md

Understand the trademark guidelines: https://www.linuxfoundation.org/legal/trademark-usage

Understand the license allowlist: https://github.com/cncf/foundation/blob/master/allowed-third-party-license-policy.md#approved-licenses-for-allowlist

annajung avatar Nov 01 '23 17:11 annajung

Roles

Roles within Kubeflow are defined in the community membership doc, where it lists 4 roles: member, reviewer, approver subproject owner, and the requirements and responsibilities of each role.

Working Groups

There are multiple working groups under the Kubeflow org that are responsible for different components of the project. Working Group charter, governance, and requirements can be found at /kubeflow/community/wgs

Leadership

Kubeflow community accepted a proposal of three governance groups: Kubeflow Steering Committee (KSC), Kubeflow Conformance Committee (KCC), and Kubeflow Technical Oversight Committee (KTOC), as part of their open governance effort.

In addition to the proposal of the three governance groups, Kubeflow has 3 interim steering committees responsible for establishing KSC, KCC, and KTOC charters.

At this time, the KSC charter has been defined by the interim steering committees and there is a PR https://github.com/kubeflow/community/pull/650 open for community review and feedback. Once the PR is merged or in parallel, the Kubeflow community is planning to hold the first KSC election.

All governance related can be found at kubeflow/community repo

@amye Does this meet this following requirement?

Is your project working on written, open governance? see https://contribute.cncf.io/maintainers/governance/

annajung avatar Nov 03 '23 13:11 annajung

@amye could you clarify if this is a hard requirement? There is a concern regarding migrating > 9,000 users in the current Kubeflow slack workspace to CNCF and possibly to one flat channel under CNCF when there are multiple active channels within the current slack workspace for different purposes. (ref https://github.com/kubeflow/community/issues/615)

Also, Kubeflow slack workspace is currently under the free plan which deletes messages after a certain amount of days. Due to this issue, many community members have been asking to find an alternative or move to a paid plan to ensure the messages are stored and searchable in the future.

Instead of migrating to the CNCF workspace, is there a way CNCF can help with managing a paid plan for the current Kubeflow workspace? Or is there any other alternative you can suggest?

Slack: Are your slack channels migrated to the Kubernetes or CNCF Slack? (see https://slack.com/help/articles/217872578-Import-data-from-one-Slack-workspace-to-another for more details)

annajung avatar Nov 03 '23 14:11 annajung

Just to share our experience from Argo project Slack channel migration. We had a very popular Slack workspace dedicated to Argo, but we eventually switched to CNCF Slack and closed the Argo Slack workspace. We prefixed all Slack channels with "argo-" so it's easy to identify and search for relevant channels. Some main ones are listed here: https://argoproj.github.io/community/join-slack

Some quick stats on major channels:

  • #argo-cd: 12k members
  • #argo-workflows: 6k members
  • #argo-events: 2.5k members
  • #argo-rollouts: 2.7k members
  • #argo-contributors: 1k members
  • #argo-announcements: 2k members

Overall, the migration was quite successful, easier to find for existing CNCF users, and easier to collaborate with CNCF ecosystem projects. Hope this helps.

terrytangyuan avatar Nov 03 '23 14:11 terrytangyuan

but we eventually switched to CNCF Slack and closed the Argo Slack workspace.

Hello @terrytangyuan , thank you for sharing your experience. Would you like to elaborate the process of such migration?

  • What action did Argo Slack users need to take for such migration?
  • How does the permission configuration look like for Argo- channels? (Does the argo steering committee have permission to manage/create argo- channel?)
  • How much percentage of Slack users did we successfully migrate to CNCF slack?

zijianjoy avatar Nov 03 '23 15:11 zijianjoy

Would you like to elaborate the process of such migration?

We archived the channels in the original Slack workspace on a schedule one by one. See https://github.com/argoproj/argoproj/issues/47 for details. We announced/reminded regularly, started supporting users in CNCF channels, and eventually the old Slack workspace became inactive.

What action did Argo Slack users need to take for such migration? They could just visit the link to join CNCF Slack and different channels: https://argoproj.github.io/community/join-slack. Once joined, they no longer have to go back to the original Slack workspace since nobody was responding to questions there.

How does the permission configuration look like for Argo- channels? (Does the argo steering committee have permission to manage/create argo- channel?)

I think only CNCF can manage existing channels. You can create new channels but at some point CNCF will take over.

How much percentage of Slack users did we successfully migrate to CNCF slack?

I don't remember the exact number but we had thousands of users in the old Slack. Once we migrated, it would just become more popular over time if marketing/communication was done regularly. It was quite successful for us at least.

terrytangyuan avatar Nov 03 '23 20:11 terrytangyuan

These items are complete, thank you!

Provide emails for the maintainers added to https://maintainers.cncf.io/ in order to get access to the maintainers mailing list and ServiceDesk - [email protected] is the best email to send those to

An email was sent on Nov 7th and confirmation was also received.

Is your project in its own separate neutral github organization?

The kubeflow project is already in a separate neutral GitHub org, under Kubeflow

annajung avatar Nov 07 '23 17:11 annajung

Website: Analytics transferred to [email protected]

The current Google Analytics account is internal only account. We are not able to add external user to this GA account. But we can add CNCF GA account tracking ID to kubeflow website. Would you like to share the information which allows us to inject your analytics account to kubeflow website? @amye

zijianjoy avatar Nov 07 '23 20:11 zijianjoy

Website: Analytics transferred to [email protected]

The current Google Analytics account is internal only account. We are not able to add external user to this GA account. But we can add CNCF GA account tracking ID to kubeflow website. Would you like to share the information which allows us to inject your analytics account to kubeflow website? @amye

Oof, that is going to be a mess. @nate-double-u, what's the best path forward here? Losing the historical data is not great for anyone.

amye avatar Nov 07 '23 20:11 amye

Website: Analytics transferred to [email protected]

The current Google Analytics account is internal only account. We are not able to add external user to this GA account. But we can add CNCF GA account tracking ID to kubeflow website. Would you like to share the information which allows us to inject your analytics account to kubeflow website? @amye

Oof, that is going to be a mess. @nate-double-u, what's the best path forward here? Losing the historical data is not great for anyone.

From what I can see, the current GA account is not collecting data any more because it hasn't been moved to Google Analytics 4 (G44) property: https://support.google.com/analytics/answer/12938611#zippy=%2Cin-this-article. So there is no historic data to move. I think we should just focus on setting up a new analytics account at this point.

zijianjoy avatar Nov 07 '23 21:11 zijianjoy

Website: Analytics transferred to [email protected]

The current Google Analytics account is internal only account. We are not able to add external user to this GA account. But we can add CNCF GA account tracking ID to kubeflow website. Would you like to share the information which allows us to inject your analytics account to kubeflow website? @amye

Oof, that is going to be a mess. @nate-double-u, what's the best path forward here? Losing the historical data is not great for anyone.

From what I can see, the current GA account is not collecting data any more because it hasn't been moved to Google Analytics 4 (G44) property: https://support.google.com/analytics/answer/12938611#zippy=%2Cin-this-article. So there is no historic data to move. I think we should just focus on setting up a new analytics account at this point.

Oh, if that's all, yes - we can create a new one. The historical data is helpful for project journey reports, but if it's already not an option then we can start over.

amye avatar Nov 07 '23 21:11 amye

Website: Analytics transferred to [email protected]

The current Google Analytics account is internal only account. We are not able to add external user to this GA account. But we can add CNCF GA account tracking ID to kubeflow website. Would you like to share the information which allows us to inject your analytics account to kubeflow website? @amye

Oof, that is going to be a mess. @nate-double-u, what's the best path forward here? Losing the historical data is not great for anyone.

From what I can see, the current GA account is not collecting data any more because it hasn't been moved to Google Analytics 4 (G44) property: https://support.google.com/analytics/answer/12938611#zippy=%2Cin-this-article. So there is no historic data to move. I think we should just focus on setting up a new analytics account at this point.

Oh, if that's all, yes - we can create a new one. The historical data is helpful for project journey reports, but if it's already not an option then we can start over.

Sounds good, @nate-double-u Please feel free to comment here for how to move forward integrating with CNCF analytics account. The kubeflow website is located in https://github.com/kubeflow/website

zijianjoy avatar Nov 07 '23 21:11 zijianjoy

Since I'm onsite at KubeCon, maybe I can ping @chalin for a consult here as I'm not sure how quickly I'll be able to look at this.

Patrice, is this something you may be able to help with?

nate-double-u avatar Nov 07 '23 23:11 nate-double-u

Certainly, I'm on it!

chalin avatar Nov 08 '23 13:11 chalin

Can someone grant me access to Kubeflow's Netlify account?

chalin avatar Nov 08 '23 13:11 chalin

Here's the issue I'm using to track the setup of GA4:

  • https://github.com/kubeflow/website/issues/3620

chalin avatar Nov 08 '23 13:11 chalin

PR https://github.com/kubeflow/internal-acls/pull/624 is open for the following:

GitHub: ensure 'thelinuxfoundation' and 'caniszczyk' are added as initial org owners, this helps us make sure we have continuity of GH ownership that we will onboard to our GitHub Enterprise instance: https://github.com/enterprises/cncf

PR https://github.com/kubeflow/community/pull/658 is open for the following:

GitHub: ensure that the CNCF Code of Conduct (or your adopted version of it) are explicitly referenced at the project's README on GitHub

PR https://github.com/kubeflow/website/pull/3621 is open for the following:

Website: ensure LF footer is there and website guidelines followed (if your project doesn't have a dedicated website, please adopt those guidelines to the README file of your project on GitHub).

This is also in progress with help from @akgraner, a PR will be made once artwork is available to be submitted

Artwork: Submit a pull request to https://github.com/cncf/artwork with your artwork

annajung avatar Nov 08 '23 16:11 annajung

Issue https://github.com/kubeflow/community/issues/661 can be used to track progress for the following:

Ensure your project meets the CNCF IP Policy: https://github.com/cncf/foundation/blob/master/charter.md#11-ip-policy

annajung avatar Nov 15 '23 17:11 annajung

@annajung et al.: regarding the following item in the opening-comment checklist:

There will be no need to transfer analytics once the following PR is merged because the website will be configured to use the new CNCF GA4 site tag created under the CNCF Project account:

  • https://github.com/kubeflow/website/pull/3627

Also, once the above PR is merged, I will no longer require access to the Netlify account, though granting someone from the CNCF access (possibly at least [email protected]) is probably still advisable. /cc @amye

chalin avatar Nov 17 '23 09:11 chalin