bazel_compose
garden
bazel_compose | garden | |
---|---|---|
1 | 40 | |
12 | 3,264 | |
- | 0.5% | |
0.0 | 9.9 | |
over 3 years ago | 2 days ago | |
Python | TypeScript | |
MIT License | Mozilla Public License 2.0 |
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.
bazel_compose
-
You Don't Need to Rebuild Your Development Docker Image on Every Code Change
While this is great for people with a fundamental understanding of containers and your prod environment this will usually lead to some issues with developers that don't need to, or want to, have context in these areas.
In the past, to make a very similar workflow possible, I've built tools that automatically watch your source files and rebuild & restart only what is needed [0]. This was built for bazel + docker-compose but there isn't a reason one couldn't watch the "build:" contexts for what files are important.
At a previous company one of our engineers was a huge fan of this volume mount approach and every single time something broke (which was very frequent due to some prod/dev env magic we had) I had to assist quite a few more junior devs figure out what was wrong with their machine. For those with scripting languages, was it their system's newline endings? For compiled languages, was their system SDK different then what was in the container? For prod bugs, did they forget to rebuild & test the container before opening their PR (we had no automated integration testing)?
In my opinion, if you can make your build system in charge of building/packaging things you'll have a much happier time.
[0] - https://github.com/CaperAi/bazel_compose
garden
-
Build pipelines always seem to take longer than doing the same locally
Hey there! Have you tried garden.io for caching? We also cache tests. Pretty much anything that's possible to cache. We're open source at https://github.com/garden-io/garden
-
Streamlining CI/CD Pipelines with Code: A Developer's Guide
To add to what's already been said: If you think about it, CI pipelines are typically a complete description of how your system is built, tested, and deployed.
Which is pretty fantastic except for how walled off they are. You can't really re-use these descriptions for e.g. development, they're not vendor agnostic, and they only way to run them is by pushing your code.
Maybe it's a silly analogy but it's almost like being a web dev that doesn't have a browser and needs to send their code to a friend who can tell them if that font size looks good.
I think we're way over due for freeing these "blueprints" of our system from the confines of CI and making them portable and flexible. And containers are the technology that's enabling that.
Full disclaimer (as always): I work at Garden[0] where we're also solving that problem but taking a slightly different approach to Dagger (it's still a DAG). Garden config is declarative and the jobs (we call them actions) have a semantic meaning. You can e.g. have a Build action of type container or a Deploy action of type Helm and Garden will figure out what to do with it.
[0] https://github.com/garden-io/garden
-
GitHub Actions Are a Problem
Yes, there's us over at https://github.com/garden-io/garden! We're big believers in pipelines that run anywhere. I even made a short little video that should give you the gist. [1]
Some of the short-list of differences: we use YAML for our configuration language, Dagger can use full-fat languages to define its pipelines. Our feature scope is broader: you can use us to vend IDP-like stacks to your developers if you're a Platform Team; we make development with remote Kubernetes clusters very easy, including all the remote image builds; and we have a number of integrations so you can bring your IaC tool of choice (Pulumi, Terraform) into your pipeline and set up service -> infra dependencies.
[1] https://www.youtube.com/watch?v=JFnan6s2cDg
-
The Icelandic Saga Database
Me too. In fact Garden (dev tooling for the Kubernetes)[0] is a Berlin start-up with three Icelandic founders.
And if I'm not mistaken, two of us worked briefly with @halldorel (above commenter) at an earlier Icelandic start-up. It's a small world (if you're Icelandic).
[0] https://garden.io
-
Local development set up for microservices with Kubernetes - Skaffold
There are dedicated tools just for that. Apart from skaffold check also tilt.dev, garden.io, devspace.sh, okteto.com
-
is anyone using garden.io for Kubernetes development?
Would appreciate any insights on garden.io. Thanks.
- Garden – The DevOps automation tool for K8s
-
Best way to run k8s apps locally
Telepresence, tilt, garden.io, okteto, skaffold etc.
-
Local Development with hot reloading, what does your team do?
- https://garden.io/
-
Digital nomad x Cyclist in the Balkans on my way to Japan (more info in the comments)
haha, do my pictures give off a strong not-web-dev vibe? Either way your right, I'm focusing on devxp and automation for kubernetes. Because my work is open source you can see it here https://github.com/garden-io/garden (btw we're also hiring another open core dev like me)
What are some alternatives?
Docker Compose - Define and run multi-container applications with Docker
okteto - Develop your applications directly in your Kubernetes Cluster
skaffold - Easy and Repeatable Kubernetes Development
telepresence - Local development against a remote Kubernetes or OpenShift cluster
volta - Volta: JS Toolchains as Code. ⚡
wsl-vpnkit - Provides network connectivity to WSL 2 when blocked by VPN
tilt-extensions - Extensions for Tilt
UTM - Virtual machines for iOS and macOS
tilt - Define your dev environment as code. For microservice apps on Kubernetes.
waypoint - A tool to build, deploy, and release any application on any platform.