https://johnciprian.medium.com/extending-kubernetes-crafting-customresourcedefinitions-and-controllers-740f159a6218