* rough draft * add some stuff for dynamic secrets * add some more helpers and sample tests * new helpers, new tests, refactoring * Add Basic Smoke SDK Scenario (#11678) * Add simple test for stepdown election * Add a smoke_sdk scenario * add script to run tests locally * fix up a few things * VAULT-39746 - Add Tests to Smoke SDK and Cloud Scenarios (#11795) * Add some go verification steps in enos sdk test run script * formatting * Add a smoke_sdk scenario userpass secret engine create test (#11808) * Add a smoke_sdk scenario userpass secret engine create test * Add the some additional tests * Add Smoke tests to Cloud Scenario (#11876) * Add a smoke_sdk scenario userpass secret engine create test * Add the some additional tests * Add smoke testing to cloud * Add test results to output and test filtering * comment * fix test * fix the smoke scenario * Address some various feedback * missed cleanup * remove node count dependency in the tests * Fix test perms * Adjust the testing and clean them up a bit * formatting * fmt * fmt2 * more fmt * formatting * tryagain * remove the docker/hcp divide * use the SHA as ID * adjust perms * Add transit test * skip blackbox testing in test-go * copywrite * Apply suggestion from @brewgator * Add godoc * grep cleanup --------- Co-authored-by: Josh Black <raskchanky@gmail.com> Co-authored-by: Luis (LT) Carbonell <lt.carbonell@hashicorp.com>
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 toarmon/go-metricshashicorpmetrics- Using this tag will cause all metrics to be routed tohashicorp/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.
- Upgrade libraries using
armon/go-metricsto consumehashicorp/go-metrics/compatinstead. This should involve only changing import statements. All repositories in thehashicorpnamespace will be migrated by February of 2025. - Update the application's library dependencies to those that have the compatibility layer configured.
- Update the application to use
hashicorp/go-metricsfor configuring metrics export instead ofarmon/go-metrics- Replace all application imports of
github.com/armon/go-metricswithgithub.com/hashicorp/go-metrics - Instrument your build system to build with the
hashicorpmetricstag.
- Replace all application imports of