https://github.com/flanksource/config-db
Developer first, JSON based configuration management database (CMDB)
https://github.com/flanksource/config-db
cmdb json
Last synced: about 23 hours ago
JSON representation
Developer first, JSON based configuration management database (CMDB)
- Host: GitHub
- URL: https://github.com/flanksource/config-db
- Owner: flanksource
- Created: 2021-12-15T13:42:21.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2026-02-23T07:04:40.000Z (18 days ago)
- Last Synced: 2026-02-23T14:54:50.821Z (18 days ago)
- Topics: cmdb, json
- Language: Go
- Homepage:
- Size: 5.11 MB
- Stars: 21
- Watchers: 3
- Forks: 19
- Open Issues: 143
-
Metadata Files:
- Readme: README.md
- Changelog: changes/fingerprint.go
- Contributing: CONTRIBUTING.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# config-db
**config-db** is developer first, JSON based configuration management database (CMDB)
## Setup
```bash
make build
```
### Run as server
Starting the server will run the migrations and start scraping in background (The `default-schedule` configuration will run scraping every 60 minutes if configuration is not explicitly specified).
```bash
DB_URL=postgres://:@localhost:5432/ ./.bin/config-db serve --db-migrations
```
### Scape config
To explicitly run scraping with a particular configuration:
```bash
./.bin/config-db run -vvv
```
See `fixtures/` for example scraping configurations.
## Principles
* **JSON Based** - Configuration is stored in JSON, with changes recorded as JSON patches that enables highly structured search.
* **SPAM Free** - Not all configuration data is useful, and overly verbose change histories are difficult to navigate.
* **GitOps Ready** - Configuration should be stored in Git, config-db enables the extraction of configuration out of Git repositories with branch/environment awareness.
* **Topology Aware** - Configuration can often have an inheritance or override hierarchy.
## Capabilities
* View and search change history in any dimension (node, zone, environment, application, technology)
* Compare and diff configuration across environments.
## Configuration Sources
* AWS
* [x] EC2 (including trusted advisor, compliance and patch reporting)
* [x] VPC
* [x] IAM
* Azure
* Kubernetes
* [x] Pods
* [x] Secrets / ConfigMaps
* [x] LoadBalancers / Ingress
* [x] Nodes
* Configuration Files
* [ ] YAML/JSON
* [ ] Properties files
* Dependency Graphs
* [ ] pom.xml
* [ ] package.json
* [ ] go.mod
* Infrastructure as Code
* [ ] Terraform
* [ ] CloudFormation
* [ ] Ansible
## Contributing
See [CONTRIBUTING.md](./CONTRIBUTING.md)