sdk

module
v0.18.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 5, 2025 License: MPL-2.0

README

Vault SDK libs

This package provides the sdk package which contains code useful for developing Vault plugins.

Although we try not to break functionality, we reserve the right to reorganize the code at will and may occasionally cause breaks if they are warranted. As such we expect the tag of this module will stay less than v1.0.0.

For any major changes we will try to give advance notice in the CHANGES section of Vault's CHANGELOG.md.

Metrics Emission and Compatibility

This module can emit metrics using either github.com/armon/go-metrics or github.com/hashicorp/go-metrics. Choosing between the libraries is controlled via build tags.

Build Tags

  • armonmetrics - Using this tag will cause metrics to be routed to armon/go-metrics
  • hashicorpmetrics - Using this tag will cause all metrics to be routed to hashicorp/go-metrics

If no build tag is specified, the default behavior is to use armon/go-metrics.

Deprecating armon/go-metrics

Emitting metrics to armon/go-metrics is officially deprecated. Usage of armon/go-metrics will remain the default until mid-2025 with opt-in support continuing to the end of 2025.

Migration To migrate an application currently using the older armon/go-metrics to instead use hashicorp/go-metrics the following should be done.

  1. Upgrade libraries using armon/go-metrics to consume hashicorp/go-metrics/compat instead. This should involve only changing import statements. All repositories in the hashicorp namespace will be migrated by February of 2025.
  2. Update the application's library dependencies to those that have the compatibility layer configured.
  3. Update the application to use hashicorp/go-metrics for configuring metrics export instead of armon/go-metrics
    • Replace all application imports of github.com/armon/go-metrics with github.com/hashicorp/go-metrics
    • Instrument your build system to build with the hashicorpmetrics tag.

Directories

Path Synopsis
database
helper
base62
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
certutil
Package certutil contains helper functions that are mostly used with the PKI backend but can be generally useful.
Package certutil contains helper functions that are mostly used with the PKI backend but can be generally useful.
clientcountutil
Package clientcountutil provides a library to generate activity log data for testing.
Package clientcountutil provides a library to generate activity log data for testing.
kdf
This package is used to implement Key Derivation Functions (KDF) based on the recommendations of NIST SP 800-108.
This package is used to implement Key Derivation Functions (KDF) based on the recommendations of NIST SP 800-108.
metricregistry
Package metricregistry is a helper that allows Vault code or plugins that are compiled into Vault to pre-define any metrics they will emit to go-metrics at init time.
Package metricregistry is a helper that allows Vault code or plugins that are compiled into Vault to pre-define any metrics they will emit to go-metrics at init time.
mlock
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
parseutil
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
password
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
strutil
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
tlsutil
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
DEPRECATED: this has been moved to go-secure-stdlib and will be removed
xor
pb
Package queue provides Vault plugins with a Priority Queue.
Package queue provides Vault plugins with a Priority Queue.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL