Detect, track and alert on infrastructure drift
 
 
 
 
Go to file
Elie CHARRA 81f2efb96b
chore: fix mess with terraform3 imports
2022-07-07 16:16:08 +02:00
.circleci Update to go 1.18 2022-06-10 11:12:21 +02:00
.github chore: Change code ownership to a more accurate team 2022-04-01 15:45:47 +02:00
build chore: Disable usage reporting for non release builds 2022-03-30 17:09:05 +02:00
docs Fix hacky way to serve fake tf provider schema in tests 2021-11-25 14:57:31 +01:00
enumeration chore: fix mess with terraform3 imports 2022-07-07 16:16:08 +02:00
logger Move to @snyk 2021-12-06 14:29:39 +01:00
mocks chore: extract enumeration to it's own submodule 2022-07-07 16:16:03 +02:00
pkg chore: fix mess with terraform2 imports 2022-07-07 16:16:06 +02:00
scripts chore: Stop failing tagging on invalid issue links 2022-06-16 16:14:13 +02:00
sentry Move to @snyk 2021-12-06 14:29:39 +01:00
test chore: extract enumeration to it's own submodule 2022-07-07 16:16:03 +02:00
.all-contributorsrc docs: update .all-contributorsrc [skip ci] 2022-06-13 12:15:09 +00:00
.dockerignore Ignore .terraform folders from docker context 2021-03-10 17:04:55 +01:00
.editorconfig Change json identation 2021-04-29 16:36:32 +02:00
.gitignore chore: add changelog automatically 2021-12-20 14:42:34 +04:00
.go-version Update to go 1.18 2022-06-10 11:12:21 +02:00
.golangci.yml Update to go 1.18 2022-06-10 11:12:21 +02:00
.goreleaser.yml chore: add blobs config to goreleaser file 2022-03-22 15:50:46 +04:00
.mockery.yaml remove testonly from mockery config 2021-02-16 18:05:18 +01:00
.snyk Ignore vuln in terraform dependencies 2022-01-11 10:50:15 +01:00
CONTRIBUTORS.md docs: update CONTRIBUTORS.md [skip ci] 2022-06-13 12:15:08 +00:00
Dockerfile fix: Dockerfile to reduce vulnerabilities 2022-07-06 20:06:50 +00:00
LICENSE.md Moved to @snyk legal stuff 2021-12-06 14:09:56 +01:00
Makefile Update to go 1.18 2022-06-10 11:12:21 +02:00
README.md Add germany flag 2022-06-13 14:27:37 +02:00
ROADMAP.md refactor: rename cloudskiff to snyk 2021-12-06 17:00:54 +01:00
codecov.yml Change range of coverage colors 2021-03-03 12:28:01 +01:00
go.mod fix: bump go-getter to resolve vuln and go mod tidy 2022-05-31 20:05:26 +03:00
go.sum fix: bump go-getter to resolve vuln and go mod tidy 2022-05-31 20:05:26 +03:00
goland_watchers.xml Use printer to not break output isolation 2021-03-15 12:03:35 +01:00
main.go Add client to telemetry 2022-05-03 13:48:02 +02:00

README.md

driftctl

Measures infrastructure as code coverage, and tracks infrastructure drift.
IaC: Terraform. Cloud providers: AWS, GitHub, Azure, GCP.
⚠️ This tool is still in beta state and will evolve in the future with potential breaking changes ⚠️

Packaging status Packaging status

Why driftctl ?

Infrastructure drift is a blind spot and a source of potential security issues. Drift can have multiple causes: from team members creating or updating infrastructure through the web console without backporting changes to Terraform, to unexpected actions from authenticated apps and services.

You can't efficiently improve what you don't track. We track coverage for unit tests, why not infrastructure as code coverage?

Spot discrepancies as they happen: driftctl is a free and open-source CLI that warns of infrastructure drifts and fills in the missing piece in your DevSecOps toolbox.

Features

  • Scan cloud provider and map resources with IaC code
  • Analyze diffs, and warn about drift and unwanted unmanaged resources
  • Allow users to ignore resources
  • Multiple output formats

Get Started

Documentation

Installation

Discord

Contribute

To learn more about compiling driftctl and contributing, please refer to the contribution guidelines and the contributing guide for technical details.

This project follows the all-contributors specification and is brought to you by these awesome contributors.

Build with ❤️ from 🇫🇷 🇬🇧 🇯🇵 🇬🇷 🇸🇪 🇺🇸 🇷🇪 🇨🇦 🇮🇱 🇩🇪

Helping you get started

We have 30 min slots for 1:1 tech discussions and overviews twice a day to help you get started and collect users feedback.

Feel free to book a slot.

Security notice

All Terraform state and Terraform files in this repository are for unit test purposes only. No running code attempts to access these resources (except to create and destroy them, in the case of acceptance tests). They are just opaque strings.