Inspiration
Inspired by Kunal Kushwaha and Eddie Jaoude to contribute to open source. And this hackathon was a great way to do so.
What it does
I've created a custom policy that can be integrated into the datree cli along with the default rules. The policy checks for the use of deprecated apiVersions in Kubernetes config files (YAML files) and prohibits their use. These deprecated apis are or will be dropped in the later/upcoming versions of Kubernetes. So, using them could cause issues for the developer later.
How we built it
After gaining minimum basic information about kubernetes manifest files and datree I started searching for where I could contribute something. Then I asked one of the datree devs on slack about api deprecations for later versions. He said it was a good idea. So, started working on it. Most of the work was done using YAML-schema and YAML files. Used Datree cli a lot as well while testing against different cases.
Challenges we ran into
I had no previous experience with Kubernetes, Datree or JSON-schema. Had to dig deeper and search about a lot of stuff related to them. I think this part took me the most time in the entire project. Understanding how things were working internally and coming up with my implementation on top of them.
Accomplishments that we're proud of
This is my first open source contribution. I spent long hours working on this project without ever getting bored. From time to time I asked for help from datree experts on their slack community. They were very kind and responsive.
What we learned
Learned a lot of stuff about Kubernetes, Datree and JSON/YAML-schemas. Especially Datree and JSON/YAML-schemas. Also learned how to search for problems and solutions by googling. Learned how to interact with other devs.
What's next for Preventing Kubernetes Deprecated Apis Using Datree
I think there are edge cases where this project might not work. So, maybe I'll try fixing them.
Log in or sign up for Devpost to join the conversation.