85 lines
1.8 KiB
YAML
85 lines
1.8 KiB
YAML
sudo: required
|
|
dist: xenial
|
|
language: python
|
|
python: "3.8"
|
|
|
|
jobs:
|
|
include:
|
|
- stage: code quality
|
|
name: "mypy"
|
|
before_install:
|
|
- pip install mypy lxml
|
|
- pip install -e .
|
|
|
|
script:
|
|
- mypy aioupnp --txt-report . --scripts-are-modules; cat index.txt; rm index.txt
|
|
|
|
- &tests
|
|
stage: test
|
|
name: "Unit Tests w/ Python 3.8"
|
|
python: "3.8"
|
|
before_install:
|
|
- pip install pylint coverage
|
|
- pip install -e .
|
|
|
|
script:
|
|
- HOME=/tmp coverage run -m unittest discover -v tests
|
|
|
|
after_success:
|
|
- bash <(curl -s https://codecov.io/bash)
|
|
|
|
- <<: *tests
|
|
name: "Unit Tests w/ Python 3.7"
|
|
python: "3.7"
|
|
|
|
- <<: *tests
|
|
name: "Unit Tests w/ Python 3.6"
|
|
python: "3.6"
|
|
|
|
#
|
|
#if: tag IS present
|
|
# - &build
|
|
# name: "Linux Release"
|
|
# python: "3.6"
|
|
# install:
|
|
# - pip install pyinstaller
|
|
# - pip install -e .
|
|
#
|
|
# script:
|
|
# - pyinstaller -F -n aioupnp aioupnp/__main__.py
|
|
# - chmod +x dist/aioupnp
|
|
# - zip -j dist/aioupnp-${OS}.zip dist/aioupnp
|
|
#
|
|
# env: OS=linux
|
|
#
|
|
# addons:
|
|
# artifacts:
|
|
# working_dir: dist
|
|
# paths:
|
|
# - aioupnp-${OS}.zip
|
|
#
|
|
# - <<: *build
|
|
# name: "Mac Release"
|
|
# os: osx
|
|
# osx_image: xcode9.4
|
|
# language: generic
|
|
# env: OS=mac
|
|
# install:
|
|
# - pip3 install pyinstaller
|
|
# - pip3 install -e .
|
|
#
|
|
# - <<: *build
|
|
# name: "Windows Release"
|
|
# language: generic
|
|
# services:
|
|
# - docker
|
|
# install:
|
|
# - docker pull cdrx/pyinstaller-windows:python3-32bit
|
|
# script:
|
|
# - docker run -v "$(pwd):/src/aioupnp" cdrx/pyinstaller-windows:python3-32bit aioupnp/wine_build.sh
|
|
# - sudo zip -j dist/aioupnp-windows.zip dist/aioupnp.exe
|
|
# addons:
|
|
# artifacts:
|
|
# working_dir: dist
|
|
# paths:
|
|
# - aioupnp-windows.zip
|