TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Show HN: Digger v4.0 – An Open Source GitOps Tool for Terraform

2 点作者 ujnproduct将近 2 年前
We have been building Digger for over 2 years with multiple iterations in between. Today we are launching Digger v4.0 - An Open Source GitOps tool for Terraform.<p>A brief history of our journey:<p>Digger Classic (<a href="https:&#x2F;&#x2F;app.digger.dev" rel="nofollow">https:&#x2F;&#x2F;app.digger.dev</a>) (v1.0)<p>Initial focus was to build a “heroku experience in your AWS”.<p>We wanted to handle everything from infrastructure, CI, monitoring, logs, domains support etc. There were several design issues in this version:<p>The split from services to environments confused users a lot<p>Several types of deployments (infrastructure, software) confused customers, they didn’t know when infrastructure is needed versus a software deployment<p>The concept of “environment target” for the whole infrastructure had its limitations especially for customisation of existing infrastructure.<p>This led to the birth of Axe,<p>AXE (v2.0) (<a href="https:&#x2F;&#x2F;dashboard.digger.dev" rel="nofollow">https:&#x2F;&#x2F;dashboard.digger.dev</a>)<p>With AXE project we wanted to improve some UX points by focusing more on “apps” which are individuals pieces that developer would want to deploy.<p>The main idea was to have the ability to capture whole environment was missing in this model, it was something that was appreciated in classic (albeit confusing)<p>While infrastructure generation was more flexible in this model, there were still pieces which didn’t fit such as creation of VPC and other common cross-app resources. This could have been solved with more thought and notion of app connectivity.<p>Biggest problem was reliability. Since we were taking on responsibility of creating infrastructure and building and deploying successfully, our success rate for users was not high. This affected our ability to attract more users and grow the product<p>This subsequently led to the birth of v3.0, Trowel,<p><pre><code> Trowel (v3.0) (https:&#x2F;&#x2F;dashboard.digger.dev&#x2F;create) </code></pre> In this version we limited our scope further to generating and provisioning infrastructure-as-code. The idea was to introduce a “build step” for Terraform - the user describes the infrastructure they want in a high-level config file, that is then compiled into Terraform. Or perhaps a “framework” to abstract away the implementation details, similar to Ruby on Rails.<p>We no longer touched application deployment, meaning that we could focus on the core proposition infrastructure generation and customizability. This however, did not seem to interest end users we were speaking to. The challenging part was not so much writing the terraform code but rather making sure it’s provisioned correctly. The framework idea still looks promising, we haven&#x27;t fully explored it yet; but even with a perfect framework in place that produces Terraform, you&#x27;d still need something to take the output and make sure the changes are reflected in the target cloud account. This was the one missing piece in the toolchain we decided to further “zoom into”.<p><pre><code> Digger (v4.0) (https:&#x2F;&#x2F;digger.dev) </code></pre> Digger is an open-source alternative to Terraform Cloud. It makes it easy to run terraform plan and apply in the CI &#x2F; CD platform you already have, such as Github Actions.<p>A class of CI&#x2F;CD products for Terraform exists (Spacelift, Terraform Cloud, Atlantis) but they are more like separate full-stack CI systems. We think that having 2 CI systems for that doesn&#x27;t make sense. The infrastructure of asynchronous jobs, logs etc can and should be reused. Stretching the &quot;assembly language&quot; parallel, this is a bit like the CPU for a yet-to-be-created &quot;cloud PC&quot;.<p>So it boils down to making it possible to run Terraform in existing CI systems. This is what Digger does.<p>Some of the features include:<p>Any cloud: AWS, GCP, Azure Any CI: GitHub Actions, Gitlab, Azure DevOps PR-level LocksPlan &#x2F; apply preview in comments Plan Persistence Workspaces support Terragrunt support PRO (Beta): Open Policy Agent &amp; Conftest PRO (Beta): Drift detection (via Driftctl) PRO (Beta): Cost Estimates (via Infracost)<p>Do give it a try and let us know what you think.

1 comment

lantry将近 2 年前
Yes! This is exactly what I&#x27;ve been looking for. I wasn&#x27;t interested in TFCloud or spacelift because they&#x27;re not open source, and Atlantis seemed like a risky proposition (You want me to run a webserver, that if it gets compromised would give the attacker access to my whole infra?).<p>I figured it would be best to keep things inside the current CI system, so I had started prototyping a tool just like this. Haven&#x27;t gotten very far yet, so I&#x27;m glad to see that there&#x27;s a more mature tool for me to use!