React Native:如何在CircleCI中安全地存储android密钥库文件及其密码



我正在我们的react原生项目中集成circleCI。我从第一个工作流开始,它是android构建,需要密钥库文件及其别名和密码。为了实现这项任务,我使用openssl加密/解密密钥库文件,并将文件的密码存储到circleCI-env变量中(对于我的本地环境,我使用react native config(。

这是我的build.gradle文件:

signingConfigs {
debug {
storeFile file('debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
release {
if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
storeFile file(MYAPP_UPLOAD_STORE_FILE)
storePassword project.env.get('MYAPP_UPLOAD_STORE_PASSWORD')
keyAlias project.env.get('MYAPP_UPLOAD_KEY_ALIAS')
keyPassword project.env.get('MYAPP_UPLOAD_KEY_PASSWORD')
}
}
}

MYAPP_UPLOAD_STORE_FILE存储在grade.properties中,其余存储在env-vars 中

我记下了这个错误

FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:packageRelease'.
> A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable
> SigningConfig "release" is missing required property "storePassword".

快速提示:我可以在我的设备上生成发布APK

有没有其他方法可以完成这项乏味的任务。提前感谢

我在CircleCI文档中找到了一个很好的资源:部署android应用程序

最新更新