So I actually think kargo is a great choice on bare-metal - and it also does a great job of running on multiple clouds and bare metal. But the design of kops isn't particularly tied to AWS, though it does match better with clouds.
[1] https://libcloud.readthedocs.io/en/latest/compute/supported_...
It is possible to build a kops cloud implementation that doesn't do direct-to-cloud-API-calls, but instead just outputs terraform - that would be faster - but you would still have to figure out the right way to run Kubernetes on cloud X. Most of the work is in doing that!
There are also golang alternatives to libcloud one of them ->https://github.com/apcera/libretto
1. https://github.com/brooklyncentral/clocker 2. http://jclouds.apache.org/ 3. https://github.com/tigera/canal