toc icon indicating copy to clipboard operation
toc copied to clipboard

Project Moving Levels Checklist: KServe joining CNCF at Incubation level

Open riaankleinhans opened this issue 3 months ago • 35 comments

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 your project to complete onboarding within one month of acceptance.

Please track your progress by using "Quote reply" to create your own copy of this checklist in the issue, so that you can update the status as you finish items.

REQUIRED BEFORE PROCEEDING WITH ONBOARDING

A "Project Contribution Agreement" must be completed and any existing trademarks MUST be transferred to the Linux Foundation BEFORE the CNCF staff onboarding tasks can be completed. Other tasks can be done by projects themselves in the meantime.

  • [x] Review and understand the CNCF IP Policy. Ensure you are using a CNCF compatible license; inbound projects must use the Apache 2.0 license or seek approval for exceptions. Licenses for dependencies are covered separately below.
  • [x] Review and understand the CNCF Third Party License Policy. This policy governs the licenses used by third party libraries in your project. CNCF FOSSA or CNCF Snyk are configured to check that projects are in compliance with this policy. Let us know which service you would prefer to use.
  • [x] Review and understand the LF trademark guidelines. Let the TOC know if you plan to change your project name.
  • [x] Transfer any trademark and logo assets to the Linux Foundation via the Contribution Agreement. CNCF staff will send this document to the contact emails listed in the Sandbox application.

Review and understand other documents

Contribute and transfer other materials

  • [x] Move your project to its own separate neutral GitHub organization. This will make it transferable to the CNCF's GitHub Enterprise account. If it's already in another GHE account, you will need to remove it from that first.
  • [x] Accept the invite to join the CNCF GitHub Enterprise account. We'll then add thelinuxfoundation as an organization owner to ensure neutral hosting of your project.
  • [x] Migrate your Slack channels (if any) to the Kubernetes or CNCF Slack workspace. CNCF staff can help. This allows project communities to be more discoverable, allows the CNCF to enforce its Code of Conduct, and enables unlimited message retention.
  • [x] Join the #maintainers-circle Slack channel to find and share knowledge with other project teams.
  • [x] Transfer your domain(s) to the CNCF if they exist. The "LF Stakeholder email" is [email protected]. The "Project" is CNCF.
  • [x] Submit a pull request with your artwork if it exists. If you don't have artwork, CNCF can help design some. https://github.com/cncf/artwork/pull/593
  • [x] Transfer website analytics if they exist. Make [email protected] an admin of your existing Google Analytics org account so that we can move it to a CNCF-managed account.

Update and document project details

  • [x] Create a maintainer list and add it to the aggregated CNCF maintainer list via pull request.
  • [x] Provide maintainer emails to get access to the mailing list and Service Desk. Send them to [email protected]. These aren't shared publicly in the spreadsheet above which is why they must be emailed to us.
  • [x] Ensure that DCO are enabled for all GitHub repositories of the project. You may also choose to use a CLA.
  • [x] Ensure that that the CNCF Code of Conduct (or your adopted version of it) are explicitly referenced in the project's README.md on GitHub.
  • [x] Ensure the LF footer is on your website and guidelines are followed (if your project doesn't have a dedicated website, please adopt those guidelines for the README.md file).
  • [ ] Start working on written, open governance and consider adding this to a GOVERNANCE.md file at the root of your repo.
  • [x] Start working on a security policy and consider adding this to a SECURITY.md file at the root of your repo.
  • [x] Start working on an OpenSSF Best Practices Badge.
  • [ ] Import all project repos into your chosen license scanning service (CNCF FOSSA of CNCF Snyk).

CNCF staff tasks to support the project

Project Incubation level check list

Administrative Checklist

  • [X] TOC vote passed https://github.com/cncf/toc/issues/1367
  • [x] Moving levels PR merged https://github.com/cncf/toc/pull/1862
  • [x] Send email to Formation team to move project level in PCC.
    • [x] Confirmation from Formation team and checked in PCC
    • [x] Update CNCF/Calendar
  • [x] Move the project in Google Group mailing lists from its current group to the new one (e.g., from cncf-sandbox-projects to cncf-incubating-projectsto cncf-graduated-projects).
  • [x] Update the project's level and maintainer list in the aggregated CNCF maintainer list
  • [x] Move the project to its new level on the CNCF Landscape https://github.com/cncf/landscape/pull/4532
  • [x] Update CNCF Maintainer List spreadsheet
  • [ ] Send email to [email protected] & [email protected] to announce the new level
  • [x] Update DevStats instance

riaankleinhans avatar Sep 28 '25 09:09 riaankleinhans

Since KServe was hosted under LF AI and Data, we may need to include some onboarding tasks as well.

terrytangyuan avatar Sep 28 '25 12:09 terrytangyuan

It's not clear for me, there is no separate KServe project in DevStats and this request is to update Knative DevStats instance.

Can I have some clarifications? Maybe this project was renamed from something else and I need to update some existing DevStats instance (but I don't think it's Knative) or maybe it was split out from another project - 1st as Sandbox and now this moves to Incubating - but then I need to know from which project it was split? So I can update both projects configurations.

Ideally LMK when this project was accepted/split/renamed into Sandbox so I can create a DevStats instance accordingly.

cc @riaankleinhans @krook @caniszczyk

lukaszgryglicki avatar Sep 29 '25 05:09 lukaszgryglicki

It's not clear for me, there is no separate KServe project in DevStats and this request is to update Knative DevStats instance.

Can I have some clarifications? Maybe this project was renamed from something else and I need to update some existing DevStats instance (but I don't think it's Knative) or maybe it was split out from another project - 1st as Sandbox and now this moves to Incubating - but then I need to know from which project it was split? So I can update both projects configurations.

Ideally LMK when this project was accepted/split/renamed into Sandbox so I can create a DevStats instance accordingly.

cc @riaankleinhans @krook @caniszczyk

@lukaszgryglicki the project was moved from LFAI to CNCF incubating project, we did not went through the sandbox process.

yuzisun avatar Sep 29 '25 06:09 yuzisun

OK, so from CNCF POV it will be like a new project that joins already at the Incubation level, right?

lukaszgryglicki avatar Sep 29 '25 06:09 lukaszgryglicki

Yes, we need to include new project onboarding tasks.

terrytangyuan avatar Sep 29 '25 12:09 terrytangyuan

Ah! I missed that. I will add the Sandbox on-boarding tasks to the checklist today as well.

riaankleinhans avatar Sep 29 '25 12:09 riaankleinhans

  • [x] Submit a pull request with your artwork if it exists. Removed artwork from LF AI & Data - https://github.com/lfai/artwork/pull/40 Added artwork to CNCF Artwork - https://github.com/cncf/artwork/pull/593

riaankleinhans avatar Sep 29 '25 16:09 riaankleinhans

  • [x] Add the project to CLOmonitor. https://github.com/cncf/clomonitor/pull/1797

riaankleinhans avatar Sep 29 '25 17:09 riaankleinhans

It's not clear for me, there is no separate KServe project in DevStats and this request is to update Knative DevStats instance.

Can I have some clarifications? Maybe this project was renamed from something else and I need to update some existing DevStats instance (but I don't think it's Knative) or maybe it was split out from another project - 1st as Sandbox and now this moves to Incubating - but then I need to know from which project it was split? So I can update both projects configurations.

Ideally LMK when this project was accepted/split/renamed into Sandbox so I can create a DevStats instance accordingly.

cc @riaankleinhans @krook @caniszczyk

@lukaszgryglicki KServe moved from LFAI & Data to CNCF. You will see in other comments the PRs for moving artwork and CLoMonitor. - Might work the same for DevStats?

riaankleinhans avatar Sep 29 '25 17:09 riaankleinhans

https://insights.linuxfoundation.org/project/kserve

riaankleinhans avatar Sep 29 '25 17:09 riaankleinhans

@terrytangyuan can the team please also add the technical charter to the KServe repo from here: https://github.com/lfai/foundation/blob/main/technical%20project%20charters/KServe%20Technical%20Charter%20Final.pdf

riaankleinhans avatar Sep 29 '25 20:09 riaankleinhans

@riaankleinhans Technical charter can be found here https://github.com/kserve/community/blob/main/KSERVE-TECHNICAL-CHARTER.md

terrytangyuan avatar Sep 29 '25 21:09 terrytangyuan

@riaankleinhans Technical charter can be found here https://github.com/kserve/community/blob/main/KSERVE-TECHNICAL-CHARTER.md

Thank you @terrytangyuan I requested for the update of the link in PCC.

riaankleinhans avatar Sep 30 '25 12:09 riaankleinhans

DevStats instance added.

lukaszgryglicki avatar Sep 30 '25 12:09 lukaszgryglicki

  • [X] Send email to Formation team to move project level in PCC.
    • [X] Confirmation from Formation team and checked in PCC
    • [X] Update CNCF/Calendar

Project moves in PCC form LF AI & Data to CNCF and added to the CNCF calendar

riaankleinhans avatar Sep 30 '25 12:09 riaankleinhans

[email protected] list create, welcome email sent and added to maintainers & incubation google groups.

riaankleinhans avatar Oct 15 '25 14:10 riaankleinhans

Discussed FOSSA Setup @terrytangyuan on Slack, we will provision the Team and invite the Maintainers to join CNCF FOSSA.

I have logged an issue on maintainer-d to have the FOSSA Onboarding process handle this issue.

https://github.com/RobertKielty/maintainerd/issues/19

So some work required

RobertKielty avatar Oct 15 '25 14:10 RobertKielty

REQUIRED BEFORE PROCEEDING WITH ONBOARDING:

  • [x] Review and understand the CNCF IP Policy. Ensure you are using a CNCF compatible license; inbound projects must use the Apache 2.0 license or seek approval for exceptions. Licenses for dependencies are covered separately below.
  • [x] Review and understand the CNCF Third Party License Policy. This policy governs the licenses used by third party libraries in your project. CNCF FOSSA or CNCF Snyk are configured to check that projects are in compliance with this policy. Let us know which service you would prefer to use.
  • [x] Review and understand the LF trademark guidelines. Let the TOC know if you plan to change your project name.
  • [x] Transfer any trademark and logo assets to the Linux Foundation via the Contribution Agreement. CNCF staff will send this document to the contact emails listed in the Sandbox application.

Review and understand other documents:

Contribute and transfer other materials

  • [x] Move your project to its own separate neutral GitHub organization. This will make it transferable to the CNCF's GitHub Enterprise account. If it's already in another GHE account, you will need to remove it from that first.
  • [x] Accept the invite to join the CNCF GitHub Enterprise account. We'll then add thelinuxfoundation as an organization owner to ensure neutral hosting of your project.
  • [x] Migrate your Slack channels (if any) to the Kubernetes or CNCF Slack workspace. CNCF staff can help. This allows project communities to be more discoverable, allows the CNCF to enforce its Code of Conduct, and enables unlimited message retention.
  • [x] Join the #maintainers-circle Slack channel to find and share knowledge with other project teams.
  • [x] Transfer your domain(s) to the CNCF if they exist. The "LF Stakeholder email" is [email protected]. The "Project" is CNCF.
  • [x] Submit a pull request with your artwork if it exists. If you don't have artwork, CNCF can help design some. https://github.com/cncf/artwork/pull/593
  • [x] Transfer website analytics if they exist. Make [email protected] an admin of your existing Google Analytics org account so that we can move it to a CNCF-managed account.

Update and document project details

  • [x] Create a maintainer list and add it to the aggregated CNCF maintainer list via pull request.
  • [x] Provide maintainer emails to get access to the mailing list and Service Desk. Send them to [email protected]. These aren't shared publicly in the spreadsheet above which is why they must be emailed to us.
  • [x] Ensure that DCO are enabled for all GitHub repositories of the project. You may also choose to use a CLA.
  • [x] Ensure that that the CNCF Code of Conduct (or your adopted version of it) are explicitly referenced in the project's README.md on GitHub.
  • [x] Ensure the LF footer is on your website and guidelines are followed (if your project doesn't have a dedicated website, please adopt those guidelines for the README.md file).
  • [ ] Start working on written, open governance and consider adding this to a GOVERNANCE.md file at the root of your repo.
  • [x] Start working on a security policy and consider adding this to a SECURITY.md file at the root of your repo.
  • [x] Start working on an OpenSSF Best Practices Badge.
  • [ ] Import all project repos into your chosen license scanning service (CNCF FOSSA of CNCF Snyk).

terrytangyuan avatar Nov 21 '25 15:11 terrytangyuan

Transfer website analytics if they exist. Make [email protected] an admin of your existing Google Analytics org account so that we can move it to a CNCF-managed account.

For this, I don't think we have it set up but we probably should? We are just using Github pages. Any instructions on how to set up GA? https://kserve.github.io/website/

terrytangyuan avatar Nov 21 '25 15:11 terrytangyuan

Invite sent to join the CNCF GitHub Enterprise account

krook avatar Nov 21 '25 15:11 krook

Transfer website analytics if they exist. Make [email protected] an admin of your existing Google Analytics org account so that we can move it to a CNCF-managed account.

For this, I don't think we have it set up but we probably should? We are just using Github pages. Any instructions on how to set up GA? https://kserve.github.io/website/

@chalin can you please help with this?

krook avatar Nov 21 '25 15:11 krook

Import all project repos into your chosen license scanning service (CNCF FOSSA of CNCF Snyk).

I think we had conversations around this but I lost track of it. Could anyone help check the status of this?

terrytangyuan avatar Nov 21 '25 16:11 terrytangyuan

Import all project repos into your chosen license scanning service (CNCF FOSSA of CNCF Snyk).

I think we had conversations around this but I lost track of it. Could anyone help check the status of this?

@RobertKielty FYI

krook avatar Nov 21 '25 16:11 krook

I see you started on the OpenSSF badge too. I checked it off.

krook avatar Nov 21 '25 16:11 krook

For this, I don't think we have it set up but we probably should? We are just using Github pages. Any instructions on how to set up GA? https://kserve.github.io/website/

@chalin can you please help with this?

Hi @terrytangyuan - I'll create the GA property for KServe. A few questions:

  • Will you switch to Netlify for hosting or stay on GH Pages?
    • If you switch, which domain(s) will you serve from?
  • Which email addresses shall I grant access to the GA property? You can send them to me at [email protected]. I assume it will be the owners listed in OWNERS.

chalin avatar Nov 21 '25 17:11 chalin

Start working on a security policy and consider adding this to a SECURITY.md file at the root of your repo.

Regarding this one, we have a security policy in place. However, we no longer own our private security mailing list: [email protected] so that requires an update. Could you help us set up one under CNCF mailing lists?

terrytangyuan avatar Nov 21 '25 22:11 terrytangyuan

@chalin I think we had kserve.io under LF AI & Data. Is there still a way to get hold of that domain? We'd like to use that domain and redirect to the github page. You can start with these two emails:

terrytangyuan avatar Nov 22 '25 01:11 terrytangyuan

Start working on a security policy and consider adding this to a SECURITY.md file at the root of your repo.

Regarding this one, we have a security policy in place. However, we no longer own our private security mailing list: [email protected] so that requires an update. Could you help us set up one under CNCF mailing lists?

@terrytangyuan the list [email protected] exist. Please share via email or slack the email addresses of the security contacts and I will add them to the list.

riaankleinhans avatar Nov 24 '25 14:11 riaankleinhans

Could you add everyone from [email protected] and make me and Dan as managers? Thanks. I am updating the security policy in https://github.com/kserve/kserve/pull/4853. Marking is as done here.

terrytangyuan avatar Nov 24 '25 14:11 terrytangyuan

... I think we had kserve.io under LF AI & Data. Is there still a way to get hold of that domain? We'd like to use that domain and redirect to the github page.

  • Whois confirms that the domain is owned by the LF.
    • @nate-double-u, can you help with accessing the domain and DNS config so as to redirect to GH Pages?

For the analytics:

  • The GA ID is G-QNT38TBH1M. I've emailed access information.
  • You'll need to setup GA for Docusaurus, probably best via @docusaurus/plugin-google-gtag.
  • Make sure that GA gets activated for production only. (If you were on Netlify, we could set this up more easily :))

chalin avatar Nov 24 '25 17:11 chalin