lingrino/vaku

View on GitHub
README.md

Summary

Maintainability
Test Coverage
# Vaku

[![Vaku](www/assets/images/logo-vaku-sm.png?raw=true)](www/assets/logo-vaku-sm.png "Vaku")

[![PkgGoDev](https://pkg.go.dev/badge/github.com/lingrino/vaku/v2/api)](https://pkg.go.dev/github.com/lingrino/vaku/v2/api)
[![goreportcard](https://goreportcard.com/badge/github.com/lingrino/vaku)](https://goreportcard.com/report/github.com/lingrino/vaku)

Vaku is a CLI and API for running path- and folder-based operations on the Vault Key/Value secrets engine. Vaku extends the existing Vault CLI and API by allowing you to run the same path-based list/read/write/delete functions on folders as well. Vaku also lets you search, copy, and move both secrets and folders.

## Installation

### Homebrew

```shell
brew install lingrino/tap/vaku
```

### Scoop

```shell
scoop bucket add vaku https://github.com/lingrino/scoop-vaku.git
scoop install vaku
```

### Docker

```shell
docker run ghcr.io/lingrino/vaku --help
```

### Binary

Download the latest binary or deb/rpm for your os/arch from the [releases page](https://github.com/lingrino/vaku/releases).

## Usage

Vaku CLI documentation can be found on the command line using either `vaku help [cmd]` or `vaku [cmd] --help`. The same documentation is also available in markdown form in the [docs/cli](docs/cli/vaku.md) folder.

## API

Documentation for the Vaku API is on [pkg.go.dev](https://pkg.go.dev/github.com/lingrino/vaku/v2/api).

## Contributing

Suggestions and contributions of all kinds are welcome! If there is functionality you would like to see in Vaku please open an Issue or Pull Request and I will be sure to address it.

## Tests

Vaku is well tested and uses only the standard go testing tools.

```shell
$ go test -cover -race ./...
ok  github.com/lingrino/vaku/v2      0.095s coverage: 100.0% of statements
ok  github.com/lingrino/vaku/v2/api 12.065s coverage: 100.0% of statements
ok  github.com/lingrino/vaku/v2/cmd  0.168s coverage: 100.0% of statements
```