Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/DelineaXPM/dsv-cli
⚡ A cross-platform swiss army knife tool for DevOps secrets management.
https://github.com/DelineaXPM/dsv-cli
devops dsv secrets-management vault
Last synced: 3 months ago
JSON representation
⚡ A cross-platform swiss army knife tool for DevOps secrets management.
- Host: GitHub
- URL: https://github.com/DelineaXPM/dsv-cli
- Owner: DelineaXPM
- License: apache-2.0
- Created: 2020-12-15T15:17:14.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-08-15T16:49:40.000Z (3 months ago)
- Last Synced: 2024-08-16T15:16:47.748Z (3 months ago)
- Topics: devops, dsv, secrets-management, vault
- Language: Go
- Homepage: https://delinea.com/products/devops-secrets-management-vault
- Size: 16 MB
- Stars: 21
- Watchers: 7
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Delinea DevOps Secrets Vault CLI
An automation tool for the management of credentials for applications, databases, CI/CD tools, and services.
![landing-demo](docs/vhs/assets/landing-demo.gif)
## Getting Started
- [Pre-built Binaries][prebuilt-binaries]
- [Developer](docs/developer): instructions on running tests, local tooling, and other resources.
- [DSV Documentation](https://docs.delinea.com/dsv/current?ref=githubrepo)## Quick Start Install
ℹ️ Any Platform
- Use with Docker.
![Docker Image Version (latest semver)](https://img.shields.io/docker/v/delineaxpm/dsv-cli?style=for-the-badge)
Examples:
```shell
# Make sure these files exists already so they aren't created by docker with the incorrect permissions
mkdir $HOME/.thy/
touch $HOME/.dsv.yml# Use CLI and have the credentials mounted to home
docker run --rm -it \
-v ${HOME}/.thy/:/home/nonroot/.thy/ \
-v ${HOME}/.dsv.yml:/home/nonroot/.dsv.yml \
delineaxpm/dsv-cli:latest --version version
# Example reading config
docker run --rm -it \
--user 65532 \
-v ${HOME}/.thy/:/home/nonroot/.thy/ \
-v ${HOME}/.dsv.yml:/home/nonroot/.dsv.yml \
delineaxpm/dsv-cli:latest cli-config read# Wrap in a shell function for easier invoking via your zsh or bash profile.
function dsv() {
docker run --rm -it \
-v ${HOME}/.thy/:/home/nonroot/.thy/ \
-v ${HOME}/.dsv.yml:/home/nonroot/.dsv.yml \
delineaxpm/dsv-cli:latest "$@"
}
```- 🔨 Download from [prebuilt-binaries] manually.
- [Aquaproject][aqua-project]: `aqua generate 'DelineaXPM/dsv-cli' -i` and update your `aqua.yml` file.
- PowerShell Cross-Platform (pwsh) with console selector (move to directory in `$ENV:PATH` for it to be universally discoverable):```powershell
if (-not (Get-InstalledModule Microsoft.PowerShell.ConsoleGuiTools -ErrorAction SilentlyContinue))
{
Install-Module Microsoft.PowerShell.ConsoleGuiTools -Force -Confirm:$false -Scope CurrentUser
}$json=(Invoke-WebRequest -ContentType 'application/json' -Uri 'https://s3.amazonaws.com/dsv.secretsvaultcloud.com/cli-version.json' -UseBasicParsing).Content | ConvertFrom-Json
$download=$json.Links | get-member -Type NoteProperty | ForEach-Object {
[pscustomobject]@{
FileName = $_.Name
DownloadLink = $json.Links.$($_.Name)
OutFileName = ($json.Links.$($_.Name) -split '/')[-1]
}} | Out-ConsoleGridView -Title 'Delinea DevOps Secrets Vault CLI'
$download | ForEach-Object { Invoke-WebRequest -Uri $_.DownloadLink -OutFile $_.OutFileName -UseBasicParsing }
```ℹ️ Mac & Linux
## Mac & Linux
- [aqua-project] provides a binary tool manager similar to Brew.
- 🍺 Homebrew: `brew install DelineaXPM/tap/dsv-cli`.
- Upgrade with: `brew update && brew upgrade dsv-cli`
- Via Go (this will take longer than a binary install since it will build it):
- run:```shell
go install github.com/DelineaXPM/dsv-cli@latest
mv $(go env GOPATH)/bin/dsv-cli $(go env GOPATH)/bin/dsv
echo "dsv is installed at: $(go env GOPATH)/bin"
echo "Add to your profile to ensure Go binaries are in path by using:\n\n"
echo "export PATH=\"\$(go env GOPATH)/bin:\${PATH}\"\n\n"
echo "Current DSV Binaries installed: \n$(which -a dsv)"
```- Curl (requires Go installed):
```shell
go install github.com/mikefarah/yq/v4@latest
version=$(curl -sb -H "Accept: application/json" https://s3.amazonaws.com/dsv.secretsvaultcloud.com/cli-version.json | $(go env GOPATH)/bin/yq '.latest')
echo "version: $version"
curl -fSsl https://dsv.secretsvaultcloud.com/downloads/cli/$version/dsv-darwin-x64 -o dsv && chmod +x ./dsv && sudo mv ./dsv /usr/local/bin
```- Curl (no Go required). Requires specifying the version:
```shell
curl -fSsl https://dsv.secretsvaultcloud.com/downloads/cli/1.39.5/dsv-darwin-x64 -o dsv && chmod +x ./dsv && sudo mv ./dsv /usr/local/bin
```> **note**: It is not required to install to `/usr/local/bin`. If you choose to install to another location you'll want to make sure it's added to your PATH for the tool to be found.
ℹ️ Linux Only
[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/dsv-cli)
- Via cli: `snap install dsv-cli`.
- At this time add alias to your profile with: `alias dsv='dsv-cli', as the snap name is not aliased.
- Note: Snaps update automatically (4 times a day as the [default behavior as of 2023-01](https://snapcraft.io/docs/keeping-snaps-up-to-date)), but this can be run manually via `snap refresh`.ℹ️ Windows
### Windows
- Scoop:
- First time setup: `scoop bucket add DelineaXPM https://github.com/DelineaXPM/scoop-bucket.git`.
- Install: `scoop install DelineaXPM/dsv-cli`.
- Update: `scoop update DelineaXPM/dsv-cli`.
- Using curl in Windows PowerShell (for cross-platform pwsh see top section) and move to whatever directory you want:```powershell
$json=(Invoke-WebRequest -ContentType 'application/json' -Uri 'https://s3.amazonaws.com/dsv.secretsvaultcloud.com/cli-version.json' -UseBasicParsing).Content | ConvertFrom-Json
# Change this to windows/386 if required to install x86.
Invoke-WebRequest -Uri $json.links.'windows/amd64' -OutFile 'dsv.exe' -UseBasicParsing
```## License
See [LICENSE](https://github.com/DelineaXPM/dsv-cli/blob/main/LICENSE) for the full license text.
## Contributors
Thycotic-Bot
Sheldonhull
Andrii Zakurenyi
Mariia
Bill Hamilton
Tom Dillenbeck
[prebuilt-binaries]: https://dsv.secretsvaultcloud.com/downloads
[aqua-project]: https://aquaproj.github.io/