Skip to content

Releases: alokstech/etcd-extract

v1.1.1 — Zero field_N, kubectl-identical YAML

Choose a tag to compare

@alokstech alokstech released this 24 Aug 16:53
5c3f767

What's New

Zero field_N across all databases

  • Added field mappings for OAuthAccessToken, OAuthClientAuthorization, and NetworkPolicy status
  • Fixed Ingress.spec field ordering (protobuf tags were swapped vs actual definitions)
  • Added complete Ingress sub-path mappings including v1beta1 backend support
  • Added DeploymentConfig triggers repeated-wrapper decoding

kubectl-identical YAML output

  • Switched to sigs.k8s.io/yaml (the library kubectl uses) for identical list indentation style
  • 2-space indentation matching kubectl get -o yaml

Fix inline LocalObjectReference decoding

  • Fixed secretKeyRef.name and configMapKeyRef.name showing as |2-\n\nvalue block scalars instead of plain strings
  • Protobuf sub-message framing bytes were being interpreted as newline characters

Web GUI improvements

  • Resizable sidebar (drag to expand for long resource names)
  • Resource search bar with auto-expand of matching sections
  • Collapsible Cluster/Namespaced sections with resource counts

Downloads

Platform Architecture File
Linux amd64 etcd-extract-v1.1.1-linux-amd64.tar.gz
Linux arm64 etcd-extract-v1.1.1-linux-arm64.tar.gz
macOS amd64 (Intel) etcd-extract-v1.1.1-macos-amd64.tar.gz
macOS arm64 (Apple Silicon) etcd-extract-v1.1.1-macos-arm64.tar.gz
Windows amd64 etcd-extract-v1.1.1-windows-amd64.zip

v1.1.0 — Web GUI & Deep Protobuf Field Resolution

Choose a tag to compare

@alokstech alokstech released this 17 Aug 15:31
7191686

What's New

Web GUI

  • File upload UI with drag-and-drop and click-to-browse support
  • Stylized brand logo with database icon

Protobuf Decoding

  • Deep nested field name resolution — containers, ports, env, volumeMounts, probes, security contexts, node info, and 60+ Kubernetes sub-message types now show proper field names instead of field_N
  • Quantity detection — values like capacity: storage: 20Gi render cleanly instead of field_1: 20Gi
  • Proper field names for all common Kubernetes types (Deployments, Services, Nodes, PVs, RBAC, etc.)

Fixes

  • Fix cluster-scoped resources missing spec/status sections
  • Hide namespace column for cluster-scoped resources
  • Fix empty rows for cluster-scoped resources with dots in names (e.g. 192.168.1.139)
  • Fix second positional argument not working as object name filter
  • Fix Change button not resetting upload view state
  • Split API group resources by sub-resource type (e.g. imageregistry.operator.openshift.io/configs vs /imagepruners)

Installation

Download the archive for your platform, extract, and run:

tar -xzf etcd-extract-v1.1.0-linux-amd64.tar.gz
./etcd-extract --serve ~/path/to/db
Platform Archive
Linux (amd64) etcd-extract-v1.1.0-linux-amd64.tar.gz
Linux (arm64) etcd-extract-v1.1.0-linux-arm64.tar.gz
macOS (Intel) etcd-extract-v1.1.0-macos-amd64.tar.gz
macOS (Apple Silicon) etcd-extract-v1.1.0-macos-arm64.tar.gz
Windows (amd64) etcd-extract-v1.1.0-windows-amd64.zip

etcd-extract v1.0.0

Choose a tag to compare

@alokstech alokstech released this 09 Aug 10:58

etcd-extract v1.0.0

Static Linux x86_64 binary — no dependencies required.

Features

  • Extract Kubernetes objects from etcd v3 database files
  • Supports both JSON and Kubernetes protobuf-encoded objects
  • Full decoding of ConfigMaps, Secrets, and ObjectMeta
  • List resources by type, namespace, or both
  • YAML and JSON output formats

Usage

chmod +x etcd-extract

# List all resource types
./etcd-extract --list db.etcd

# List configmaps in a namespace
./etcd-extract --list --resource configmaps --ns openshift-config db.etcd

# Extract a specific configmap
./etcd-extract --resource configmaps --ns openshift-config --name etcd-ca-bundle db.etcd

See README for full documentation.