forked from ParallelSSH/ssh2-python
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
149 lines (141 loc) · 4.29 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
language: python
cache:
- pip
- directories:
- "$HOME/.pyenv"
- "$HOME/Library/Caches/Homebrew"
notifications:
email: false
sudo: required
dist: xenial
services:
- docker
python:
- 2.7
- 3.5
- 3.6
- 3.7
addons:
apt:
packages:
- openssh-server
- rpm
- dpkg
- cmake
install:
- pip install flake8 jinja2 sphinx sphinx_rtd_theme
- python setup.py build_ext --inplace
- eval "$(ssh-agent -s)"
script:
- pytest tests
- flake8 ssh2
# Test source distribution builds
- python setup.py sdist
- cd dist
- pip install *
- python -c 'from ssh2.session import Session; Session()'
- cd ..
- cd doc
- make html
- cd ..
jobs:
include:
- &osx-wheels
stage: build packages
os: osx
osx_image: xcode9.2
env:
- SYSTEM_LIBSSH2: 1
before_cache:
- brew cleanup
before_install:
- brew update
- brew install ccache
- brew outdated openssl || travis_wait brew upgrade openssl || echo "y"
- brew link --overwrite python@2 || brew install python@2 || brew link --overwrite python@2
- which python2
- python2 -c "from __future__ import print_function; import ssl; from platform import python_version; print(ssl.OPENSSL_VERSION); print(python_version())"
- sudo -H pip2 install twine
- which twine
- sudo ci/install-ssh2.sh
- cp /usr/local/lib/libssh2* .
- mkdir -p wheels
install:
- sudo -H pip2 install -U delocate wheel pip setuptools
- ls -lh
script:
- pip2 wheel .
- delocate-listdeps --all *.whl
- delocate-wheel -v *.whl
- delocate-listdeps --all *.whl
- ls -l *.whl
- rm -f *.dylib
- pip2 install --user -v *.whl
- pwd; mkdir temp; cd temp; pwd
- python -c "from ssh2.session import Session; Session()"
- cd ..; pwd
- mv -f *.whl wheels/
after_success:
- if [[ ! -z "$TRAVIS_TAG" ]]; then
twine upload --skip-existing -u $PYPI_U -p $PYPI_P wheels/*.whl;
fi
language: generic
python: skip
- <<: *osx-wheels
osx_image: xcode9.2
- <<: *osx-wheels
osx_image: xcode9.2
env:
- PYENV: 3.6.4
- SYSTEM_LIBSSH2: 1
install: skip
script:
- travis_wait ./ci/travis/pyenv-wheel.sh
- <<: *osx-wheels
osx_image: xcode9.4
env:
- PYENV: 3.6.4
- SYSTEM_LIBSSH2: 1
install: skip
script:
- travis_wait ./ci/travis/pyenv-wheel.sh
- <<: *osx-wheels
osx_image: xcode9.2
env:
- PYENV: 3.7.0
- SYSTEM_LIBSSH2: 1
install: skip
script:
- travis_wait ./ci/travis/pyenv-wheel.sh
- <<: *osx-wheels
osx_image: xcode9.4
env:
- PYENV: 3.7.0
- SYSTEM_LIBSSH2: 1
install: skip
script:
- travis_wait ./ci/travis/pyenv-wheel.sh
- stage: build packages
os: linux
python: 3.6
env:
- WHEELS=1
install:
- pip install twine
script:
- if [[ "$TRAVIS_PULL_REQUEST" == "false" ]]; then docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"; fi
- ./ci/travis/build-manylinux.sh
after_success:
- if [[ ! -z "$TRAVIS_TAG" ]]; then
twine upload --skip-existing -u $PYPI_U -p $PYPI_P wheelhouse/*.whl;
fi
deploy:
- provider: pypi
skip_cleanup: true
on:
repo: ParallelSSH/ssh2-python
tags: true
distributions: sdist
user: pkittenis
password:
secure: "eEBo76bmNWArLOzLNkv8whYO81HqkYpwUu3RqBHv6PNW/sI70VSIVfPTWo8ThlNkYSBy1Sxci6eU+Vd8qYH/vaCbl4068BkzroGUqGMLHXLRLEPQjO2pxTvnQ7Nbj/Mi9enoslLJKflx2USy2iPz1yGCWZrPzjLWmEMcx6j5e3fEUGF2p6p01w/zWxmiSoyJgBsby9P8Fl5nflsNMVR/or8frK4K1T6Y2oTuEx9aYymmBPFOO5DHaedDxnhZ04KKaACIECvKrT5V3PMM1jrE3qu6hJ1LS0/mSivEdCwCszHanjIQy/enkNtLgxVm4jIRUjuAwL1MmxPtkAUcKrQor1YokMqm5fExdwvnp+qjtyejfA3IvT93nYvCj4IEYNMDtUGFUBjsYLqg7Ked/jvO53Ek5WEAE/Mx8F/OAtuvkpEeUKTIWxfd+V0b7pgShVuU5zFyi3y97vpRtdwqzOFr8QT3Hq+g/RIdghPQ9pGQ3GOomTMO1B7mAyOG6SYyQM/wra2h2dQTHCbgzAtsPzZLiZhWIGcU7/mGLm0kZBT6McnH2//hsIPXG8S94u2MWE0KRH5YhJ/2ATWneYyFHWQfwqDeR/1CZe66gFcPJ9cOIG+8pcmXueLhnueDbh2EWa8jmumtrAz+z+rcokih0c7catT7pByDv24Ouuw2Yf3my60="