Knappek / mongodbatlas-operator

A Kubernetes Operator for MongoDB Atlas: https://www.mongodb.com/cloud/atlas
Apache License 2.0
14 stars 1 forks source link

Convert project to crossplane provider #32

Open Knappek opened 3 years ago

Knappek commented 3 years ago

Crossplane is a super interesting project to create infrastructure directly from Kubernetes. It uses a concept called providers that group together a major purpose. E.g. there is a provider-aws that includes all controllers for AWS managed services.

We could convert this project into a crossplane provider, provider-mongodbatlas. These brings lots of advantages, as we can adapt crossplanes standard and neat code base where we do not have to implement the full logic of a Reconcile method, but only have to concern about implementing the CRUD operations for every Atlas API.

@themantissa this could be of interest to you.

themantissa commented 3 years ago

Thanks for the tag @Knappek! I'll share this with our Product Manager for k8 and see what he thinks.

cebidhem commented 3 years ago

Hey @Knappek I was looking for such operator and found yours which seems a good starting point. Interestingly enough, I'm also evaluating Crossplane for AWS/GCP services and now I wonder if you'll be continuing this project, or if now the goal is to implement it within Crossplane ?

Knappek commented 3 years ago

Hey @cebidhem happy to hear that you are interested in a mongodb atlas operator. Yeah, I would suggest to start a new project implementing the Crossplane approach, a so called provider-mongodbatlas. There are couple of resources that might help starting a new provider:

If you like, I can also do some code reviewing as I have some experiences with writing crossplane providers.

Knappek commented 3 years ago

@cebidhem one more thing to mention: I have used the mongodb atlas go client library by akshaykarle. This library doesn't have any activity yet though. Luckily, MongoDB themselves started to write a client library that I would suggest to use.