cncf / sandbox

Applications for Sandbox go here! ⏳📦🧪
Apache License 2.0
133 stars 22 forks source link

[Sandbox] syngit #113

Closed damsien closed 1 month ago

damsien commented 3 months ago

Application contact emails

dassieu.damien@gmail.com

Project Summary

syngit is a Kubernetes operator that allows you to push resources on a git repository and manage their lifecycle.

Project Description

The user chooses the scope of the resources that need to be intercepted and pushed on the git repository. It is useful for 2 main use-cases :

Nowadays, the main issue when using the GitOps approach is that they are limited to interactions with the cluster only through the Git. Which prevents them from getting a return on the actions they take. Also, the users also prefer to interact with user-friendly tools such as CLIs like kubectl or UIs (OpenShift, Rancher). syngit address this issue by unifying the GitOps philosophy with the usage of user-friendly tools.

It is both useful and efficient and will become even more needed in the future as the GitOps philosophy gets widely used.

Org repo URL (provide if all repos under the org are in scope of the application)

https://github.com/syngit-org

Project repo URL in scope of application

https://github.com/syngit-org/syngit

Additional repos in scope of the application

No response

Website URL

No response

Roadmap

https://github.com/syngit-org/syngit/wiki/Roadmap

Roadmap context

No response

Contributing Guide

https://github.com/syngit-org/syngit/wiki/Contribute

Code of Conduct (CoC)

https://github.com/syngit-org/syngit/blob/main/CODE_OF_CONDUCT.md

Adopters

No response

Contributing or Sponsoring Org

No response

Maintainers file

https://github.com/syngit-org/syngit/blob/main/MAINTAINERS

IP Policy

Trademark and accounts

Why CNCF?

Contributing syngit to the CNCF can increase the project's visibility. I think that this operator can be beneficial for many users however they are unaware of the existence of a tool with the features that syngit provides.

Moreover, feedback is the best way to ensure a project evolves positively. Gathering users feedback can be very helpful to adjust the project and make it better.

From my perspective, it would be beneficial to have multiple contributors rather because it brings diverse coding styles and operator architectures, which results in a more refined and robust outcome. Getting more contributors through this Sandbox application can be great for the project in order to make it evolve through discussions about the architecture and the future of syngit.

Benefit to the Landscape

syngit can benefits the landscape for all the users that want an operators doing one of the two features explained above.

Concerning the GitOps part, syngit integrates very well with other landscape projects such as ArgoCD, FluxCD. The features provided cannot be added directly into these projects since there were not designed for this purpose. syngit is designed in line with the following philosophy: "focus only on one key feature and do it in the best way". When used with other CD tools, the cluster state and the git repository state remains synchronized all of the time.

By going deeper, we can say that syngit can be used along side with other Kubernetes tools that allows you to interact with the cluster. It can be CLI, CD tools or UIs.

Cloud Native 'Fit'

syngit fit the Cloud Native principles by simply being a Kubernetes operator. Therefore, it can be used in any environment that integrate a Kubernetes cluster and it does not depend on any specific cloud provider. It respects the Kubernetes operators architecture principles and it is based on the kubebuilder framework that is part of the kubernetes-sigs.

Cloud Native 'Integration'

syngit first and foremost complements the Kubernetes project. But it also complements all the CD tools projects and can be used to complements other tools such as the CLIs, and UIs used for Kubernetes.

syngit does not depend on any other project except Kubernetes since it uses key components of the Kubernetes architecture.

Cloud Native Overlap

syngit does not overlap on any other projects since it adds a missing part of another approach of what the GitOps philosophy could be.

Similar projects

N/A

Landscape

No

Business Product or Service to Project separation

N/A

Project presentations

No response

Project champions

No response

Additional information

The project was initially created to address a need that I have encountered, mainly improving the GitOps experience. Then, I figured that it can be used in my job environment as well. Which allowed me to adjust the project to real world production use-cases. However, I always worked on the project during my personal time to keep it open-source and not associated to a company. The main goal is to keep it open-source and make it discovered by as many users of the Kubernetes community who want to use it as possible.

roberthstrand commented 1 month ago

Hi @damsien,

The next TAG App Delivery general meeting is on Wednesday 2nd of October. Would it be possible for you to hold a project presentation for us then?

damsien commented 1 month ago

Hello @roberthstrand ,

Yes, I am available on this date, I will be there to present syngit with a colleague.

roberthstrand commented 1 month ago

Hello @roberthstrand ,

Yes, I am available on this date, I will be there to present syngit with a colleague.

Excellent! I have added you to the agenda, and the meeting can be accessed on the 2nd at this URL. Looking forward to hearing about your project 😊

damsien commented 1 month ago

Thank you!

jberkus commented 1 month ago

TAG Contributor strategy has reviewed this project and found the following:

This review is for the TOC’s information only. Sandbox projects are not required to have full governance or contributor documentation.

damsien commented 1 month ago

Hello @jberkus, thank your for your message 😄 I just wanted to say that there is a governance page that I wrote about 2 weeks ago in the project’s wiki.

rochaporto commented 1 month ago

@roberthstrand i see the presentation to TAG-AppDelivery happened October 2nd. Does the TAG have a recommendation on the acceptance of the project into sandbox?

angellk commented 1 month ago

Copying notes from the presentation to TAG A-D:

Syngit Project Presentation (Sandbox Application)

roberthstrand commented 1 month ago

@roberthstrand i see the presentation to TAG-AppDelivery happened October 2nd. Does the TAG have a recommendation on the acceptance of the project into sandbox?

In our opinion, the project is not yet mature enough to join the CNCF as a sandbox project. Primary reason is the lack of community around the project, and that is still looks like a one-person project. If the project would get adopted by more end users, and had more contributions from externals or more maintainers, that would make a big difference in to us.

angellk commented 1 month ago

@damsien Thank you for applying for CNCF Sandbox. The TOC does not see the project as ready for Sandbox at this time as we would like to see more of a community built around your project first.

The feature set you are maintaining is interesting and could be useful to others in the ecosystem. Please engage further with TAG App Delivery to find areas of collaboration to grow your project. Also, please engage with the OpenGitOps project as there may be areas of collaboration in that community as well.