1 changed files with 36 additions and 0 deletions
@ -0,0 +1,36 @@ |
|||
--- |
|||
title: "One-liner to decode a Kubernetes secret (base64 encoded)" |
|||
date: 2019-06-07T00:00:00+02:00 |
|||
opensource: |
|||
- OpenShift |
|||
--- |
|||
|
|||
Creating a Kubernetes secret from a value is easy: |
|||
|
|||
```raw |
|||
$ oc create secret generic my-secret --from-literal=secretValue=super-secret |
|||
secret/my-secret created |
|||
``` |
|||
|
|||
But getting back this value (from a Shell script, for instance) is not so easy since it is now base64 encoded: |
|||
|
|||
```raw |
|||
$ oc get secret my-secret -o yaml |
|||
apiVersion: v1 |
|||
kind: Secret |
|||
metadata: |
|||
name: my-secret |
|||
namespace: qlkube |
|||
type: Opaque |
|||
data: |
|||
secretValue: c3VwZXItc2VjcmV0 |
|||
``` |
|||
|
|||
Hopefully, since the latest versions of Kubernetes, there is now a one-liner to extract the field and base64 decode it: |
|||
|
|||
```raw |
|||
$ oc get secret my-secret -o go-template --template="{{.data.secretValue|base64decode}}" |
|||
super-secret |
|||
``` |
|||
|
|||
Enjoy! |
|||
Loading…
Reference in new issue