如何将文件(.jks、.p12)作为变量?

How to put a file (.jks, .p12) as variable?

我正在使用 gitlab-ci 管道来自动构建、签署“apk”并部署到 Play 商店。 管道工作正常,但是两个文件“.jks”为我的 Google 云平台服务签署“apk”和“.p12”现在在我的存储库中,这不是一种安全的方式。我想要做的是将这两个文件“.jks 和 .p12”作为 gitlab-ci 变量,以避免将这些文件放入我的仓库中...

是的,你可以定义 gitlab ci 文件类型的变量

这是 gitlab ce 的文档:

https://docs.gitlab.com/ce/ci/variables/#custom-environment-variables-of-type-file

在项目的设置中,您需要定义一个变量(文件类型)。

然后gitlab会用你的文件内容为这个变量创建一个临时文件。

可以直接使用 或者像这样使用 cp 命令:

cp $MY_SECRET_FILE $HOME/.m2/settings.xml

编辑: 似乎不支持二进制文件,因此请关注并投票以下问题:https://gitlab.com/gitlab-org/gitlab/-/issues/205379