【问题标题】:Travis CI throws status code 403 when using DefinitelyTyped/tsdTravis CI 在使用 DefinedTyped/tsd 时抛出状态码 403
【发布时间】:2015-06-19 22:59:11
【问题描述】:

使用 Travis CI 构建项目时,我的安装命令之一(在 .travis.yml 中定义,由于状态码 403 中止:

tsd reinstall
-> running reinstall
-> an error occured!
unexpected status code: 403 on: https://api.github.com/repos/borisyankov/DefinitelyTyped/branches/master
Error: unexpected status code: 403 on: https://api.github.com/repos/borisyankov/DefinitelyTyped/branches/master
    at Request.<anonymous> (/home/travis/.nvm/versions/node/v0.12.4/lib/node_modules/tsd/build/http/CacheStreamLoader.js:158:28)
    at Request.emit (events.js:107:17)
    at Request.onRequestResponse (/home/travis/.nvm/versions/node/v0.12.4/lib/node_modules/tsd/node_modules/request/request.js:1156:10)
    at ClientRequest.emit (events.js:107:17)
    at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:426:21)
    at HTTPParser.parserOnHeadersComplete (_http_common.js:111:23)
    at TLSSocket.socketOnData (_http_client.js:317:20)
    at TLSSocket.emit (events.js:107:17)
    at readableAddChunk (_stream_readable.js:163:16)
    at TLSSocket.Readable.push (_stream_readable.js:126:10)
[...]
The command "tsd reinstall" failed and exited with 1 during .

当从我的本地机器调用github api url 时,我得到了正常响应。所以肯定是介于travis和github api之间的东西。

【问题讨论】:

  • 我也遇到了同样的问题。不知道如何解决它:)

标签: https continuous-integration travis-ci github-api definitelytyped


【解决方案1】:

按照Blake Embrey 的指示,无论何时在本地计算机以外的任何地方使用tsd,我们都应该使用.tsdrc,在其中添加一个Github API 令牌(或使用环境变量TSD_GITHUB_TOKEN,这样更安全原因 - 在 Travis 上,您可以 encrypt 令牌)。

关于如何创建令牌的说明也可以在DefinitelyTyped repo 页面上找到,那里已经解释了所有内容。

【讨论】:

  • 哦,太好了!我会试一试并返回一些反馈:)
  • 它的工作方式有点不同。我必须创建一个 GitHub 令牌,就像你在第二个链接中解释的那样。但是环境变量只是使用 UI 在 travis 的设置中设置的。
  • @waog 我通常更喜欢 CLI,这只是一个偏好问题 :)
猜你喜欢
  • 2016-05-08
  • 2017-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-03
  • 1970-01-01
  • 1970-01-01
  • 2015-07-28
相关资源
最近更新 更多