gem install travis
ssh-keygen -t rsa -b 4096 -f 'github_deploy_key' -N ''
cat github_deploy_key.pub | pbcopy
Paste deploy key in https://github.com/<USER>/<REPOSITORY>/settings/keys
Create a personal access token here: https://github.com/settings/tokens
The scopes for the token are documented here: https://docs.travis-ci.com/user/github-oauth-scopes/
travis login --pro --debug --github-token ghp_yourtoken
travis encrypt-file 'github_deploy_key' --debug --pro --github-token ghp_yourtoken
git add 'github_deploy_key.enc'
Add openssl line to before_install stage in your .travis.yml
- replace
$encrypted_xxxxxxxxxxxx_key
and$encrypted_xxxxxxxxxxxx_iv
, see output oftravis encrypt-file
before_install:
- >-
openssl aes-256-cbc
-K $encrypted_xxxxxxxxxxxx_key
-iv $encrypted_xxxxxxxxxxxx_iv
-in github_deploy_key.enc
-out github_deploy_key
-d
- chmod 600 github_deploy_key
- eval $(ssh-agent -s)
- ssh-add github_deploy_key
git add '.travis.yml'
git commit -m 'chore: add github deploy key'
git push