docs: Migrate link formats (#18696)

* Adding check-legacy-links-format workflow

* Adding test-link-rewrites workflow

* Updating docs-content-check-legacy-links-format hash

* Migrating links to new format

Co-authored-by: Kendall Strautman <kendallstrautman@gmail.com>
This commit is contained in:
Ashlee M Boyer
2023-01-25 18:12:15 -06:00
committed by GitHub
parent dbefdc38fa
commit 06df5b9d95
437 changed files with 1896 additions and 1863 deletions

View File

@@ -18,7 +18,7 @@ A plugin is uniquely identified by its type (one of `secret`, `auth`, or
implies either the built-in plugin or the single unversioned plugin that can
be registered.
See [Plugin Upgrade Procedure](/docs/upgrading/plugins#plugin-upgrade-procedure)
See [Plugin Upgrade Procedure](/vault/docs/upgrading/plugins#plugin-upgrade-procedure)
for details on how to upgrade a built-in plugin in-place.
## Built-In Plugins
@@ -33,12 +33,12 @@ intervention to run.
To run an external plugin, a binary of the plugin is required. Plugin
binaries can be obtained from [releases.hashicorp.com](https://releases.hashicorp.com/)
or they can be [built from source](/docs/plugins/plugin-development#building-a-plugin-from-source).
or they can be [built from source](/vault/docs/plugins/plugin-development#building-a-plugin-from-source).
Vault's external plugins are completely separate, standalone applications that
Vault executes and communicates with over RPC. Each time a Vault secret engine,
auth method, or database plugin is mounted, a new process is spawned. However,
plugins can be made to implement [plugin multiplexing](/docs/plugins/plugin-architecture#plugin-multiplexing)
plugins can be made to implement [plugin multiplexing](/vault/docs/plugins/plugin-architecture#plugin-multiplexing)
to improve performance. Plugin multiplexing allows plugin processes to be
reused across all mounts of a given type.

View File

@@ -45,7 +45,7 @@ loaded when a request that requires the plugin is received by Vault.
### External Plugin Scaling Characteristics
External plugins can leverage [Performance Standbys](/docs/enterprise/performance-standby)
External plugins can leverage [Performance Standbys](/vault/docs/enterprise/performance-standby)
without any explicit action by a plugin author. The default behavior of Vault
Enterprise is to attempt to handle all requests, including requests to plugins,
on performance standbys. If the plugin request makes any attempt to modify
@@ -62,7 +62,7 @@ plugin's RPC server. Plugins make use of the AutoMTLS feature of
[go-plugin](https://www.github.com/hashicorp/go-plugin) which will
automatically negotiate mutual TLS for transport authentication.
The [`api_addr`](/docs/configuration#api_addr) must be set in order for the
The [`api_addr`](/vault/docs/configuration#api_addr) must be set in order for the
plugin process to establish communication with the Vault server during mount
time. If the storage backend has HA enabled and supports automatic host address
detection (e.g. Consul), Vault will automatically attempt to determine the
@@ -81,7 +81,7 @@ plugin directory and the plugin catalog entry.
### Plugin Directory
The plugin directory is a configuration option of Vault and can be specified in
the [configuration file](/docs/configuration).
the [configuration file](/vault/docs/configuration).
This setting specifies a directory in which all plugin binaries must live;
_this value cannot be a symbolic link_. A plugin
cannot be added to Vault unless it exists in the plugin directory. There is no
@@ -100,7 +100,7 @@ ensure the executable referenced in the command exists in the plugin
directory. When added to the catalog, the plugin is not automatically executed,
but becomes visible to backends and can be executed by them. For more
information on the plugin catalog please see the [Plugin Catalog API
docs](/api-docs/system/plugins-catalog).
docs](/vault/api-docs/system/plugins-catalog).
An example of plugin registration in current versions of Vault:
@@ -129,17 +129,17 @@ When a backend wants to run a plugin, it first looks up the plugin, by name, in
the catalog. It then checks the executable's SHA256 sum against the one
configured in the plugin catalog. Finally Vault runs the command configured in
the catalog, sending along the JWT formatted response wrapping token and mlock
settings. Like Vault, plugins support [the use of mlock when available](/docs/configuration#disable_mlock).
settings. Like Vault, plugins support [the use of mlock when available](/vault/docs/configuration#disable_mlock).
~> Note: If Vault is configured with `mlock` enabled, then the Vault executable
and each plugin executable in your [plugins directory](/docs/plugins/plugin-architecture#plugin-directory)
and each plugin executable in your [plugins directory](/vault/docs/plugins/plugin-architecture#plugin-directory)
must be given the ability to use the `mlock` syscall.
### Plugin Upgrades
External plugins may be updated by registering and reloading them. More details
on the upgrade procedure can be found in
[Upgrading Vault Plugins](/docs/upgrading/plugins).
[Upgrading Vault Plugins](/vault/docs/upgrading/plugins).
## Plugin Multiplexing
@@ -157,8 +157,8 @@ multiplexing. To use a non-multiplexed plugin, run an older version of the
plugin, i.e., the plugin calls the `Serve` function.
More resources on implementing plugin multiplexing:
* [Database secrets engines](/docs/secrets/databases/custom#serving-a-plugin-with-multiplexing)
* [Secrets engines and auth methods](/docs/plugins/plugin-development)
* [Database secrets engines](/vault/docs/secrets/databases/custom#serving-a-plugin-with-multiplexing)
* [Secrets engines and auth methods](/vault/docs/plugins/plugin-development)
## Troubleshooting

View File

@@ -88,24 +88,24 @@ Let's take a closer look at a snippet from the above main package.
The call to `plugin.ServeMultiplex` ensures that the plugin will use
Vault's [plugin
multiplexing](/docs/plugins/plugin-architecture#plugin-multiplexing) feature.
multiplexing](/vault/docs/plugins/plugin-architecture#plugin-multiplexing) feature.
However, this plugin will not be multiplexed if it is run by a version of Vault
that does not support multiplexing. Vault will simply fall back to a plugin
version that it can run. Additionally, we set the `TLSProviderFunc` to ensure
that our plugin is backwards compatible with versions of Vault that do not
support automatic mutual TLS for secure [plugin
communication](/docs/plugins/plugin-architecture#plugin-communication). If you
communication](/vault/docs/plugins/plugin-architecture#plugin-communication). If you
are certain your plugin does not need backwards compatibility, this field can
be omitted.
[api_addr]: /docs/configuration#api_addr
[api_addr]: /vault/docs/configuration#api_addr
## Building a Plugin from Source
To build a plugin from source, first navigate to the location holding the
desired plugin version. Next, run `go build` to obtain a new binary for the
plugin. Finally,
[register](/docs/plugins/plugin-architecture#plugin-registration) the
[register](/vault/docs/plugins/plugin-architecture#plugin-registration) the
plugin and enable it.
## Plugin Development - Resources
@@ -117,10 +117,10 @@ tutorial.
Other HashiCorp plugin development resources:
* [vault-auth-plugin-example](https://github.com/hashicorp/vault-auth-plugin-example)
* [Custom Secrets Engines](https://learn.hashicorp.com/collections/vault/custom-secrets-engine)
* [Custom Secrets Engines](/vault/tutorials/custom-secrets-engine)
### Plugin Development - Resources - Community
See the [Plugin Portal](/docs/plugins/plugin-portal#community) to find
See the [Plugin Portal](/vault/docs/plugins/plugin-portal#community) to find
Community plugin examples/guides developed by community members. HashiCorp does
not validate these for correctness.

View File

@@ -18,12 +18,12 @@ backend has HA enabled and supports automatic host address detection (e.g.
Consul), Vault will automatically attempt to determine the `api_addr` as well.
Detailed information regarding the plugin system can be found in the
[internals documentation](/docs/plugins).
[internals documentation](/vault/docs/plugins).
## Registering External Plugins
Before an external plugin can be mounted, it needs to be
[registered](/docs/plugins/plugin-architecture#plugin-registration) in the
[registered](/vault/docs/plugins/plugin-architecture#plugin-registration) in the
plugin catalog to ensure the plugin invoked by Vault is authentic and maintains
integrity:
@@ -65,5 +65,5 @@ $ vault secrets disable my-secrets
Upgrade instructions can be found in the [Upgrading Plugins - Guides][upgrading_plugins]
page.
[api_addr]: /docs/configuration#api_addr
[upgrading_plugins]: /docs/upgrading/plugins
[api_addr]: /vault/docs/configuration#api_addr
[upgrading_plugins]: /vault/docs/upgrading/plugins

View File

@@ -7,10 +7,10 @@ description: A curated collection of official, partner, and community Vault plug
# Plugin Portal
This page contains a curated collection of official, partner, and community
[Vault plugins](/docs/plugins).
[Vault plugins](/vault/docs/plugins).
For more information about plugin development, refer to this [documentation
section](/docs/plugins/plugin-development). In addition, the [Custom Secrets Engines](https://learn.hashicorp.com/collections/vault/custom-secrets-engine) tutorial series demonstrates the plugin development workflow in more detail.
section](/vault/docs/plugins/plugin-development). In addition, the [Custom Secrets Engines](/vault/tutorials/custom-secrets-engine) tutorial series demonstrates the plugin development workflow in more detail.
## Official
@@ -22,28 +22,28 @@ if necessary.
If a plugin exists separately under its own repository, follow the instructions
within that repository to develop, test, and build the plugin. If a repository
exists within the Vault repository, the plugin can be built as instructed in
[here](/docs/plugins#built-in-plugins).
[here](/vault/docs/plugins#built-in-plugins).
### Auth
<Columns count={2}>
- [AliCloud](https://github.com/hashicorp/vault-plugin-auth-alicloud)
- [AppRole](/api-docs/auth/approle)
- [Amazon Web Services (AWS)](/api-docs/auth/aws)
- [AppRole](/vault/api-docs/auth/approle)
- [Amazon Web Services (AWS)](/vault/api-docs/auth/aws)
- [Azure](https://github.com/hashicorp/vault-plugin-auth-azure)
- [Centrify](https://github.com/hashicorp/vault-plugin-auth-centrify)
- [Cloud Foundry](https://github.com/hashicorp/vault-plugin-auth-cf)
- [GitHub](/api-docs/auth/github)
- [GitHub](/vault/api-docs/auth/github)
- [Google Cloud Platform (GCP)](https://github.com/hashicorp/vault-plugin-auth-gcp)
- [JWT/OIDC](https://github.com/hashicorp/vault-plugin-auth-jwt)
- [Kerberos](https://github.com/hashicorp/vault-plugin-auth-kerberos)
- [Kubernetes](https://github.com/hashicorp/vault-plugin-auth-kubernetes)
- [Okta](/api-docs/auth/okta)
- [Okta](/vault/api-docs/auth/okta)
- [Oracle Cloud Infrastructure (OCI)](https://github.com/hashicorp/vault-plugin-auth-oci)
- [RADIUS](/api-docs/auth/radius)
- [TLS Certificates](/api-docs/auth/cert)
- [Username/Password](/api-docs/auth/userpass)
- [RADIUS](/vault/api-docs/auth/radius)
- [TLS Certificates](/vault/api-docs/auth/cert)
- [Username/Password](/vault/api-docs/auth/userpass)
</Columns>
@@ -51,20 +51,20 @@ exists within the Vault repository, the plugin can be built as instructed in
<Columns count={2}>
- [Cassandra](/api-docs/secret/databases/cassandra)
- [Cassandra](/vault/api-docs/secret/databases/cassandra)
- [Couchbase](https://github.com/hashicorp/vault-plugin-database-couchbase)
- [Elasticsearch](https://github.com/hashicorp/vault-plugin-database-elasticsearch)
- [InfluxDB](/api-docs/secret/databases/influxdb)
- [HanaDB](/api-docs/secret/databases/hanadb)
- [MongoDB](/api-docs/secret/databases/mongodb)
- [InfluxDB](/vault/api-docs/secret/databases/influxdb)
- [HanaDB](/vault/api-docs/secret/databases/hanadb)
- [MongoDB](/vault/api-docs/secret/databases/mongodb)
- [MongoDB Atlas](https://github.com/hashicorp/vault-plugin-database-mongodbatlas)
- [MSSQL](/api-docs/secret/databases/mssql)
- [MySQL/MariaDB](/api-docs/secret/databases/mysql-maria)
- [MSSQL](/vault/api-docs/secret/databases/mssql)
- [MySQL/MariaDB](/vault/api-docs/secret/databases/mysql-maria)
- [Oracle Database](https://github.com/hashicorp/vault-plugin-database-oracle) <Tag title='external' color='yellow' />
- [PostgreSQL](/api-docs/secret/databases/postgresql)
- [Redis](/api-docs/secret/databases/redis)
- [Redis ElastiCache](/api-docs/secret/databases/rediselasticache)
- [Redshift](/api-docs/secret/databases/redshift)
- [PostgreSQL](/vault/api-docs/secret/databases/postgresql)
- [Redis](/vault/api-docs/secret/databases/redis)
- [Redis ElastiCache](/vault/api-docs/secret/databases/rediselasticache)
- [Redshift](/vault/api-docs/secret/databases/redshift)
- [Snowflake](https://github.com/hashicorp/vault-plugin-database-snowflake)
</Columns>
@@ -75,24 +75,24 @@ exists within the Vault repository, the plugin can be built as instructed in
- [Active Directory](https://github.com/hashicorp/vault-plugin-secrets-ad)
- [AliCloud](https://github.com/hashicorp/vault-plugin-secrets-alicloud)
- [Amazon Web Services AWS](/api-docs/secret/aws)
- [Amazon Web Services AWS](/vault/api-docs/secret/aws)
- [Azure](https://github.com/hashicorp/vault-plugin-secrets-azure)
- [Consul](/api-docs/secret/consul)
- [Consul](/vault/api-docs/secret/consul)
- [Google Cloud Platform (GCP)](https://github.com/hashicorp/vault-plugin-secrets-gcp)
- [GCP KMS](https://github.com/hashicorp/vault-plugin-secrets-gcpkms)
- [KMIP](/api-docs/secret/kmip) <sup>ENTERPRISE</sup>
- [Key Management](/api-docs/secret/key-management) <sup>ENTERPRISE</sup>
- [KMIP](/vault/api-docs/secret/kmip) <sup>ENTERPRISE</sup>
- [Key Management](/vault/api-docs/secret/key-management) <sup>ENTERPRISE</sup>
- [Key/Value (KV)](https://github.com/hashicorp/vault-plugin-secrets-kv)
- [Kubernetes](https://github.com/hashicorp/vault-plugin-secrets-kubernetes)
- [MongoDB Atlas](https://github.com/hashicorp/vault-plugin-secrets-mongodbatlas)
- [Nomad](/api-docs/secret/nomad)
- [Nomad](/vault/api-docs/secret/nomad)
- [LDAP](https://github.com/hashicorp/vault-plugin-secrets-openldap)
- [PKI](/api-docs/secret/pki)
- [RabbitMQ](/api-docs/secret/rabbitmq)
- [SSH](/api-docs/secret/ssh)
- [TOTP](/api-docs/secret/totp)
- [Transform](/api-docs/secret/transform) <sup>ENTERPRISE</sup>
- [Transit](/api-docs/secret/transit)
- [PKI](/vault/api-docs/secret/pki)
- [RabbitMQ](/vault/api-docs/secret/rabbitmq)
- [SSH](/vault/api-docs/secret/ssh)
- [TOTP](/vault/api-docs/secret/totp)
- [Transform](/vault/api-docs/secret/transform) <sup>ENTERPRISE</sup>
- [Transit](/vault/api-docs/secret/transit)
</Columns>