https://github.com/tankibaj/external-secrets-components
The external-secrets-components Helm chart is a versatile tool for managing Kubernetes secrets, especially useful in GitOps workflows. It enhances security and compliance while simplifying the management of sensitive data in Kubernetes environments.
https://github.com/tankibaj/external-secrets-components
Last synced: 5 months ago
JSON representation
The external-secrets-components Helm chart is a versatile tool for managing Kubernetes secrets, especially useful in GitOps workflows. It enhances security and compliance while simplifying the management of sensitive data in Kubernetes environments.
- Host: GitHub
- URL: https://github.com/tankibaj/external-secrets-components
- Owner: tankibaj
- Created: 2024-01-23T11:19:48.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-23T11:20:49.000Z (over 1 year ago)
- Last Synced: 2025-02-17T21:38:25.962Z (8 months ago)
- Size: 1.95 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# external-secrets-components Helm Chart
## Overview
The `external-secrets-components` Helm chart is designed to simplify and automate the management of Kubernetes secrets, particularly in environments that practice GitOps, like with ArgoCD. This chart allows you to integrate external secrets into your Kubernetes environment, making it easier to manage sensitive information such as database credentials, API keys, and other confidential data.
This Helm chart supports two types of secrets:
1. **Generic Secrets**: Standard Kubernetes secrets.
2. **Docker Config JSON Secrets**: Specifically for Docker configuration files.By using this chart as a dependency in other Helm charts, you can streamline the injection of secrets into your applications, ensuring that secret management adheres to the principles of infrastructure as code.
## Use Cases
- **ArgoCD GitOps**: In a GitOps workflow with ArgoCD, you can include this chart as a dependency. This allows you to manage secrets through code, ensuring that they are consistently deployed and managed alongside your applications.
- **Automating Secret Management**: Automatically fetch secrets from external secret stores (like HashiCorp Vault, AWS Secrets Manager, etc.) and inject them into your Kubernetes applications.
- **Enhanced Security**: Avoid manual secret creation and reduce the risk of exposing sensitive data.## Prerequisites
- Helm 3 installed
- Access to a Kubernetes cluster
- An external secret management system (like HashiCorp Vault, AWS Secrets Manager, etc.)## Installation
1. Add this chart to your Helm project as a dependency. Edit your `Chart.yaml`:
```yaml
dependencies:
- name: external-secrets-components
version: 0.1.0
repository:
```2. Update dependencies:
```bash
helm dependency update
```## Configuration
Modify the `values.yaml` file to fit your secret requirements. There are two main sections:
1. **genericSecret**: Configure generic Kubernetes secrets here.
2. **dockerconfigjson**: Configure Docker configuration JSON secrets here.### Generic Secret Example
Uncomment and set the `genericSecret` values in `values.yaml`:
```yaml
genericSecret:
enabled: true
name: my-generic-secret
secretStoreRef:
name: my-secret-store
kind: ClusterSecretStore
data:
- secretKey: username
remoteRef:
key: path/to/external/username
property: username
- secretKey: password
remoteRef:
key: path/to/external/password
property: password
```### Docker Config JSON Secret Example
Uncomment and set the `dockerconfigjson` values in `values.yaml`:
```yaml
dockerconfigjson:
enabled: true
name: my-docker-secret
secretStoreRef:
name: my-secret-store
kind: ClusterSecretStore
data:
- secretKey: dockerconfigjson
remoteRef:
key: path/to/dockerconfigjson
```## Usage
Deploy the chart in your Kubernetes cluster as part of your application deployment. If using ArgoCD, this can be part of your application's Helm configuration.