Travis 构建 - 无法从密钥环文件中检索密钥,因为它不存在
Travis build - Unable to retrieve secret key from key ring file as it does not exist
我目前在我的开源项目中使用 Travis CI。一切顺利,直到我尝试在 travis 构建成功后将工件上传到 Maven Central 暂存存储库。
请在下面找到我遵循的步骤:
- 添加了一个 initiate-publish.sh 脚本文件,该文件将在构建成功后发布到 Maven 中心。
- 加密以下内容
- 用于保护我的加密文件的加密密码 -> travis encrypt -r username/gitrepo ENCRYPT_PASSWORD="my password"
- secring.gpg 文件 - openssl aes-256-cbc -in .utility/local.secring.gpg -out .utility/secring.gpg.enc -pass 传递: "my password"
-> 这生成了 secring.gpg.enc,我将其添加到我的存储库
- 修改后的 .travis.yml 文件包含以下内容
- before_install:
openssl aes-256-cbc -pass pass:$ENCRYPTION_PASSWORD -in .utility/secring.gpg.enc -out .utility/local.secring.gpg -d
我将文件提交给 Git,这触发了构建。
after_success: 退出并显示错误
“无法评估任务 ':android-db-migration-library:signArchives' 的 onlyIf 谓词。
Unable to retrieve secret key from key ring file '/home/travis/build/PalomaMobile/android-db-migration/android-db-migration-library/.utility/local.secring.gpg' as it does not exist"
您可以查看日志https://travis-ci.org/PalomaMobile/android-db-migration/builds/63114335
据我了解,"before install" 将解密文件并存储它,我的发布脚本可以访问它。
你能帮我理解为什么会这样吗?你可以查看我的.travis.yml文件,发布脚本文件等等。@https://github.com/PalomaMobile/android-db-migration
我仔细检查了你的构建日志,你的 signArchive
任务似乎期望密钥位于
/home/travis/build/PalomaMobile/android-db-migration/android-db-migration-library/.utility/generated.secring.gpg
但实际上它位于
/home/travis/build/PalomaMobile/android-db-migration/.utility/generated.secring.gpg
所以我建议在您的 .utility/initiate-publish.sh
文件中使用密钥文件的绝对路径而不是相对路径。
希望对您有所帮助!
我目前在我的开源项目中使用 Travis CI。一切顺利,直到我尝试在 travis 构建成功后将工件上传到 Maven Central 暂存存储库。
请在下面找到我遵循的步骤:
- 添加了一个 initiate-publish.sh 脚本文件,该文件将在构建成功后发布到 Maven 中心。
- 加密以下内容
- 用于保护我的加密文件的加密密码 -> travis encrypt -r username/gitrepo ENCRYPT_PASSWORD="my password"
- secring.gpg 文件 - openssl aes-256-cbc -in .utility/local.secring.gpg -out .utility/secring.gpg.enc -pass 传递: "my password" -> 这生成了 secring.gpg.enc,我将其添加到我的存储库
- 修改后的 .travis.yml 文件包含以下内容
- before_install: openssl aes-256-cbc -pass pass:$ENCRYPTION_PASSWORD -in .utility/secring.gpg.enc -out .utility/local.secring.gpg -d
我将文件提交给 Git,这触发了构建。 after_success: 退出并显示错误 “无法评估任务 ':android-db-migration-library:signArchives' 的 onlyIf 谓词。
Unable to retrieve secret key from key ring file '/home/travis/build/PalomaMobile/android-db-migration/android-db-migration-library/.utility/local.secring.gpg' as it does not exist"
您可以查看日志https://travis-ci.org/PalomaMobile/android-db-migration/builds/63114335
据我了解,"before install" 将解密文件并存储它,我的发布脚本可以访问它。
你能帮我理解为什么会这样吗?你可以查看我的.travis.yml文件,发布脚本文件等等。@https://github.com/PalomaMobile/android-db-migration
我仔细检查了你的构建日志,你的 signArchive
任务似乎期望密钥位于
/home/travis/build/PalomaMobile/android-db-migration/android-db-migration-library/.utility/generated.secring.gpg
但实际上它位于
/home/travis/build/PalomaMobile/android-db-migration/.utility/generated.secring.gpg
所以我建议在您的 .utility/initiate-publish.sh
文件中使用密钥文件的绝对路径而不是相对路径。
希望对您有所帮助!