Skip to content

SecretSync

SecretSync (secretssync) is a Go binary that synchronizes secrets from HashiCorp Vault to cloud provider secret stores (AWS Secrets Manager, GCP Secret Manager).

Terminal window
go install github.com/jbcom/extended-data-library/packages/secretssync@latest
Terminal window
# Sync secrets from Vault to AWS Secrets Manager
secretssync --source vault --target aws \
--vault-addr https://vault.example.com \
--vault-path secret/data/myapp \
--aws-region us-east-1
# Sync to GCP Secret Manager
secretssync --source vault --target gcp \
--vault-addr https://vault.example.com \
--vault-path secret/data/myapp \
--gcp-project my-project

SecretSync reads configuration from environment variables or a YAML config file.

VariableDescription
VAULT_ADDRHashiCorp Vault server URL
VAULT_TOKENVault authentication token
VAULT_ROLE_IDAppRole role ID (alternative auth)
VAULT_SECRET_IDAppRole secret ID (alternative auth)
AWS_REGIONTarget AWS region
GCP_PROJECTTarget GCP project ID