Ответ 1
Вы, конечно же, можете! Первая проблема, как вы обнаружили, связана с использованием URL git://
для push, но протокол git может использоваться только для клонирования репозиториев.
Что касается ошибки анонимного доступа, это означает, что вы должны разрешить Travis войти в свою учетную запись GitHub, чтобы нажать на репозиторий. Теперь вы, вероятно, не хотите предоставлять Travis свой пароль GitHub, и вам, безусловно, этого не нужно. Вместо этого мы будем использовать токены OAuth. Если вы не знаете, что это значит, не волнуйтесь, я объясню. Ток OAuth в большинстве случаев работает как пароль, но легче отменить доступ к отдельным вещам.
Чтобы создать токен OAuth, перейдите на страницу "Настройки приложений GitHub" и нажмите "Создать новый токен" в разделе "Личный токен доступа к API". Вероятно, вы захотите добавить примечание к тому, что это такое, таким образом легче отслеживать и легче отменить, если вам нужно в будущем. Обратите внимание, что этот токен по существу является паролем, в котором он предоставляет доступ к тем же вещам, что и пароль.
Затем вам нужно добавить токен в файл .travis.yml. Во-первых, мы зашифруем токен, чтобы увидеть его только Трэвис. Для этого вам нужно установить travis
Rubygem: gem install travis
.
travis encrypt GH_TOKEN="the-token-from-github" --add
Теперь ваш .travis.yml должен выглядеть примерно так:
…
env:
global:
- secure: "lots-of-seemingly-random-characters"
…
Теперь, чтобы Travis действительно использовал этот токен, вам нужно добавить еще кое-что в свой .travis.yml тоже.
after_script:
- git config credential.helper "store --file=.git/credentials"
- echo "https://${GH_TOKEN}:@github.com" > .git/credentials
- node ./node_modules/grunt-cli/bin/grunt release
Это сначала говорит git искать учетные данные в файле .git/credentials
. Это может быть любой файл, который вы хотите, действительно, но убедитесь, что это не тот, который вы собираетесь нажать на GitHub. Затем добавим токен в файл .git/credentials
. git теперь знает, что для нажатий на https://github.com
он может использовать ваш токен для аутентификации.
Вы должны быть настроены!
PS: Если вы хотите только нажать GitHub, если сборка пройдет, вы можете изменить after_script
на after_success
.