Helm-Secrets 项目教程
1. 项目的目录结构及介绍
Helm-Secrets 是一个用于管理 Helm 图表中敏感信息的插件。以下是其主要目录结构及其介绍:
helm-secrets/
├── .github/
│ └── workflows/
├── helm-secrets/
│ ├── plugin.yaml
│ ├── scripts/
│ │ ├── helm-secrets.sh
│ │ └── ...
│ └── templates/
│ └── ...
├── tests/
│ └── ...
├── .gitignore
├── .sops.yaml
├── LICENSE
├── README.md
└── ...
- .github/workflows/: 包含 GitHub Actions 的工作流配置文件。
- helm-secrets/: 插件的核心目录,包含插件的配置文件和脚本。
- plugin.yaml: 插件的描述文件,定义插件的基本信息和命令。
- scripts/: 包含插件的执行脚本,如
helm-secrets.sh
。 - templates/: 包含插件使用的模板文件。
- tests/: 包含插件的测试文件。
- .gitignore: 定义 Git 忽略的文件和目录。
- .sops.yaml: SOPS 的配置文件,用于定义加密规则。
- LICENSE: 项目的许可证文件。
- README.md: 项目的说明文档。
2. 项目的启动文件介绍
Helm-Secrets 的启动文件主要是 helm-secrets/scripts/helm-secrets.sh
。这个脚本是插件的核心执行文件,负责处理加密和解密操作。
- helm-secrets.sh: 该脚本负责调用 SOPS 工具进行加密和解密操作,并处理 Helm 图表中的敏感信息。
3. 项目的配置文件介绍
Helm-Secrets 的配置文件主要包括 plugin.yaml
和 .sops.yaml
。
-
plugin.yaml: 该文件定义了插件的基本信息和命令。例如:
name: "secrets" version: "3.10.0" usage: "A Helm plugin that helps manage secrets with your Helm charts" command: "./scripts/helm-secrets.sh"
-
.sops.yaml: 该文件定义了 SOPS 的加密规则和密钥配置。例如:
creation_rules: - path_regex: .secrets.yaml$ encrypted_regex: ^(data|stringData)$ pgp: 'YOUR_PGP_FINGERPRINT'
通过这些配置文件,用户可以自定义加密规则和插件的行为。
以上是 Helm-Secrets 项目的目录结构、启动文件和配置文件的介绍。希望这份教程能帮助你更好地理解和使用 Helm-Secrets 插件。