【发布时间】:2015-06-15 13:44:30
【问题描述】:
我创建了一个单元测试项目,它需要一个不公开的密钥,所以我可以在本地从 App.config 读取它,但 Travis CI 没有这个密钥。
所以我在 Travis CI 中添加了一个环境变量,如下所示:
当 Travis CI 构建开始时,它会在日志中显示我的变量:
从存储库设置中设置环境变量
$ export TestKey=TestValue
但根据日志,读取密钥的简单测试失败并显示错误消息Key not set as environment variable:
[Test]
public void TestTravisEnvVariable()
{
string testKey= Environment.GetEnvironmentVariable("TestKey");
Assert.IsNotNullOrEmpty(testKey, "Key not set as environment variable");
}
Environment.GetEnvironmentVariable方法读取当前进程的变量。,但显然这种情况下无法读取key。
那么我如何才能真正读取这个密钥呢?
更新: 我不清楚为什么它一开始就不起作用,但上面的示例在我第二次运行构建时才起作用。
【问题讨论】: