
This phase builded on top of generic executor container. It uses kustomize generator to generate secrets and SOPS function to encrypt secrets. Usage: 1. `curl -fsSL -o key.asc https://raw.githubusercontent.com/mozilla/sops/master/pgp/sops_functional_tests_key.asc` Copy existing key from sops project 2. `export SOPS_IMPORT_PGP="$(cat key.asc)" && export SOPS_PGP_FP="FBC7B9E2A4F9289AC0C1D4843D16CEE4A27381B4"` 3. `airshipctl phase run secret-generate` It will generate and encrypt secret in manifests/site/test-site/target/generator/results/generated/ 4. `KUSTOMIZE_PLUGIN_HOME=$(pwd)/manifests SOPS_IMPORT_PGP=$(cat key.asc) kustomize build --enable_alpha_plugins manifests/site/test-site/target/catalogues/ > output.txt` It will decrypt encrypted secret Co-authored-by: Alexey Odinokov <aodinokov@mirantis.com> Change-Id: I1682d71b7805eb36c407e712dcb747de799bc8bb Relates-To: #379
20 lines
525 B
YAML
20 lines
525 B
YAML
apiVersion: airshipit.org/v1alpha1
|
|
kind: Templater
|
|
metadata:
|
|
name: secret-template
|
|
annotations:
|
|
config.kubernetes.io/function: |
|
|
container:
|
|
image: quay.io/airshipit/templater:latest
|
|
values:
|
|
template: |
|
|
apiVersion: airshipit.org/v1alpha1
|
|
kind: VariableCatalogue
|
|
metadata:
|
|
labels:
|
|
airshipit.org/deploy-k8s: "false"
|
|
name: password-secret
|
|
annotations:
|
|
config.kubernetes.io/path: secrets.yaml
|
|
passwordRandom1: {{ derivePassword 1 "long" (randAscii 10) "user" "example.com" }}
|