在Travis-CI上进行测试我需要通过wget从github下载一些项目。以下是我在travis日志中的内容:
Requesting a tar: 'wget https://api.github.com/repos/apache/hbase/tarball/1.1.0.1 -O src/main/java/apache-hbase.tar.gz'
--2015-06-28 18:24:16-- https://api.github.com/repos/apache/hbase/tarball/1.1.0.1
Resolving api.github.com (api.github.com)... 192.30.252.139
Connecting to api.github.com (api.github.com)|192.30.252.139|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2015-06-28 18:24:16 ERROR 403: Forbidden.
Github支持解释为:
您可能会达到未经身份验证的请求的速率限制: https://developer.github.com/v3/#rate-limiting
如果您切换到进行身份验证请求 - 您应该获得一个 更好的API速率限制。我们不为Travis提供支持 平台,所以你应该联系Travis支持了解 使用他们的平台进行经过身份验证的请求的选项。
所以问题是:是否可以安全地重复使用Travis-CI凭证或我的travis用户的凭证来使用github api而不受每小时60个请求的限制?
答案 0 :(得分:0)
您应该能够使用Github OAuth token将其安全地存储在Travis CI的encrypted variable中,然后将其传递到wget
这样的电话:
// First encrypt your Github OAuth token
travis encrypt MY_GITHUB_OAUTH_TOKEN=token --add
上一次调用会自动将环境变量hash添加到.travis.yml
文件中。
然后你应该可以在wget
电话中使用它:
wget \
--header='Authorization: token $MY_GITHUB_OAUTH_TOKEN' \
https://api.github.com/repos/apache/hbase/tarball/1.1.0.1 \
-O src/main/java/apache-hbase.tar.gz
希望这有帮助!