nimbus VS kubit

Compare nimbus vs kubit and see what are their differences.

nimbus

Generate CloudFormation bindings for Python (by weberc2)

kubit

install kubecfg packages in-cluster (by kubecfg)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
nimbus kubit
1 1
2 4
- -
10.0 9.7
about 4 years ago 6 days ago
Python Rust
- Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

nimbus

Posts with mentions or reviews of nimbus. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-23.
  • Why the fuck are we templating YAML? (2019)
    27 projects | news.ycombinator.com | 23 Jan 2024
    > These same feelings extend to other proprietary config languages like HCL for Terraform, ASL for AWS Step Functions, etc. It's fine that you want a declarative API, but let me generate my declaration programatically.

    Yeah, I've had the same sort of opinion since the bad old AWS CloudFormation days. I wrote an experimental CloudFormation generator 4 years ago where all of the resources and Python type hints were generated from a JSON file that AWS published and it worked really well (https://github.com/weberc2/nimbus/blob/master/examples/src/n...).

    > Config declared in and generated by code has been a superior experience. It's one of the things that AWS CDK got absolutely right.

    Is that how CDK works? I've only dabbled with it, but it was pretty far from the "generate cloudformation" experience that I had built; I guess I never "saw the light" for CDK. It felt like trading YAML/templating problems for inheritance/magic problems. I'd really like to hear from more people who have used AWS CDK, Terraform's CDK, and/or Pulumi.

kubit

Posts with mentions or reviews of kubit. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-23.
  • Why the fuck are we templating YAML? (2019)
    27 projects | news.ycombinator.com | 23 Jan 2024
    oh yeah; operators are great and sometimes they are necessary.

    On the other hand, most operators I've seen are just k8s manifest templates implemented in Go.

    I often end up preferring using Jsonnet to deal with that instead of doing the same stuff in Go.

    Jsonnet is much more close to the underlying datamodel (the k8s manifest Json/Yaml document) and comes with some useful functionality out of the box, such "overlays".

    It has downsides too! It's untyped, debugging tools are lacking, people are unfamiliar with it and don't care to learn it. So I totally get why one would entertain the possibility of writing your "templates" using a better language.

    However, an operator is often too much freedom. It's not just using Go or Rust or Typescript to "generate" some Json manifests, but it also contains the code to interact with the API server, setup watches, and reactions etc.

    I often wish there was a better way to separate those two concerns

    I'm a fan of metacontroller [1], which is a tool that allows you to write operators without actually writing a lot of imperative code that interacts with the k8s API, but instead just provide a general JSON->JSON transformer, which you could write in any langue (Go, Python, Rust, Javascript, .... and also Jsonnet if you want).

    I recently implemented something similar but much tailored to just "installing" stuff, called Kubit. An OCI artifact contains some abitrary tarball (generally containing some template sources) and a reference to a docker image containing an "engine" and runs the engine with your provided tarball + some parameters passed in a CRD. The OCI artifact could contain a helm chart and the template engine could contain the helm binary, or the template engine could be kubecfg and the OCI artifact could contain a bunch of jsonnet files. Or you could write your own stuff in python or typescript. The kubit operator then just runs your code, gathers the output and applies with with kubectl apply-set.

    1. https://metacontroller.github.io/metacontroller/intro.html

    2. https://github.com/kubecfg/kubit

What are some alternatives?

When comparing nimbus and kubit you can also consider the following projects:

cue - The home of the CUE language! Validate and define text-based and dynamic configuration

cdktf-aws-cdk - Use AWS CDK constructs in CDKTF projects