kubernetes - 将 Mongodb Atlas Operator env vars 从 travis 传递到 kubernetes deploy.sh
问题描述
我正在尝试在此处调整 Mongo Atlas Operator 的快速入门指南Atlas Operator Quickstart以使用在 TravisCI 中设置的安全环境变量。
我想将快速启动脚本放入我的 deploy.sh 中,它是从我的 travis.yaml 文件触发的。
我的 travis.yaml 已经设置了一个全局变量,如下所示:
env:
global:
- SHA=$(git rev-parse HEAD)
deploy.sh 文件使用它,如下所示:
docker build -t mydocker/k8s-client:latest -t mydocker/k8s-client:$SHA -f ./client/Dockerfile ./client
但我不确定如何将 travis 设置中的环境变量位中设置的 vars 传递给 deploy.sh
这是我想将变量传递给的脚本部分:
kubectl create secret generic mongodb-atlas-operator-api-key \
--from-literal="orgId=$MY_ORG_ID" \
--from-literal="publicApiKey=$MY_PUBLIC_API_KEY" \
--from-literal="privateApiKey=$MY_PRIVATE_API_KEY" \
-n mongodb-atlas-system
例如,我假设 --from-literal 语法只会放入文字字符串“orgId=$MY_ORG_ID”,并且我需要使用管道语法 - 但我可以按照以下方式做一些事情吗?:
echo "$MY_ORG_ID" | kubectl create secret generic mongodb-atlas-operator-api-key --orgId-stdin
还是我需要在我的 travis.yaml before_install 脚本中添加一些内容?
解决方案
看起来echo
方法很好,我发现了一个与你类似的用例,看看这里。
推荐阅读
- containerd - 带有 containerd 的 Kubernetes:http:服务器向 HTTPS 客户端提供了 HTTP 响应
- .htaccess - .htaccess mod_rewrite 以匹配语言子域
- postgresql - PostgreSQL 9.3 慢查询
- google-apps-script - 如何使用 Google appscript 将 Doc/Word 文件附加为附件?
- flutter - flutter 如何在 SliverAppBar 中显示 `floating: true` 与 Widget 高度大小一样多?(在自定义滚动视图中)
- webpack - 我从 webpack 4 迁移到 webpack 5,但我的块比以前大
- mapping - 不能使用 Mapstruct ADDER_PREFERRED 来清除带有 @MappingTarget 的目标列表
- python - 连续颜色条和颜色标准化
- angular - 我无法在客户端获得内容配置
- python - 密码破解程序中的列表索引超出范围?