Hacker News new | ask | show | jobs
by SOLAR_FIELDS 1022 days ago
Into k8s? I do like Argo/flux as it’s declarative. It works for most normal use cases. I would recommend that if you have a typical use case go with that first. Declarative and pull based deploys are quite powerful.

For local/hybrid stuff there’s things like Tilt that can be combined with a push based approach that is a simple helm install.

If you have something fancy though you’ll probably have to write some custom orchestration pushed based tooling. I would reach for a tool like Dagster, Prefect or Temporal for that kind of thing.

You probably don’t need custom orchestration tooling unless you’re doing multi tenant multi cloud deployments though. Even terraform is a decent deploy tool if you don’t want to go all in on helm/flux/argo etc. I would especially recommend that approach if your use cases are not fancy and you already use terraform. It would be push based but still declarative and quite simple to use, albeit clunky and a bit slow like everything terraform.

1 comments

> Even terraform is a decent deploy tool

Terraform for k8s pods/workloads instead of `kubectl apply` YAML files?

Terraform gives you better declarative state management out of the box. In other words you can view and rollback changes to configuration in a more and robust way. It’s also nice to do both infra provisioning and deployments in the same place. Helm has historically been pretty garbage at handing robust rollbacks.

It’s not something I recommend for every setup, as like I mentioned terraform is pretty clunky and slow but I could see it being a pretty good solution for a place that already uses terraform heavily and doesn’t have a complex deploy story.