1
mirror of https://github.com/streamlink/streamlink synced 2024-11-01 01:19:33 +01:00
streamlink/.travis.yml
beardypig a14f170a04 sdist and wheel release fixes (#1758)
* build: fix for universal wheel on python 2.7

* release: fix build order for deploys

The script to build the sdist and wheel packages is run before the
script that uploads them to PyPI. The sdist script doesn't clean up
the environment, but extra prune options have been added to the
MANIFEST.in file (thanks @back-to).

* build: ensure twine/wheel up-to-date and upload sdist/whl separately
2018-06-07 18:01:16 -07:00

92 lines
2.3 KiB
YAML

language: python
env:
global:
- STREAMLINK_DIST_DIR=${TRAVIS_BUILD_DIR}/dist
- STREAMLINK_INSTALLER_DIST_DIR=${STREAMLINK_DIST_DIR}/nsis
- SDIST_KEY_FILE="${TRAVIS_BUILD_DIR}/signing.key"
matrix:
include:
- python: '2.7'
- python: '3.4'
- python: '3.5'
env: BUILD_DOCS=yes BUILD_INSTALLER=yes BUILD_SDIST=yes DEPLOY_PYPI=yes
- python: '3.6'
- python: '3.7-dev'
allow_failures:
- python: '2.6'
- python: '3.7-dev'
before_install:
- pip install --disable-pip-version-check --upgrade pip setuptools
- pip install -r dev-requirements.txt
- pip install pycountry
- pip install -r docs-requirements.txt
install:
- pip install -e .
script:
- pytest --cov
- if [[ $BUILD_DOCS == 'yes' ]]; then make --directory=docs html; fi
- if [[ $BUILD_INSTALLER == 'yes' ]]; then ./script/makeinstaller.sh; fi
after_success:
# push the docs only if the build was successful
- bash script/pushdocs.sh
- codecov
addons:
apt:
packages:
- nsis
before_deploy:
- ./script/bintrayconfig.sh
deploy:
- provider: releases
api_key: "${RELEASES_API_KEY}"
file: "${STREAMLINK_INSTALLER_DIST_DIR}/streamlink-${TRAVIS_TAG}.exe"
file_glob: true
skip_cleanup: true
on:
tags: true
condition: $BUILD_INSTALLER = yes
repo: streamlink/streamlink
- provider: script
script: python script/github_releases.py
skip_cleanup: true
on:
tags: true
condition: $BUILD_INSTALLER == yes
repo: streamlink/streamlink
- provider: bintray
file: build/bintray-nightly.json
user: "${BINTRAY_USER}"
key: "${BINTRAY_KEY}"
skip_cleanup: true
on:
branch: master
condition: $BUILD_INSTALLER == yes && $TRAVIS_EVENT_TYPE == cron
repo: streamlink/streamlink
- provider: script
script: ./script/sdistsign.sh
skip_cleanup: true
on:
tags: true
condition: $BUILD_SDIST == yes
repo: streamlink/streamlink
- provider: releases
api_key: "${RELEASES_API_KEY}"
file: "${STREAMLINK_DIST_DIR}/streamlink-${TRAVIS_TAG}*"
file_glob: true
skip_cleanup: true
on:
tags: true
condition: $BUILD_SDIST = yes
repo: streamlink/streamlink
after_deploy:
- if [[ "$BUILD_INSTALLER" == 'yes' && "$TRAVIS_EVENT_TYPE" == 'cron' ]]; then ./script/bintrayupdate.sh; fi