1

當建立與特拉維斯CI我安裝一個命令(在.travis.yml定義中止一個項目,由於狀態碼403:特拉維斯CI使用DefinitelyTyped/TSD時拋出的狀態碼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從我的本地機器上,我得到一個正常反應,所以它必須是特拉維斯和GitHub的API之間的事情。

+0

我剛剛得到同樣的問題。不知道如何解決它:) – Roland

回答

1

按照指示使用時隨時隨地tsd通過Blake Embrey,但你的本地機器,我們應該用一個.tsdrc我們在那裏添加一個Github API令牌(或者使用env var TSD_GITHUB_TOKEN,由於安全原因,這會更明智 - 在Travis上,您可以使用encrypt令牌)。

有關如何創建令牌的說明,也可以在DefinitelyTyped回購頁面上找到,所有內容都有解釋。

+0

哦,真好!我會給它一個鏡頭,並返回一些反饋:) – Waog

+0

它工作有點不同。我不得不創建一個GitHub令牌,就像在第二個鏈接中解釋的一樣。但環境變量只是使用UI在Travis的設置中設置的。 – Waog

+0

@waog我通常更喜歡CLI,這只是一個偏好問題:) – Roland