dtan4 / K8sec
Licence: mit
CLI tool to manage Kubernetes Secrets easily
Stars: ✭ 241
Programming Languages
go
31211 projects - #10 most used programming language
Projects that are alternatives of or similar to K8sec
go-microepoch
A complete DevOps cycle for Building and Deploying a Go Application to Kubernetes cluster.
Stars: ✭ 34 (-85.89%)
Mutual labels: kubernetes-secrets
Sealed Secrets
A Kubernetes controller and tool for one-way encrypted Secrets
Stars: ✭ 4,203 (+1643.98%)
Mutual labels: kubernetes-secrets
Secrets Manager
A daemon to sync Vault secrets to Kubernetes secrets
Stars: ✭ 116 (-51.87%)
Mutual labels: kubernetes-secrets
Kubernetes Replicator
Kubernetes controller for synchronizing secrets & config maps across namespaces
Stars: ✭ 289 (+19.92%)
Mutual labels: kubernetes-secrets
Kamus
An open source, git-ops, zero-trust secret encryption and decryption solution for Kubernetes applications
Stars: ✭ 694 (+187.97%)
Mutual labels: kubernetes-secrets
secret-backup-operator
Kubernetes operator for backing up secrets
Stars: ✭ 13 (-94.61%)
Mutual labels: kubernetes-secrets
Helm Secrets
Successor of zendesk/helm-secrets - A helm plugin that help manage secrets with Git workflow and store them anywhere
Stars: ✭ 165 (-31.54%)
Mutual labels: kubernetes-secrets
Vault Secrets Operator
Create Kubernetes secrets from Vault for a secure GitOps based workflow.
Stars: ✭ 298 (+23.65%)
Mutual labels: kubernetes-secrets
Bank Vaults
A Vault swiss-army knife: a K8s operator, Go client with automatic token renewal, automatic configuration, multiple unseal options and more. A CLI tool to init, unseal and configure Vault (auth methods, secret engines). Direct secret injection into Pods.
Stars: ✭ 1,316 (+446.06%)
Mutual labels: kubernetes-secrets
kubesecret
Kubesecret is a command-line tool that prints secrets and configmaps data of a kubernetes cluster.
Stars: ✭ 19 (-92.12%)
Mutual labels: kubernetes-secrets
k8comp
Kubernetes parameterized deployments manifests/templates https://cststack.github.io/k8comp/
Stars: ✭ 29 (-87.97%)
Mutual labels: kubernetes-secrets
External Secrets
The External Secrets Kubernetes operator reads information from a third party service like AWS Secrets Manager and automatically injects the values as Kubernetes Secrets.
Stars: ✭ 42 (-82.57%)
Mutual labels: kubernetes-secrets
secode
Utility for encoding/decoding Kubernetes secrets (base64)
Stars: ✭ 23 (-90.46%)
Mutual labels: kubernetes-secrets
Aws Eks Kubernetes Masterclass
AWS EKS Kubernetes - Masterclass | DevOps, Microservices
Stars: ✭ 129 (-46.47%)
Mutual labels: kubernetes-secrets
k8s-env-gen
Kubernetes environment generator makes docker env files compatible with kubernetes
Stars: ✭ 19 (-92.12%)
Mutual labels: kubernetes-secrets
Landscaper
Deprecated. Takes a set of Helm Chart references with values (a desired state), and realizes this in a Kubernetes cluster
Stars: ✭ 342 (+41.91%)
Mutual labels: kubernetes-secrets
Secrets Store Csi Driver Provider Azure
Azure Key Vault provider for Secret Store CSI driver allows you to get secret contents stored in Azure Key Vault instance and use the Secret Store CSI driver interface to mount them into Kubernetes pods.
Stars: ✭ 233 (-3.32%)
Mutual labels: kubernetes-secrets
Aws Ssm
Populates Kubernetes Secrets from AWS Parameter Store
Stars: ✭ 150 (-37.76%)
Mutual labels: kubernetes-secrets
Helm Secrets
DEPRECATED A helm plugin that help manage secrets with Git workflow and store them anywhere
Stars: ✭ 1,129 (+368.46%)
Mutual labels: kubernetes-secrets
k8sec
CLI tool to manage Kubernetes Secrets easily
Requirements
Kubernetes 1.3 or above
Installation
Using Homebrew (OS X only)
Formula is available at dtan4/homebrew-dtan4.
$ brew tap dtan4/tools
$ brew install k8sec
Precompiled binary
Precompiled binaries for Windows, OS X, Linux are available at Releases.
From source
$ go get -d github.com/dtan4/k8sec
$ cd $GOPATH/src/github.com/dtan4/k8sec
$ make deps
$ make install
Docker image
Docker image is available at quay.io/dtan4/k8sec
.
Usage
Global options
Option | Description | Required | Default |
---|---|---|---|
--context=CONTEXT |
Kubernetes context | ||
--kubeconfig=KUBECONFIG |
Path of kubeconfig | ~/.kube/config |
|
-n , --namespace=NAMESPACE
|
Kubernetes namespace | default |
|
-h , -help
|
Print command line usage |
k8sec list
List secrets
$ k8sec list [--base64] [NAME]
# Example
$ k8sec list rails
NAME TYPE KEY VALUE
rails Opaque database-url "postgres://example.com:5432/dbname"
# Show values as base64-encoded string
$ k8sec list --base64 rails
NAME TYPE KEY VALUE
rails Opaque database-url cG9zdGdyZXM6Ly9leGFtcGxlLmNvbTo1NDMyL2RibmFtZQ==
k8sec set
Set secrets
$ k8sec set [--base64] NAME KEY1=VALUE1 [KEY2=VALUE2 ...]
$ k8sec set rails rails-env=production
rails
# Set base64-encoded value
$ echo -n dtan4 | base64
ZHRhbjQ=
$ k8sec set --base64 rails foo=ZHRhbjQ=
rails
# Result
$ k8sec list rails
NAME TYPE KEY VALUE
rails Opaque database-url "postgres://example.com:5432/dbname"
rails Opaque foo "dtan4"
k8sec unset
Unset secrets
$ k8sec unset NAME KEY1 KEY2...
# Example
$ k8sec unset rails rails-env
k8sec load
Load secrets from dotenv (key=value) format text
$ k8sec load [-f FILENAME] NAME
# Example
$ cat .env
database-url="postgres://example.com:5432/dbname"
$ k8sec load -f .env rails
# Load from stdin
$ cat .env | k8sec load rails
k8sec dump
Dump secrets as dotenv (key=value) format
$ k8sec dump [-f FILENAME] [--noquotes] [NAME]
# Example
$ k8sec dump rails
database-url="postgres://example.com:5432/dbname"
# Save as .env
$ k8sec dump -f .env rails
$ cat .env
database-url="postgres://example.com:5432/dbname"
Save as .env without qoutes
$ k8sec dump -f .env --noquotes rails $ cat .env database-url=postgres://example.com:5432/dbname
## Contribution
Go 1.8 or above is required.
1. Fork ([https://github.com/dtan4/k8sec/fork](https://github.com/dtan4/k8sec/fork))
1. Create a feature branch
1. Commit your changes
1. Rebase your local changes against the master branch
1. Run test suite with the `go test ./...` command and confirm that it passes
1. Run `gofmt -s`
1. Create a new Pull Request
## Author
[dtan4](https://github.com/dtan4)
## License
[](LICENSE)
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].