kustomize-pass

Crates.iokustomize-pass
lib.rskustomize-pass
version0.5.1
sourcesrc
created_at2022-06-23 16:39:43.068123
updated_at2022-06-30 21:48:21.269218
descriptionkustomize generator and transformer plugin for pass managed secrets
homepage
repositoryhttps://github.com/ftsell/kustomize-pass
max_upload_size
id611966
size76,847
Finn-Thorben Sell (ftsell)

documentation

https://docs.rs/kustomize-pass

README

kustomize-pass

crates.io Badge Maintenance Status Badge

A kustomize plugin that is able to generate secrets by extracting them from pass or replace placeholders in other manifests from pass.

Installation

For installation, this package depends on gpgme-rs which requires the gpgme library and its development files (e.g., headers, gpgme-config) to be installed during the build process. You should install these using your operating systems package manager.

Afterwards, you can install the package either using one of the provided binaries from the releases page or compile and install it yourself by running

cargo install kustomize-pass

Usage

Once kustomize-pass is installed, you can use the generator by providing kustomize with the following example resource manifests.

A detailed description of the supported input manifest is provided in openapi format in the schema.openapi.yaml. It can also be generated and printed on-demand by the application.

# generator.yml
apiVersion: ftsell.de/v1beta1
kind: PassSecret
metadata:
  name: example-secret
  annotations:
    config.kubernetes.io/function: |
      exec:
        path: kustomize-pass
data:
  example-key: example-pass-name
# kustomization.yml
apiVersion: kustomize.config.k8s.io/v1beta1
generators:
  - generator.yml

When running the shown example and if you have a password named example-pass-name in your password store, the following resulting resource will be produced:

apiVersion: v1
kind: Secret
metadata:
  name: example-secret
data:
  example-key: foobar123
Commit count: 84

cargo fmt