GitHub 连接器
GitHub 连接器允许工作负载通过 Connectors 代理模型访问 GitHub。
核心字段
连接器示例:
spec.connectorClassName:固定值githubspec.address:用于 Git 操作的 GitHub 服务器 URL(例如https://github.com)spec.addressExtensions[api]:API 端点覆盖项。当主机为https://github.com时,将其设置为https://api.github.com;否则保持未设置
注意: 目前不支持 GitHub Enterprise。
身份验证
支持的 auth 类型:
patAuth(可选)- Secret 类型:
Opaque
Secret 示例:
配置
ConnectorClass 提供的内置配置文件:
gitconfig:由 Git CLI 使用(通过内置反向代理进行 URL 重写和 auth header 处理)githubconfig:由ghCLI(GitHub CLI)使用,提供config.yml、hosts.yml和ca.cert。需要正向代理 —hosts.yml使用占位 token;实际认证信息由 Connectors 正向代理注入。你必须为ghCLI 设置正向代理环境变量,才能正确完成认证。
通过正向代理使用 githubconfig
当你通过 Connectors CSI Driver 挂载 githubconfig 时,CSI Driver 会在同一挂载目录中自动提供一个内置的 .env 文件,其中包含 http_proxy、https_proxy 和 no_proxy 设置。要使用 githubconfig:
- 使用
configuration.names: "githubconfig"挂载 CSI 卷 - 将
GH_CONFIG_DIR设置为挂载路径,以便ghCLI 读取config.yml和hosts.yml - 通过 source 该
.env文件设置正向代理环境变量 - 为代理证书配置 TLS 信任(在使用 HTTPS 正向代理时需要,例如 MITM 风格代理)
示例:
有关内置 .env 文件和正向代理配置的更多详细信息,请参见 Connectors CSI Driver — 内置配置。
当你的环境通过 HTTPS 正向代理强制执行 TLS 拦截时,请确保 SSL_CERT_FILE 指向挂载的 ca.cert;否则,gh 请求可能会因证书验证错误而失败。