GithubHelp home page GithubHelp logo

roman-kpax / helm-secrets Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jkroepke/helm-secrets

0.0 0.0 0.0 909 KB

A helm plugin that help manage secrets with Git workflow and store them anywhere

License: Apache License 2.0

Shell 95.98% Ruby 0.16% Batchfile 2.85% Dockerfile 1.01%

helm-secrets's Introduction

CI License Current Release GitHub all releases GitHub issues GitHub pull requests codecov Artifact Hub

helm-secrets

Installation

See Installation for more information.

Usage

Decrypt secrets via protocol handler

Run decrypted command on specific value files. This is method is preferred over the plugin command below. On Windows, the command helm secrets patch windows needs to be run first.

helm upgrade name . -f secrets://secrets.yaml

See Usage for more information

Decrypt secrets via plugin command

Wraps the whole helm command. Slow on multiple value files.

helm secrets upgrade name . -f secrets.yaml

ArgoCD support

For running helm-secrets with ArgoCD, see ArgoCD Integration for more information.

Terraform support

The Terraform helm provider does not support downloader plugins.

helm secrets can be used together with the terraform external data source provider.

data "external" "helm-secrets" {
  program = ["helm", "secrets", "terraform", "../../examples/sops/secrets.yaml"]
}

resource "helm_release" "example" {
  ...

  values = [
    file("../../examples/sops/values.yaml"),
    base64decode(data.external.helm-secrets.result.content_base64),
  ]
}

An example how to use helm-secrets with terraform could be found in examples/terraform.

Secret drivers

helm-secrets supports multiplie secret drivers like sops, Hashicorp Vault, vals and more.

See Secret-Driver how to use them.

Main features

The current version of this plugin using mozilla/sops by default as backend.

Hashicorp Vault is supported as secret source since v3.2.0, too. In addition, sops support vault since v3.6.0 natively.

What kind of problems this plugin solves:

  • Simple replaceable layer integrated with helm command for encrypting, decrypting, view secrets files stored in any place.
  • On the fly decryption and cleanup for helm install/upgrade with a helm command wrapper

If you are using sops (used by default) you have some additional features:

An additional documentation, resources and examples can be found here.

Moving parts of project

  • scripts/run.sh - Main helm-secrets plugin code for all helm-secrets plugin actions available in helm secrets help after plugin install
  • scripts/drivers - Location of the in-tree secrets drivers
  • scripts/commands - Sub Commands of helm secrets are defined here.
  • scripts/lib - Common functions used by helm secrets.
  • scripts/wrapper - Wrapper scripts for Windows systems.
  • tests - Test scripts to check if all parts of the plugin work. Using test assets with PGP keys to make real tests on real data with real encryption/decryption. See tests/README.md for more informations.
  • examples - Some example secrets.yaml

Copyright and license

© 2020-2021 Jan-Otto Kröpke (jkroepke)

© 2017-2020 Zendesk

Licensed under the Apache License, Version 2.0

helm-secrets's People

Contributors

jkroepke avatar szibis avatar dependabot[bot] avatar mhyllander avatar novas0x2a avatar snebel29 avatar mateuszzawisza avatar benlangfeld avatar jrnt30 avatar docx avatar prageethw avatar mattclegg avatar kostas-theo avatar savar avatar pygillier avatar jbouyoud avatar jacobsvante avatar sandywang1982 avatar honwen avatar mumoshu avatar morgoth avatar vishaltak avatar s0obi avatar sstarcher avatar snstanton avatar peyerroger avatar rsmets avatar prein avatar mamoit avatar maver1ck avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.