Travis CI 构建失败,因为它找不到存储在我本地主目录中的密钥文件。如何处理?

Travis CI build fails because it can't find the secret key file stored in my local home directory. How to handle this?

我无法将密钥文件放在项目文件夹中。我该如何处理这种情况?

我的属性文件有加密的数据库密码。我的项目使用它来连接到嵌入式 H2 数据库。

我可以使用其他加密方法吗?

编辑:

语言:Java

场景 --> 我有一个包含私钥的 .secret 文件

现在我有一个包含 属性 的属性文件:db.password=encryptedPassword

在我的单元测试中连接到数据库时,我需要密钥文件才能解密密码。这在我的本地工作正常,因为 .secret 文件在我的 user.home 目录中。

但是当构建在 Travis 中运行时 CI 它失败了,因为它找不到 .secret 文件。

我认为您必须以不同的方式获取私钥以进行单元测试。

TravisCI allows to configure Environment variables, so you can store the private key into a Environment variable, i.e PRIVATE_KEY=Content_of_Private_key

从 Travis 控制台查看这张图片:

在您的代码中,您可以获得如下内容:

System.getenv().get("PRIVATE_KEY"); //This call returns the content you need for decrypt your password.

就像我说的,这种行为应该是单元测试的好方法。

希望对您有所帮助!