Build Status

share-secrets-safely (sheesy) is a solution for managing shared secrets in teams and build pipelines.

Like pass, sy allows to setup a vault to store secrets, and share them with your team members and tooling. However, it wants to be a one-stop-shop in a single binary without any dependencies except for a gpg installation, helping users to work with the gpg toolchain and workaround peculiarities.

asciicast

Installation

Please note that in order to use sy, you will need a working installation of gpg.

Via Releases

Navigate to the releases page and download a release binary suitable for your system. A full example for linux looks like this:

```bash curl -Lo sy.tar.gz https://github.com/Byron/share-secrets-safely/releases/download/1.0.0/sy-linux-musl-x86_64.tar.gz tar xzf sy.tar.gz

run sy - even better when in your PATH

./sy ```

Here is a recording of how this can look like.

Via Cargo

If you already have cargo available, installation is as easy as the following:

bash cargo install sy-cli

This installation should be preferred as it makes updating the binary much easier. If you don't have cargo yet, you can install it via instructions on rustup.rs.

Getting Started

Project Goals

Non-Goals

Roadmap

Add the pass subcommand

sy aims to be as usable as possible, and breaks compatiblity were needed to achieve that. However, to allow people to leverage its improved portability thanks to it being self-contained, it should be possible to let it act as a stand-in for pass.

Even though its output won't be matched, its input will be matched perfectly, as well as its behaviour.

Completing the extract subcommand

The extract capability makes it feasilbe to store secrets in structured files like YAML or JSON, as it allows to extract pieces of data in various ways. That way, you can easily substitute secrets into configuration files using the well-known {{handlebar}} syntax.

Completing the vault subcommand

The first iteration only fulfilled the main journey. Now it's time to fill the gaps and add a few more features to provide API symmetry.

UX - The next iteration

GPG is cryptic, and it's usually entirely unclear to the uniniciated user why encryption just didn't work. Right now, we are not much better than using pass.

In this iteration, we want to achieve that for all major user journeys, no gpg error remains unexplained.

On our way to the minimal viable product v1.0

Caveats

Development Practices

Maintenance Guide

Making a deployment

As a prerequisite, you should be sure the build is green.

Making a new Asciinema recording