Create GitHub token with name like "Token for Travis CI deployment" and select public_repo
(or repo
). Keep in mind that this token is a private sensitive data! See:
Encrypt your token using Travis CLI:
> sudo gem install travis
> which travis
/usr/bin/travis
> sudo travis login --pro # required for a pro Travis CI account
> sudo travis encrypt -r username/reponame abc..YOUR.TOKEN.HERE...123
secure: "...."
Copy secure: "..."
string to .travis.yml
:
before_deploy:
- export FILE_TO_UPLOAD=$(ls _builds/*/Foo-*.tar.gz)
deploy:
provider: releases
api_key:
- secure: "Encrypted GITHUB OAUTH TOKEN"
file_glob: true
file: "${FILE_TO_UPLOAD}"
skip_cleanup: true
on:
tags: true
os:
- linux
- osx
Create GitHub token with name like "Token for AppVeyor CI deployment" and select public_repo
(or repo
). Keep in mind that this token is a private sensitive data! See:
Encrypt your token using form on appveyor.com.
Copy secure: "..."
string to appveyor.yml
:
artifacts:
- path: _builds\*\Foo-*.tar.gz
name: Releases
deploy:
provider: GitHub
auth_token:
secure: "Encrypted GITHUB OAUTH TOKEN"
artifact: /Foo-.*\.tar.gz/
draft: false
prerelease: false
on:
appveyor_repo_tag: true
If your project uses submodules, you will have to tell Appveyor to initialize them, as described here. This can be done in the install
section with the following git command:
install:
- cmd: git submodule update --init --recursive
> git tag vA.B.C
> git push --tags
Travis will deploy artifacts from Linux and OS X, AppVeyor will deploy artifacts from Windows.