File tree Expand file tree Collapse file tree 6 files changed +183
-8
lines changed Expand file tree Collapse file tree 6 files changed +183
-8
lines changed Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -e -x
4
+
5
+ PYTHON_VERSIONS=" cp35-cp35m"
6
+
7
+ # Compile wheels
8
+ for PYTHON_VERSION in ${PYTHON_VERSIONS} ; do
9
+ PYTHON=" /opt/python/${PYTHON_VERSION} /bin/python"
10
+ PIP=" /opt/python/${PYTHON_VERSION} /bin/pip"
11
+ ${PIP} install --upgrade pip wheel
12
+ ${PIP} install --upgrade setuptools
13
+ ${PIP} install -r /io/.ci/requirements.txt
14
+ make -C /io/ PYTHON=" ${PYTHON} "
15
+ ${PIP} wheel /io/ -w /io/dist/
16
+ done
17
+
18
+ # Bundle external shared libraries into the wheels.
19
+ for whl in /io/dist/* .whl; do
20
+ auditwheel repair $whl -w /io/dist/
21
+ rm /io/dist/* -linux_* .whl
22
+ done
23
+
24
+ # Grab docker host, where Postgres should be running.
25
+ export PGHOST=$( ip route | awk ' /default/ { print $3 }' | uniq)
26
+ export PGUSER=" postgres"
27
+
28
+ for PYTHON_VERSION in ${PYTHON_VERSIONS} ; do
29
+ PYTHON=" /opt/python/${PYTHON_VERSION} /bin/python"
30
+ PIP=" /opt/python/${PYTHON_VERSION} /bin/pip"
31
+ ${PIP} install ${PYMODULE} --no-index -f file:///io/dist
32
+ rm -rf /io/tests/__pycache__
33
+ make -C /io/ PYTHON=" ${PYTHON} " test
34
+ rm -rf /io/tests/__pycache__
35
+ done
Original file line number Diff line number Diff line change
1
+ cython >= 0.24
2
+ uvloop >= 0.5.0
3
+ twine
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ if [ " ${TRAVIS_OS_NAME} " == " linux" ]; then
4
+ # Allow docker guests to connect to the database
5
+ sudo service postgresql stop 9.4
6
+ echo " listen_addresses = '*'" | \
7
+ sudo tee --append /etc/postgresql/9.4/main/postgresql.conf
8
+ echo " host all all 172.17.0.0/16 trust" | \
9
+ sudo tee --append /etc/postgresql/9.4/main/pg_hba.conf
10
+ sudo service postgresql start 9.4
11
+ fi
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -e -x
4
+
5
+
6
+ if [ -z " ${TRAVIS_TAG} " ]; then
7
+ # Not a release
8
+ exit 0
9
+ fi
10
+
11
+
12
+ pushd $( dirname $0 ) > /dev/null
13
+ _root=$( dirname $( pwd -P) )
14
+ popd > /dev/null
15
+
16
+
17
+ _upload_wheels () {
18
+ set +x
19
+ echo python -m twine upload \
20
+ --username " ${PYPI_USER} " --password " <secret>" \
21
+ " ${_root} /dist" /* .whl
22
+ python -m twine upload \
23
+ --username " ${PYPI_USER} " --password " ${PYPI_PASSWD} " \
24
+ " ${_root} /dist" /* .whl
25
+
26
+ set -x
27
+ sudo rm -rf " ${_root} /dist" /* .whl
28
+ }
29
+
30
+
31
+ # Release build
32
+ if [ " ${TRAVIS_OS_NAME} " == " linux" ]; then
33
+ docker pull quay.io/pypa/manylinux1_x86_64
34
+ docker run --rm \
35
+ -v " ${_root} " :/io \
36
+ quay.io/pypa/manylinux1_x86_64 \
37
+ /io/.ci/build-manylinux-wheels.sh
38
+
39
+ _upload_wheels
40
+
41
+ docker pull quay.io/pypa/manylinux1_i686
42
+ docker run --rm \
43
+ -v " ${_root} " :/io \
44
+ quay.io/pypa/manylinux1_i686 linux32 \
45
+ /io/.ci/build-manylinux-wheels.sh
46
+
47
+ _upload_wheels
48
+
49
+ elif [ " ${TRAVIS_OS_NAME} " == " osx" ]; then
50
+ eval " $( pyenv init -) "
51
+ pyenv local ${PYTHON_VERSION}
52
+
53
+ make -C " ${_root} "
54
+ pip wheel " ${_root} " -w " ${_root} /dist/"
55
+
56
+ pip install ${PYMODULE} --no-index -f " file:///${_root} /dist"
57
+ pushd / > /dev/null
58
+ make -C " ${_root} " test
59
+ popd > /dev/null
60
+
61
+ _upload_wheels
62
+
63
+ else
64
+ echo " Cannot build on ${TRAVIS_OS_NAME} ."
65
+ fi
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ set -e -x
4
+
5
+ if [ " ${TRAVIS_OS_NAME} " == " osx" ]; then
6
+ brew update
7
+
8
+ brew outdated postgresql || brew upgrade postgresql
9
+
10
+ brew outdated pyenv || brew upgrade pyenv
11
+ eval " $( pyenv init -) "
12
+ pyenv versions
13
+
14
+ if ! (pyenv versions | grep " ${PYTHON_VERSION} $" ); then
15
+ pyenv install ${PYTHON_VERSION}
16
+ fi
17
+ pyenv local ${PYTHON_VERSION}
18
+ fi
19
+
20
+ pip install --upgrade pip wheel
21
+ pip install --upgrade setuptools
22
+ pip install -r .ci/requirements.txt
Original file line number Diff line number Diff line change 1
- language : python
1
+ language : generic
2
2
3
- os :
4
- - linux
3
+ sudo : required
5
4
6
5
services :
7
6
- postgresql
7
+ - docker
8
8
9
9
addons :
10
- postgresql : " 9.4"
10
+ postgresql : ' 9.4'
11
11
12
- python :
13
- - 3.5
12
+ env :
13
+ global :
14
+ - PYMODULE=asyncpg
15
+ - PYPI_USER=magicstack-ci
16
+ - secure : " XEUUpzRZeesmMUfImKbCJm1D1LmWXkCW6ywtquuLEp6vRboH+URW8XtOhPehj47kn+/D4LpS9DR7GTBQ2DJR6kb07uqMu4b3WhTj8gewc8T5A0bxbdkkxHDfUCw7RF+EYLoN+n8xdqgBHImLLeuY/iRf+/IUJxGBARC4OZkejXhqJktNkXNO7aDcFfl9jcU0s1azaGbgeaShSAnnQPcdnJQ5tn7qHPPjTMWWly09A0K6CGqFK9bXUlD/hLGyC6NjOc8zMhv6vt4rI/zkjtSf219t4svivTjZsWWP6LMoWNWvwbOVfr8MThU4449lfplTWkmvEP6cQAJrvLjBOKOfwvV1MhqCMLGUMxeagYq7bHwSKQQ7t+r4a3jX94go+3Y1AQ0z9Yun+UW4qxrmHeIR5tLh2cePQylkIiTaWePZNPsVl3xF9HJtWcVgNgij4r+EU6WC9EqlV4DJyISjsptSa69CLBieWrzPYNxCPr6cTXYKKu6svRj3uho2q+c3Iavzjt4e5VEgppeduXIrvqMsaAa/E+j7b3QmC0HfZ4k8U5J2evtell5gh70Vf20A9LsOF06m+I0mSDwrpGasSFCNrWH4n3cUDTlGzc93Zqw5eAmg0yYxLKWk1sHNLOB3hNn+NLSIkS6Drcrsya+Fp5k93I4qDIXvC9n7ODLMirAJ76o="
17
+
18
+ matrix :
19
+ include :
20
+ - os : osx
21
+ osx_image : beta-xcode6.1 # OS X 10.9
22
+ # Travis macOS env does not support Python yet,
23
+ # so we have to set things up manually in install.sh.
24
+ env : PYTHON_VERSION=3.5.2
25
+ PIP_USER=1
26
+
27
+ - os : linux
28
+ dist : trusty
29
+ language : python
30
+ python : " 3.5"
31
+ services : [postgresql, docker]
32
+
33
+ cache :
34
+ directories :
35
+ - $HOME/.cache/pip
36
+
37
+ before_install :
38
+ - .ci/travis-before-install.sh
14
39
15
40
install :
16
- - " pip install cython"
17
- - " pip install uvloop"
41
+ - .ci/travis-install.sh
18
42
19
43
script :
44
+ - if [ "$TRAVIS_OS_NAME" == "osx" ]; then eval "$(pyenv init -)"; fi
20
45
- make && make test
21
46
- make debug && make test
47
+
48
+ before_deploy :
49
+ - .ci/travis-build-and-upload.sh
50
+
51
+ deploy :
52
+ skip_cleanup : true
53
+ provider : pypi
54
+ user : magicstack-ci
55
+ password :
56
+ secure : r8q6OnKwfMO3/obfBDLIjVHrk9VGwcKCrFAUefTvbVVO1oBxpT0gPbASorxgU27h5u2o6L0qp9YUitSyRJBfN4C7BM4aAzVp3FEVvC6KzUYxcxZguveq3Lc+6cBo+AFXE3Kuz7Zxmw3yNqIPkdHJrkKqdANLDVjrSs87uiPuK8s7oH7pxmVTq40ymdkA1Da5QsY6dONDohIJ3Z6HLlKEFzNYiFDY7NK+vDq/+U5UZZZlZb6MAQ07R4RvFoFnH0PNDnyJd6qGOJaJ1W1ge87lOOsdhsUeUiC1BuUGtlRPkwsNBdygJ5RDotn9O6gnvSdtra/d9z5Jpju8Vhbad2b3dKU32ZYnApmZuVGx9O/fQ9yaYc5KkJdjhAIHghfOL7UKOw9+IDzOcg8Glx7+uQ7vbwgY0TulJDCH2dWfwYXMfRdmzxOZlcTGVg1wtHB7s3bEvksG/N4YTn6YCqSPvJ4nbUQiZ0Ji4VCx8SX6S+vkEvVTUPPncmEBIoGAvmMtXBHs93FovwCFbNTugiDOeKB+rWnve9Hj45Ou6lmWNlIyWJss0k9waGmXltomYLKShMAZ5uqe+Oyk4889E2KFaGt34qEuXHAybpxXbjXJewVcMExBkHdRdRr0kVu7OO/7JVJ2kCkp2wRe9QKe0eBgCPs2eUIxKFVCOoDD1HMQ/ytbWIM=
57
+ distributions : sdist
58
+ on :
59
+ tags : true
60
+ all_branches : true
You can’t perform that action at this time.
0 commit comments