cncf / sandbox

Applications for Sandbox go here! โณ๐Ÿ“ฆ๐Ÿงช
Apache License 2.0
136 stars 22 forks source link

[Sandbox] kpt #34

Closed mortent closed 1 year ago

mortent commented 1 year ago

Application contact emails

mortent@google.com, justinsb@google.com, sosa@google.com

Project Summary

Managing KRM configuration at scale

Project Description

kpt is a package-centric toolchain that enables a WYSIWYG configuration authoring, automation, and delivery experience, which simplifies managing Kubernetes platforms and KRM-driven infrastructure at scale by manipulating declarative Configuration as Data.

Org repo URL

N/A (upon acceptance, all repos will be moved to its own org)

Project repo URL

https://github.com/GoogleContainerTools/kpt

Additional repos

https://github.com/GoogleContainerTools/kpt-functions-catalog https://github.com/GoogleContainerTools/kpt-backstage-plugins https://github.com/GoogleContainerTools/kpt-functions-sdk https://github.com/GoogleContainerTools/kpt-samples

Website URL

https://kpt.dev/

Roadmap

https://github.com/GoogleContainerTools/kpt/blob/main/docs/ROADMAP.md

Roadmap context

No response

Contributing Guide

https://github.com/GoogleContainerTools/kpt/blob/main/CONTRIBUTING.md

Code of Conduct (CoC)

https://github.com/GoogleContainerTools/kpt/blob/main/CODE_OF_CONDUCT.md

Adopters

No response

Contributing or Sponsoring Org

https://www.google.com/

Maintainers file

https://github.com/GoogleContainerTools/kpt/blob/main/MAINTAINERS

IP Policy

Trademark and accounts

Why CNCF?

The basic building blocks for kpt are in place and we want to encourage further adoption and contributions to the project. Having the project in the CNCF also makes it easier for users to contribute to the project as the CNCF CLA is widely accepted in the industry.

Benefit to the Landscape

Kpt is an implementation of the Configuration as Data paradigm and thereby provides a novel approach for managing declarative configuration at scale. Since kpt uses the Kubernetes Resource Model as the data format throughout the lifecycle of configuration, it obviously integrates well with Kubernetes, but also has the potential for simplifying the use of many other tools in the CNCF landscape.

Cloud Native 'Fit'

kpt is built using cloud native technologies and fits within the โ€œApp Definition & Image Buildโ€ area.

Cloud Native 'Integration'

kpt simplifies management of KRM configuration, thereby making it easier for users to use Kubernetes at scale, and provides a set of building blocks for building custom platforms with cloud native technologies. As a result of kpt using KRM as the fundamental data format, it can help manage any tool that can be configured with KRM.

The kpt CLI and its server-side implementation as Porch (both in the repos in this application) are also utilized by other open source projects such as Nephio (https://nephio.org/) as an underlying platform for configuration management.

Cloud Native Overlap

kpt is an implementation of the Configuration as Data paradigm, so it uses an approach that is different from other tools currently in the Cloud Native landscape. It does however solve similar challenges for users as existing products in the CNCF like Kustomize and Helm.

Similar projects

Kustomize: Similar to kpt, kustomize has support for customization of KRM resources via a transformation-based approach. But while Kustomize builds the final configuration out-of-place primarily using the overlay-pattern, kpt is optimized for WYSIWYG configuration and in-place customization.

Helm: While Helm leverages templating for customization of KRM resources, kpt uses a transformation-based approach that keeps the configuration in KRM format all the way from authoring to deployment.

Product or Service to Project separation

kpt is used within some Google Cloud Platform services, but the open source project roadmap and direction is driven by the needs of the community. This will continue to be true in the future.

Project presentations

https://cloud.google.com/blog/products/containers-kubernetes/lets-improve-gitops-usability https://kubernetespodcast.com/episode/181-configuration-as-data/ https://www.youtube.com/watch?v=UHr3fBNr8BI&t=11185s https://www.youtube.com/watch?v=PqHWnFtXhQU

Project champions

briangrant@google.com jbelamaric@google.com

Additional information

No response

AloisReitbauer commented 1 year ago

Feel free to also submit a lighting talk for the TAG App Delivery workshop at KubeCon: https://docs.google.com/forms/d/e/1FAIpQLSc2ruf4q2k7nWCZyEp0Wy_nW9z5bsf0ES0ARqZrhwnKEkk5Ig/viewform

johnbelamaric commented 1 year ago

Unfortunately, I am not sure we will have someone there from the project this time around. @mortent @droot @justinsb do you know?

johnbelamaric commented 1 year ago

Maybe @henderiw could do it?

justinsb commented 1 year ago

I'll be there - sounds like fun!

johnbelamaric commented 1 year ago

Oh, I didn't realize you would be there - yes, please go ahead.

henderiw commented 1 year ago

@justinsb do you want to do it together? I will be there

amye commented 1 year ago

/vote-sandbox

git-vote[bot] commented 1 year ago

Vote created

@amye has called for a vote on [Sandbox] kpt (#34).

The members of the following teams have binding votes:

Team
@cncf/cncf-toc

Non-binding votes are also appreciated as a sign of support!

How to vote

You can cast your vote by reacting to this comment. The following reactions are supported:

In favor Against Abstain
๐Ÿ‘ ๐Ÿ‘Ž ๐Ÿ‘€

Please note that voting for multiple options is not allowed and those votes won't be counted.

The vote will be open for 7days. It will pass if at least 66% of the users with binding votes vote In favor ๐Ÿ‘. Once it's closed, results will be published here as a new comment.

amye commented 1 year ago

/check-vote

git-vote[bot] commented 1 year ago

Vote status

So far 18.18% of the users with binding vote are in favor (passing threshold: 66%).

Summary

In favor Against Abstain Not voted
2 0 0 9

Binding votes (2)

User Vote Timestamp
TheFoxAtWork In favor 2023-06-13 18:06:07.0 +00:00:00
rochaporto In favor 2023-06-13 18:38:54.0 +00:00:00
OldCrowEW commented 1 year ago

/check-vote

git-vote[bot] commented 1 year ago

Votes can only be checked once a day.

taylor commented 1 year ago

/check-vote

git-vote[bot] commented 1 year ago

Vote status

So far 27.27% of the users with binding vote are in favor (passing threshold: 66%).

Summary

In favor Against Abstain Not voted
3 0 0 8

Binding votes (3)

User Vote Timestamp
RichiH In favor 2023-06-15 9:27:36.0 +00:00:00
TheFoxAtWork In favor 2023-06-13 18:06:07.0 +00:00:00
rochaporto In favor 2023-06-13 18:38:54.0 +00:00:00

Non-binding votes (26)

| User | Vote | Timestamp | | ---- | :---: | :-------: | | johnbelamaric | In favor | 2023-06-14 21:28:45.0 +00:00:00 | | natasha41575 | In favor | 2023-06-14 21:29:41.0 +00:00:00 | | justinsb | In favor | 2023-06-14 21:43:23.0 +00:00:00 | | janetkuo | In favor | 2023-06-14 21:56:05.0 +00:00:00 | | SvenMM | In favor | 2023-06-14 23:09:28.0 +00:00:00 | | gvbalaji | In favor | 2023-06-14 23:17:24.0 +00:00:00 | | tliron | In favor | 2023-06-14 23:23:33.0 +00:00:00 | | electrocucaracha | In favor | 2023-06-14 23:39:36.0 +00:00:00 | | yuwenma | In favor | 2023-06-15 1:00:27.0 +00:00:00 | | ChristopherFry | In favor | 2023-06-15 1:11:08.0 +00:00:00 | | henderiw | In favor | 2023-06-15 4:36:11.0 +00:00:00 | | ashanvbs | In favor | 2023-06-15 7:16:13.0 +00:00:00 | | kispaljr | In favor | 2023-06-15 8:26:22.0 +00:00:00 | | efiacor | In favor | 2023-06-15 9:44:56.0 +00:00:00 | | lapentad | In favor | 2023-06-15 9:47:48.0 +00:00:00 | | radoslawc | In favor | 2023-06-15 9:53:48.0 +00:00:00 | | wmuizelaar | In favor | 2023-06-15 10:48:42.0 +00:00:00 | | cartyc | In favor | 2023-06-15 12:50:12.0 +00:00:00 | | jmymy | In favor | 2023-06-15 13:54:47.0 +00:00:00 | | ltatakis-optaxe | In favor | 2023-06-15 14:00:22.0 +00:00:00 | | nathanmartins | In favor | 2023-06-15 15:37:10.0 +00:00:00 | | SimonTheLeg | In favor | 2023-06-15 15:54:43.0 +00:00:00 | | OldCrowEW | In favor | 2023-06-15 17:04:41.0 +00:00:00 | | droot | In favor | 2023-06-15 17:30:50.0 +00:00:00 | | bluebrown | In favor | 2023-06-15 20:53:37.0 +00:00:00 | | taylor | In favor | 2023-06-15 21:49:17.0 +00:00:00 |
git-vote[bot] commented 1 year ago

Vote closed

The vote passed! ๐ŸŽ‰

72.73% of the users with binding vote were in favor (passing threshold: 66%).

Summary

In favor Against Abstain Not voted
8 0 0 3

Binding votes (8)

User Vote Timestamp
@mattfarina In favor 2023-06-16 17:44:49.0 +00:00:00
@nikhita In favor 2023-06-19 13:33:09.0 +00:00:00
@rochaporto In favor 2023-06-13 18:38:54.0 +00:00:00
@dzolotusky In favor 2023-06-20 2:05:20.0 +00:00:00
@justincormack In favor 2023-06-16 10:21:44.0 +00:00:00
@TheFoxAtWork In favor 2023-06-13 18:06:07.0 +00:00:00
@erinaboyd In favor 2023-06-20 13:11:37.0 +00:00:00
@RichiH In favor 2023-06-15 9:27:36.0 +00:00:00

Non-binding votes (33)

| User | Vote | Timestamp | | ---- | :---: | :-------: | | @johnbelamaric | In favor | 2023-06-14 21:28:45.0 +00:00:00 | | @natasha41575 | In favor | 2023-06-14 21:29:41.0 +00:00:00 | | @justinsb | In favor | 2023-06-14 21:43:23.0 +00:00:00 | | @janetkuo | In favor | 2023-06-14 21:56:05.0 +00:00:00 | | @SvenMM | In favor | 2023-06-14 23:09:28.0 +00:00:00 | | @gvbalaji | In favor | 2023-06-14 23:17:24.0 +00:00:00 | | @tliron | In favor | 2023-06-14 23:23:33.0 +00:00:00 | | @electrocucaracha | In favor | 2023-06-14 23:39:36.0 +00:00:00 | | @ChristopherFry | In favor | 2023-06-15 1:11:08.0 +00:00:00 | | @henderiw | In favor | 2023-06-15 4:36:11.0 +00:00:00 | | @ashanvbs | In favor | 2023-06-15 7:16:13.0 +00:00:00 | | @kispaljr | In favor | 2023-06-15 8:26:22.0 +00:00:00 | | @efiacor | In favor | 2023-06-15 9:44:56.0 +00:00:00 | | @lapentad | In favor | 2023-06-15 9:47:48.0 +00:00:00 | | @radoslawc | In favor | 2023-06-15 9:53:48.0 +00:00:00 | | @wmuizelaar | In favor | 2023-06-15 10:48:42.0 +00:00:00 | | @cartyc | In favor | 2023-06-15 12:50:12.0 +00:00:00 | | @jmymy | In favor | 2023-06-15 13:54:47.0 +00:00:00 | | @ltatakis-optaxe | In favor | 2023-06-15 14:00:22.0 +00:00:00 | | @nathanmartins | In favor | 2023-06-15 15:37:10.0 +00:00:00 | | @SimonTheLeg | In favor | 2023-06-15 15:54:43.0 +00:00:00 | | @OldCrowEW | In favor | 2023-06-15 17:04:41.0 +00:00:00 | | @droot | In favor | 2023-06-15 17:30:50.0 +00:00:00 | | @bluebrown | In favor | 2023-06-15 20:53:37.0 +00:00:00 | | @taylor | In favor | 2023-06-15 21:49:17.0 +00:00:00 | | @joshgav | In favor | 2023-06-15 23:23:00.0 +00:00:00 | | @WTPascoe | In favor | 2023-06-16 7:00:45.0 +00:00:00 | | @fmichaelobrien | In favor | 2023-06-16 13:00:30.0 +00:00:00 | | @obriensystems | In favor | 2023-06-16 13:02:26.0 +00:00:00 | | @davelanglois-ssc | In favor | 2023-06-16 13:04:41.0 +00:00:00 | | @bgrant0607 | In favor | 2023-06-16 22:18:43.0 +00:00:00 | | @yuwenma | In favor | 2023-06-16 23:43:07.0 +00:00:00 | | @Peefy | In favor | 2023-06-17 8:05:08.0 +00:00:00 |
amye commented 1 year ago

Closing with Approved, new onboarding issue: https://github.com/cncf/sandbox/issues/154