I am building an open source project which allows ...
# gitops
a
I am building an open source project which allows apps to be deployed from source code in git, with staged deployments and preview versions. There is no infrastructure to manage, everything runs in a single golang binary. For a limited category of use cases, I believe this provides GitOps type deployment. The term GitOps generally means app infrastructure management based on configuration from git. If there is no infra to manage, do you think using the term GitOps is appropriate for my project?
a
Is your project already public?
Asking because I’m working on a project that I’d partially describe the same way 😉
Generally, most people see “pull based GitOps” as the only real GitOps, meaning that a controller continually reconciles the state. See https://opengitops.dev/#principles. I’m not a fan of this restriction to be honest and under some circumstances would see push based GitOps as perfectly valid.
a
yes, it is public https://github.com/claceio/clace. The space is hopefully large enough that the more solutions the better 🙂. The status quo of requiring kubernetes for gitops is too cumbersome for small apps. In Clace,
app reload
command implements a pull mechanism, a github action can be use to make it push based.
Is your project public yet?
a
Ah ok, then I misunderstood you. My project is specifically meant to be a deployment tool for k8s stuff and I assumed you meant the same, The project can be found at kluctl.io
t
Interesting - I have been thinking about the same thing - I have similar use cases, in non-k8s environments. I have a bunch of servers provisioned with ansible and I want to ensure they are kept in sync with the source of truth in git. Currently, I do this with job running mechanism like scheduled gitlab jobs or rundeck jobs - and running ansibile on check diff mode. Is clace trying to serve a similar need?
a
No, Clace is trying to build a solution to make it easier to build web apps (frontend and backend, hypermedia driven rather than SPA/react style). Multiple apps can run on the same Clace server. The plan is to build Rundeck type jobs later, for now it can handle custom web apps, without needing to handle infra level tooling
t
Sounds very interesting - almost all the side projects I dream of ends up needing a functional frontend, which needs to be containerized and deployed - k8s feels too heavy weight, AWS has 54 ways of deploying containers, none are cheap. Gave Amplify a try, unappologitically buggy. Seems like it will fit very well with the mico saas community - cheerios ... looking forward to learning more of about the project.