2015-06-29 2 views
0

для тестирования на Travis-CI Мне нужно загрузить некоторые проекты из github by wget. Вот что я имею в Трэвисе журналах:Возможно ли использовать некоторые авторизированные учетные данные travis-ci или моего пользователя для использования github api

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

Вы должны быть в состоянии использовать Github OAuth token, сохраняя его надежно в encrypted variable в Travis CI и затем передать его в wget вызова, как это:

// First encrypt your Github OAuth token 
travis encrypt MY_GITHUB_OAUTH_TOKEN=token --add 

предыдущий вызов будет автоматически добавить переменную хеш окружения к вашему файлу .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 

Надеется, что это помогает!

+0

Мой проект с открытым исходным кодом использует бесплатный план travis, поэтому у нас нет выделенного сервера, я также использую «sudo: false», который также немного ограничивает. «Зашифрованные переменные не добавляются в ненадежные сборки, такие как запросы на загрузку, поступающие из другого репозитория». - это не работает для нас, мне нужно, чтобы Travis собирался проверять PR от участников. Есть ли у вас какие-либо другие идеи? –

Смежные вопросы