MCPcopy
hub / github.com/bank-vaults/bank-vaults

github.com/bank-vaults/bank-vaults @v1.33.1 sqlite

repository ↗ · DeepWiki ↗ · release v1.33.1 ↗
276 symbols 858 edges 40 files 65 documented · 24%
README

Bank-Vaults logo

Bank-Vaults

Bank-Vaults is now a CNCF Sandbox project.

Open in Gitpod

GitHub Workflow Status OpenSSF Scorecard OpenSSF Best Practices

Bank Vaults is a thick, tricky, shifty right with a fast and intense tube for experienced surfers only, located on Mentawai. Think heavy steel doors, secret unlocking combinations and burly guards with smack-down attitude. Watch out for clean-up sets.


Bank-Vaults is an umbrella project which provides various tools for Cloud Native secret management, including:

  • Bank-Vaults CLI to make configuring Hashicorp Vault easier
  • Vault Operator to make operating Hashicorp Vault on top of Kubernetes easier
  • Secrets Webhook to inject secrets directly into Kubernetes pods
  • Vault SDK to make working with Vault easier in Go
  • and others

Usage

Some of the usage patterns are highlighted through these blog posts:

Documentation

The official documentation is available at https://bank-vaults.dev.

Development

Install Go on your computer then run make deps to install the rest of the dependencies.

Make sure Docker is installed with Compose and Buildx.

Fetch required tools:

make deps

Run project dependencies:

make up

Run the test suite:

make test
make test-integration

Run linters:

make lint # pass -j option to run them in parallel

Some linter violations can automatically be fixed:

make fmt

Build artifacts locally:

make artifacts

Once you are done either stop or tear down dependencies:

make stop

# OR

make down

Credits

Kudos to HashiCorp for open sourcing Vault and making secret management easier and more secure.

License

The project is licensed under the Apache 2.0 License.

Extension points exported contracts — how you extend this code

Service (Interface)
Service defines a basic key-value store. Implementations of this interface may or may not guarantee consistency or secur [17 …
pkg/kv/kv.go
KVService (Interface)
(no doc) [17 implementers]
internal/vault/operator_client.go
Vault (Interface)
Vault is an interface that can be used to attempt to perform actions against a Vault server. [1 implementers]
internal/vault/operator_client.go

Core symbols most depended-on inside this repo

Error
called by 95
pkg/kv/kv.go
configStringVar
called by 38
cmd/bank-vaults/main.go
writeWithWarningCheck
called by 19
internal/vault/operator_client.go
String
called by 17
cmd/template/main.go
NewNotFoundError
called by 13
pkg/kv/kv.go
Run
called by 12
cmd/bank-vaults/metrics.go
configBoolVar
called by 11
cmd/bank-vaults/main.go
keyUnsealForID
called by 10
internal/vault/operator_client.go

Shape

Method 124
Function 107
Struct 39
Interface 4
FuncType 1
TypeAlias 1

Languages

Go100%

Modules by API surface

internal/vault/operator_client.go39 symbols
internal/vault/auth_methods.go19 symbols
internal/vault/identity_groups.go18 symbols
internal/vault/secrets_engines.go14 symbols
pkg/kv/hsm/hsm.go10 symbols
pkg/kv/azurekv/keyvault.go10 symbols
internal/vault/startup_secrets_test.go10 symbols
internal/vault/startup_secrets.go10 symbols
cmd/bank-vaults/main.go9 symbols
pkg/kv/kv.go8 symbols
pkg/kv/awskms/awskms.go7 symbols
internal/vault/policies.go7 symbols

Dependencies from manifests, versioned

cel.dev/exprv0.25.2 · 1×
cloud.google.com/gov0.123.0 · 1×
cloud.google.com/go/auth/oauth2adaptv0.2.8 · 1×
cloud.google.com/go/compute/metadatav0.9.0 · 1×
cloud.google.com/go/kmsv1.31.0 · 1×
cloud.google.com/go/longrunningv1.0.0 · 1×
cloud.google.com/go/monitoringv1.29.0 · 1×
cloud.google.com/go/storagev1.62.2 · 1×
dario.cat/mergov1.0.2 · 1×
emperror.dev/errorsv0.8.1 · 1×

For agents

$ claude mcp add bank-vaults \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact