{"id":19839334,"url":"https://github.com/redislabs/vault-plugin-database-redis-enterprise","last_synced_at":"2026-03-13T23:32:53.094Z","repository":{"id":47579995,"uuid":"325342144","full_name":"RedisLabs/vault-plugin-database-redis-enterprise","owner":"RedisLabs","description":"HashiCorp Vault Plugins for Redis Enterprise","archived":false,"fork":false,"pushed_at":"2024-01-28T10:53:00.000Z","size":628,"stargazers_count":13,"open_issues_count":1,"forks_count":7,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-06-21T03:20:08.374Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RedisLabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-29T17:02:20.000Z","updated_at":"2024-01-26T13:06:01.000Z","dependencies_parsed_at":"2024-06-20T01:45:30.666Z","dependency_job_id":"6323eb6b-b753-440d-8f27-203e2b3ade66","html_url":"https://github.com/RedisLabs/vault-plugin-database-redis-enterprise","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedisLabs%2Fvault-plugin-database-redis-enterprise","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedisLabs%2Fvault-plugin-database-redis-enterprise/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedisLabs%2Fvault-plugin-database-redis-enterprise/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedisLabs%2Fvault-plugin-database-redis-enterprise/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RedisLabs","download_url":"https://codeload.github.com/RedisLabs/vault-plugin-database-redis-enterprise/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224271765,"owners_count":17284035,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T12:21:51.376Z","updated_at":"2026-03-13T23:32:53.029Z","avatar_url":"https://github.com/RedisLabs.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vault Database Secrets Engine - Redis Enterprise Plugin\n\nA Redis Enterprise plugin for the HashiCorp Vault Database Secrets Engine.\n\nThis is a standalone backend plugin for use with Hashicorp Vault.\nThis plugin generates credentials for use with Redis Enterprise Database clusters.\n\n## Quick Links\n- [Redis Enterprise Docs](https://redislabs.com/redis-enterprise-software/overview)\n- [Vault Website](https://www.vaultproject.io) - primarily the area focused on\n  [Custom Database Secrets Engine](https://www.vaultproject.io/docs/secrets/databases/custom)\n- [Vault Github Project](https://www.github.com/hashicorp/vault)\n- [Plugin Architecture](ARCHITECTURE.md)\n\n## Guides\n- [Using the plugin with Redis Enterprise](docs/guides/using-the-plugin-with-redis-ent.md)\n- [Using the plugin on K8s](docs/guides/using-the-plugin-on-k8s.md)\n- [Vault Deployment](docs/guides/vault-deployment.md)\n\n## Development\n\nIf you wish to work on this plugin, you'll first need [Go](https://www.golang.org) installed on your machine\n(version 1.21.5+ is *required*).\n\nMake sure Go is properly installed, including setting up a [GOPATH](https://golang.org/doc/code.html#GOPATH).\n\nTo run the tests locally you will need to have [Docker](https://docs.docker.com/get-docker) installed on your machine,\nor have access to a Kubernetes cluster such as by using [kind](https://kind.sigs.k8s.io/).\n\nClone this repository:\n\n```sh\n$ git clone https://github.com/RedisLabs/vault-plugin-database-redis-enterprise\n$ cd vault-plugin-database-redis-enterprise\n```\n\nor use `go get github.com/RedisLabs/vault-plugin-database-redis-enterprise`\n\n### Building\n\nTo compile this plugin, run `make build`.  This will put the plugin binary in a local `bin` directory.\nBy default, this will generate a binary for your local platform and a binary for `linux`/`amd64`.\n\n```sh\n$ make build\n```\n\n### Testing\n\nBefore being able to run the tests, you need to have access to a running Redis Enterprise Cluster.  This can either be\ndone by using the [Redis Enterprise Operator](https://docs.redislabs.com/latest/platforms/kubernetes/) to deploy Redis\ninto Kubernetes, or by using the [Redis Enterprise container](https://hub.docker.com/r/redislabs/redis) which can be\nstarted up locally by running `make start-docker`.\n\nTo execute the tests run `make` or `make test`.\n```sh\n$ make test\n```\n\nThe plugin's makefile contains default values to locate a Redis Enterprise cluster provisioned through\nthe makefile.  The following example shows how these values can be overridden to locate your own cluster.\n\n```sh\n$ export TEST_USERNAME=admin\n$ export TEST_PASSWORD=xyzzyxyzzy\n$ export TEST_DB_NAME=mydb\n$ export TEST_DB_URL=https://localhost:9443\n\n$ make test\n```\n\n### Running Vault + Plugin + Redis Enterprise\n\nThe repo provides a means to run a local Vault server configured with the Vault Plugin and backed by a Redis Enterprise\ncluster.  To start the Vault server and Redis Enterprise cluster run `make start-docker` followed by `make configure-docker`\nto configure Vault with a locally built plugin binary.\n\n```sh\n$ make start-docker\n\ncd bootstrap \u0026\u0026 docker-compose up --detach\nCreating network \"bootstrap_vault\" with the default driver\nCreating bootstrap_v_1  ... done\nCreating bootstrap_rp_1 ... done\n./bootstrap/redis-setup.sh -u admin -p xyzzyxyzzy -db mydb\nwaiting for the container to finish starting up\n...\nwaiting for the container to finish starting up\nwaiting for cluster bootstrap\n...\nwaiting for cluster bootstrap\nwaiting for database setup\ndone\n\n$ make configure-docker\n...\n```\n\nA docker compose file representing a Redis Enterprise cluster and a Vault server will be provisioned.\nOnce setup is complete run `make test` to execute the acceptance test against the local containers.\n\n```sh\n$ make test\n```\n\nAfter local testing is complete the docker containers can be removed through the `make stop-docker`.\n\n```sh\n$ make stop-docker\n\ncd bootstrap \u0026\u0026 docker-compose down\nStopping bootstrap_rp_1 ... done\nStopping bootstrap_v_1  ... done\nRemoving bootstrap_rp_1 ... done\nRemoving bootstrap_v_1  ... done\nRemoving network bootstrap_vault\n```\n\n### Building for Multiple Architectures\n\nVault operates across a number of different architectures and as a result Vault plugins must also be built to execute\nacross the same architectures.  This repo supports building the appropriate binaries through [goreleaser](https://github.com/goreleaser/goreleaser)\nand these steps are coordinated through the repo's GitHub Action workflows.  To test changes to the goreleaser\nconfiguration or to build the different binaries locally the following command can be executed.\n\n```sh\n$ goreleaser --snapshot --skip-publish --rm-dist\n```\n\nA `dist` directory will be created and there will be one binary for each OS/Arch combination defined in the root\n`goreleaser.yml` file.  A SHA256SUMS file will also be produced with entries for each binary.  \nThe SHA values can be used when installing the plugin to a running Vault server.\n\n**Note:**  If you are running Vault via Docker the plugin architecture if likely to be `linux/amd64`.\nThis binary is also produced through the `make build`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredislabs%2Fvault-plugin-database-redis-enterprise","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredislabs%2Fvault-plugin-database-redis-enterprise","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredislabs%2Fvault-plugin-database-redis-enterprise/lists"}