INNER CODE UNIT · Go
kvStoreForConfig
bank-vaults/bank-vaults · cmd/bank-vaults/common.go:81
func kvStoreForConfig(ctx context.Context, cfg *viper.Viper) (kv.Service, error) {
switch mode := cfg.GetString(cfgMode); mode {
case cfgModeValueGoogleCloudKMSGCS:
gcs, err := gcs.New(
ctx,
cfg.GetString(cfgGoogleCloudStorageBucket),
cfg.GetString(cfgGoogleCloudStoragePrefix),
)
if err != nil {
return nil, errors.Wrap(err, "error creating google cloud storage kv store")
}
kms, err := gckms.New(ctx,
gcs,
cfg.GetString(cfgGoogleCloudKMSProject),
cfg.GetString(cfgGoogleCloudKMSLocation),
cfg.GetString(cfgGoogleCloudKMSKeyRing),
cfg.GetString(cfgGoogleCloudKMSCryptoKey),