Always keep your Git repository in sync with your etcd key-value store with auto-sync and push Webhooks.
Whether someone creates, edits or deletes a key of your KV store, you will always be able to know who and what with your Git history.
If you don't want to deal with ACL on your etcd side, simply keep your permissions on your Git repository and only allow people to create Pull Requests that only you can merge.
docker pull blippar/git2etcd
go get github.com/blippar/git2etcd
Key | Description | Default |
---|---|---|
host.listen
|
Host to listen to |
""
|
host.port
|
Port to listen to |
"4242"
|
host.hook
|
Name of the Webhook endpoint |
"hook"
|
repo.url
|
URL of the repo to sync |
"https://github.com/blippar/git2etcd.git"
|
repo.branch
|
Branch of the repo to sync |
"master"
|
repo.path
|
Path where to clone the repo |
"/data"
|
repo.synccycle
|
Number of seconds between 2 automatic syncs (if 0, never syncs) |
3600
|
etcd.hosts
|
List of etcd hosts |
["http://127.0.0.1:2379"]
|
auth.type
|
Type of authentication for Git |
"n/a"
|
auth.ssh.key
|
Path to the SSH private key (if ssh auth type) |
"n/a"
|
auth.ssh.public
|
Path to the SSH public key (if ssh auth type) |
"n/a"
|
auth.http.username
|
Username (if HTTP auth type) |
"n/a"
|
auth.http.password
|
Password (if HTTP auth type) |
"n/a"
|