From 744d8736a658b2b71a94d430c24a4f8be595bc2a Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Sat, 12 Jan 2019 03:21:56 -0500 Subject: [PATCH 01/10] [ci] refs #85 - Only deploy bdist_wheel to PyPI from Travis --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index fbd9ce10..2ec6ce7e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -90,7 +90,7 @@ deploy: user: olemis password: secure: Lek+1bI8jaYADO5b4oLTirI3xqdYktV/ihyGCraK+Glp/U6FwwlF3ttRpvdT9/YyVRgWEt/jePQxH+COW3WbKh54MZWCMlMKmWc4JTs6zHliAWXecAQSvPDWHjzO0F1iz839MRBfQdBUMh1g7BFi4nC886DS7ts7+p2XXGsWwtI+quOwvZ6bS0M6nMTecG8OtpYCkOAoGZI6JEoDXyIygPR5+TIWXO2QFt7KT+fsircOvDHzdA2YY/oexwUWwLLf7J0qnRm2AEx0dDjpFTCaOr6+VxdjD7F8qDoXePzVEvW7AG6k0Emx3Vuj9JiTgga8qX3ExHSXoomNhiJoOM30UbH00mdT5Fz+6HqYqFieijX/Li2fExqXXp6Za4VHMrwImrXoYQw4350F8b6QzF7E4WouBBysBZIkBEswp69783uU1lGcbU0wnyj8SN6rYIPO03MG1e5HO+Dd9avMtCMdGj3qsNlmfK0v3fAGjrYsStMQtrfOUZGTahrHPh7P3VPB4qmsJ7eNo+lFtLN0I2+ehoqMd3UH+qggdFdLQFGVMe0SWCUV9Aoyxo9vVqbnPzclsmWL44M6YRDIgOtochNiDINbdx/EA/L517GrpSDjZwvhrJkoCE7Wr9m5YcC+x8qQXCpQ4dcYAJ4C+okASAIwtjOai5dQB7TfHJfN5XzSLUI= - distributions: sdist bdist_wheel + distributions: bdist_wheel skip_existing: true on: tags: true From 89f3faea8a63eaf7f6cd597df9307ec6d414211a Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Sat, 12 Jan 2019 19:31:46 -0500 Subject: [PATCH 02/10] [ci] refs #85 - Deploy to Github releases (rather than PyPI) --- .travis.yml | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2ec6ce7e..924712d2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -79,19 +79,29 @@ before_install: - echo "PATH=$PATH" install: - eval "$(gimme 1.10)" +script: +- make test-ci after_failure: - cat ./.tox/${TOXENV}/log/${TOXENV}-*.log -script: make test-ci notifications: email: false webhooks: https://fathomless-fjord-24024.herokuapp.com/notify deploy: - provider: pypi - user: olemis - password: - secure: Lek+1bI8jaYADO5b4oLTirI3xqdYktV/ihyGCraK+Glp/U6FwwlF3ttRpvdT9/YyVRgWEt/jePQxH+COW3WbKh54MZWCMlMKmWc4JTs6zHliAWXecAQSvPDWHjzO0F1iz839MRBfQdBUMh1g7BFi4nC886DS7ts7+p2XXGsWwtI+quOwvZ6bS0M6nMTecG8OtpYCkOAoGZI6JEoDXyIygPR5+TIWXO2QFt7KT+fsircOvDHzdA2YY/oexwUWwLLf7J0qnRm2AEx0dDjpFTCaOr6+VxdjD7F8qDoXePzVEvW7AG6k0Emx3Vuj9JiTgga8qX3ExHSXoomNhiJoOM30UbH00mdT5Fz+6HqYqFieijX/Li2fExqXXp6Za4VHMrwImrXoYQw4350F8b6QzF7E4WouBBysBZIkBEswp69783uU1lGcbU0wnyj8SN6rYIPO03MG1e5HO+Dd9avMtCMdGj3qsNlmfK0v3fAGjrYsStMQtrfOUZGTahrHPh7P3VPB4qmsJ7eNo+lFtLN0I2+ehoqMd3UH+qggdFdLQFGVMe0SWCUV9Aoyxo9vVqbnPzclsmWL44M6YRDIgOtochNiDINbdx/EA/L517GrpSDjZwvhrJkoCE7Wr9m5YcC+x8qQXCpQ4dcYAJ4C+okASAIwtjOai5dQB7TfHJfN5XzSLUI= - distributions: bdist_wheel - skip_existing: true - on: - tags: true - repo: skycoin/pyskycoin + matrix: + - provider: releases + api_key: + secure: kfY02m+bBVHJqwAoeJnLLPs2W7nis+YkfaU/Cb4IFsNlgjszHNDNZZikLdiO7TDw3XDLIPTHF0yesoeobA8oLiD8D1Z9n6eZg6fuQPBeOA2qOvBXasJNN+fZwJztSlr8yyVUp7OX+rWT0TNbDaqRI8MTJseKX7x8yIDi9Cxnkh6RIoPbvrdpmEvwlYf76ukC7Caw1IjBz/0QSML5C9U3hmkSNMGGzQh/oN4VexclDTP1Ze3DRXxXS8cSZMP8FaDSRt90AFErTJYO2hn4U3zCqL8eW6q/caL30hxdXN1xZuEwik3OfTiqB/86DOAVqJJAcpHCp1B/1JooSQ8SA0nsqTiw4CAAyR4a3cQcsbAM54kmbnTLj6GZg7OFn6MeYlsVpfx1E606uoHQjglHJZa0qPmwvEQE70gW9zxH3KGhiYLDba/ONtZWe0sc228jsrcqxQYvBfpRvizjpuEFPW2Bn6d8+C2mJzHWceAoUfvy1mhfZzYrrQJArewD55RFryqdjWpJg9RjF095rVWYCxq1Q90Xz1Ogx7f8y07MK747wYrgAiTcXnoX+pu6PzWYmK17y1N/9FamnUzmFUhv6xam7xFCAlR2yBvHnpJabgUjrcHnL3Ik7VQvZhPpHmf2M+xChZQgqOrcAAPz0mpUI4x1x1uudjas+WEO1fJBu01m6Xg= + file: dist/* + skip_cleanup: true + on: + tags: true + repo: skycoin/pyskycoin +# - provider: pypi +# user: +# secure: qPng5d9MuWToDdnABpvUvKspQJ2xj+evgBQOMxpCpXKkrp3EcJtT7VA4bi3k3RlShiKMw71+gqqpGFOO8QshRRf0qldDSzwYefUxe0/dqwuKcb77tY4yUZJtYi3MX/jmWUW0kLSedNGXv42ye4TbFxnd0yCCNVrffbIclcIapzqAECB2a61btcrLTWqaqsO5BYitEQ9VfRtv20Kx4wSjxECNGr354kYV95d74g6zF0OzxMcxha2VB4MYKQ308gX1ISF11ZuaW35ZRa81dT8/fWa9j7/xhpXVBZ6craCBtAFc3q5AcQL0FlYmhM1XFgDanhv3Uxw75mhjapyMedQFpmRT+2ej4v+Le9Etf8rxeebZRJBch0o/zw8ZRUltKSeN8comWSCwaS1NQVauhb9D0cQ7R+0ULkLkBw3E4Os+9wLWNPppw4p7v4m5SpCcD5AVeBuUFd4F9y4LNfjWGrEMfyGjcSyZqZts0xoZ3L6ta05n1vr84ah8DpQRHrMl6PeuH0dfbYRxnGEhBJcEfXZ2RmqC6EBdV1OBnWh91bUpltnwv/kG+aIhtgp/ZSQY1DukglJ2QDrXZZ0HI7TjXwYTJeScPuxsbPcluepfFrxU0K3dib8JyeJEQOfN1ioE6ln9TDGcDgTuYvBbA3ndjtqJZeWiUS7siyO9d7aE2kPZOSI= +# password: +# secure: Lek+1bI8jaYADO5b4oLTirI3xqdYktV/ihyGCraK+Glp/U6FwwlF3ttRpvdT9/YyVRgWEt/jePQxH+COW3WbKh54MZWCMlMKmWc4JTs6zHliAWXecAQSvPDWHjzO0F1iz839MRBfQdBUMh1g7BFi4nC886DS7ts7+p2XXGsWwtI+quOwvZ6bS0M6nMTecG8OtpYCkOAoGZI6JEoDXyIygPR5+TIWXO2QFt7KT+fsircOvDHzdA2YY/oexwUWwLLf7J0qnRm2AEx0dDjpFTCaOr6+VxdjD7F8qDoXePzVEvW7AG6k0Emx3Vuj9JiTgga8qX3ExHSXoomNhiJoOM30UbH00mdT5Fz+6HqYqFieijX/Li2fExqXXp6Za4VHMrwImrXoYQw4350F8b6QzF7E4WouBBysBZIkBEswp69783uU1lGcbU0wnyj8SN6rYIPO03MG1e5HO+Dd9avMtCMdGj3qsNlmfK0v3fAGjrYsStMQtrfOUZGTahrHPh7P3VPB4qmsJ7eNo+lFtLN0I2+ehoqMd3UH+qggdFdLQFGVMe0SWCUV9Aoyxo9vVqbnPzclsmWL44M6YRDIgOtochNiDINbdx/EA/L517GrpSDjZwvhrJkoCE7Wr9m5YcC+x8qQXCpQ4dcYAJ4C+okASAIwtjOai5dQB7TfHJfN5XzSLUI= +# skip_existing: true +# on: +# tags: true +# repo: skycoin/pyskycoin From 8f7ff0538eb0597bdc703cefd472dfdbb6bff288 Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Mon, 14 Jan 2019 16:26:54 -0500 Subject: [PATCH 03/10] [ci] refs #104 - Production and dev install requirements . Update MANIFEST --- MANIFEST.in | 3 +++ requirements.dev.txt | 4 ++++ requirements.txt | 3 +++ 3 files changed, 10 insertions(+) create mode 100644 requirements.dev.txt create mode 100644 requirements.txt diff --git a/MANIFEST.in b/MANIFEST.in index 6ec89f8e..336a214c 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -4,6 +4,9 @@ recursive-include . *.md # Include the license file include LICENSE.txt +include requirements.txt +include requirements.dev.txt + include Makefile include gopath/src/github.com/skycoin/skycoin/Makefile recursive-exclude *.a diff --git a/requirements.dev.txt b/requirements.dev.txt new file mode 100644 index 00000000..c15f3450 --- /dev/null +++ b/requirements.dev.txt @@ -0,0 +1,4 @@ + +pytest +pytest-runner + diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 00000000..b28b04f6 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ + + + From 537c9f988fdb7715959571d8b0d7b87fbd187a7e Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 00:49:29 -0500 Subject: [PATCH 04/10] [ci] refs #104 - Build multilinux wheels using PyPA Docker images --- .travis.yml | 38 ++++++++++++++++++++++++++------------ .travis/build_wheels.sh | 23 +++++++++++++++++++++++ 2 files changed, 49 insertions(+), 12 deletions(-) create mode 100755 .travis/build_wheels.sh diff --git a/.travis.yml b/.travis.yml index 924712d2..e7a5baaf 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,6 +29,8 @@ matrix: dist: xenial python: 3.7 sudo: true + services: + - docker env: - TOXENV=py37 - PYTHON=3.7 @@ -61,26 +63,37 @@ before_install: - cd gopath/src/github.com/skycoin/skycoin && git checkout v0.25.0 && cd ${TRAVIS_BUILD_DIR} - if [[ $TRAVIS_OS_NAME == 'linux' ]]; then bash ./.travis/install-linux.sh ; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then bash ./.travis/install-osx.sh; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_VERSION="$(echo ${PYTHON} | - cut -d . -f 1,2)" ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_PATH="$(pyenv which python${PYCMD_VERSION})" - ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_DIRPATH="$( dirname ${PYCMD_PATH} - )" ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PATH="${PYCMD_DIRPATH}:/Users/travis/.pyenv/shims:${PATH}" - ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then eval "alias python${PYCMD_VERSION}=$(pyenv - which python${PYCMD_VERSION})" && eval "alias python2.7=$(pyenv which python2.7)"; +- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then + export PYCMD_VERSION="$(echo ${PYTHON} | cut -d . -f 1,2)" ; + fi +- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_PATH="$(pyenv which python${PYCMD_VERSION})"; fi +- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_DIRPATH="$( dirname ${PYCMD_PATH})" ; fi +- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PATH="${PYCMD_DIRPATH}:/Users/travis/.pyenv/shims:${PATH}"; fi +- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then + eval "alias python${PYCMD_VERSION}=$(pyenv which python${PYCMD_VERSION})" && eval "alias python2.7=$(pyenv which python2.7)"; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then pyenv versions ; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then pyenv which python${PYCMD_VERSION} ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then eval "python${PYCMD_VERSION} --version" - ; fi +- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then eval "python${PYCMD_VERSION} --version"; fi - echo "PATH=$PATH" install: - eval "$(gimme 1.10)" +before_script: + # Install PyPA Docker images for building multilinux wheels +- docker pull quay.io/pypa/manylinux1_x86_64 +- docker pull quay.io/pypa/manylinux1_i686 script: + # Test PySkycoin - make test-ci +- if [ ( $TRAVIS_OS_NAME == 'linux' ) -a ( $TOXENV == 'py37') -a ( $TRAVIS_TAG != '' ) ]; then + docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_x86_64 /io/travis/build-wheels.sh + ls wheelhouse/ + fi +- if [ ( $TRAVIS_OS_NAME == 'linux' ) -a ( $TOXENV == 'py37') -a ( $TRAVIS_TAG != '' ) ]; then + docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_i686 linux32 /io/travis/build-wheels.sh + ls wheelhouse/ + fi +- cp wheelhouse/* dist/* after_failure: - cat ./.tox/${TOXENV}/log/${TOXENV}-*.log notifications: @@ -96,6 +109,7 @@ deploy: on: tags: true repo: skycoin/pyskycoin +# FIXME: Upload manylinux wheels # - provider: pypi # user: # secure: qPng5d9MuWToDdnABpvUvKspQJ2xj+evgBQOMxpCpXKkrp3EcJtT7VA4bi3k3RlShiKMw71+gqqpGFOO8QshRRf0qldDSzwYefUxe0/dqwuKcb77tY4yUZJtYi3MX/jmWUW0kLSedNGXv42ye4TbFxnd0yCCNVrffbIclcIapzqAECB2a61btcrLTWqaqsO5BYitEQ9VfRtv20Kx4wSjxECNGr354kYV95d74g6zF0OzxMcxha2VB4MYKQ308gX1ISF11ZuaW35ZRa81dT8/fWa9j7/xhpXVBZ6craCBtAFc3q5AcQL0FlYmhM1XFgDanhv3Uxw75mhjapyMedQFpmRT+2ej4v+Le9Etf8rxeebZRJBch0o/zw8ZRUltKSeN8comWSCwaS1NQVauhb9D0cQ7R+0ULkLkBw3E4Os+9wLWNPppw4p7v4m5SpCcD5AVeBuUFd4F9y4LNfjWGrEMfyGjcSyZqZts0xoZ3L6ta05n1vr84ah8DpQRHrMl6PeuH0dfbYRxnGEhBJcEfXZ2RmqC6EBdV1OBnWh91bUpltnwv/kG+aIhtgp/ZSQY1DukglJ2QDrXZZ0HI7TjXwYTJeScPuxsbPcluepfFrxU0K3dib8JyeJEQOfN1ioE6ln9TDGcDgTuYvBbA3ndjtqJZeWiUS7siyO9d7aE2kPZOSI= diff --git a/.travis/build_wheels.sh b/.travis/build_wheels.sh new file mode 100755 index 00000000..5ed12676 --- /dev/null +++ b/.travis/build_wheels.sh @@ -0,0 +1,23 @@ +#!/bin/bash +set -e -x + +# Install a system package required by our library +yum install -y atlas-devel + +# Compile wheels +for PYBIN in /opt/python/*/bin; do + "${PYBIN}/pip" install -r /io/requirements.dev.txt + "${PYBIN}/pip" wheel /io/ -w wheelhouse/ +done + +# Bundle external shared libraries into the wheels +for whl in wheelhouse/*.whl; do + auditwheel repair "$whl" -w /io/wheelhouse/ +done + +# Install packages and test +for PYBIN in /opt/python/*/bin/; do + "${PYBIN}/pip" install pyskycoin --no-index -f /io/wheelhouse + (cd /io ; "${PYBIN}/python" -m pytest tests --showlocals ) +done + From d5e00fcf41d776a4cb996d6884df43a10ce7f861 Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 02:00:36 -0500 Subject: [PATCH 05/10] [ci] refs #104 - Unify PYPI deployment check in PYPI_DEPLOY --- .travis.yml | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index e7a5baaf..4c771b41 100644 --- a/.travis.yml +++ b/.travis.yml @@ -60,6 +60,10 @@ matrix: - PYTHON=3.7.1 - TOXENV=py37 before_install: +- if [ ( $TRAVIS_OS_NAME == 'linux' ) -a ( $TOXENV == 'py37') -a ( $TRAVIS_TAG != '' ) ]; then + export PYPI_DEPLOY=true ; + echo "Deploying to PYPI" + fi - cd gopath/src/github.com/skycoin/skycoin && git checkout v0.25.0 && cd ${TRAVIS_BUILD_DIR} - if [[ $TRAVIS_OS_NAME == 'linux' ]]; then bash ./.travis/install-linux.sh ; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then bash ./.travis/install-osx.sh; fi @@ -80,20 +84,21 @@ install: - eval "$(gimme 1.10)" before_script: # Install PyPA Docker images for building multilinux wheels -- docker pull quay.io/pypa/manylinux1_x86_64 -- docker pull quay.io/pypa/manylinux1_i686 +- if [ $PYPI_DEPLOY = "true" ]; then docker pull quay.io/pypa/manylinux1_x86_64 ; fi +- if [ $PYPI_DEPLOY = "true" ]; then docker pull quay.io/pypa/manylinux1_i686 ; fi script: # Test PySkycoin - make test-ci -- if [ ( $TRAVIS_OS_NAME == 'linux' ) -a ( $TOXENV == 'py37') -a ( $TRAVIS_TAG != '' ) ]; then +- mkdir -p dist +- if [ $PYPI_DEPLOY = "true" ]; then docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_x86_64 /io/travis/build-wheels.sh ls wheelhouse/ fi -- if [ ( $TRAVIS_OS_NAME == 'linux' ) -a ( $TOXENV == 'py37') -a ( $TRAVIS_TAG != '' ) ]; then +- if [ $PYPI_DEPLOY = "true" ]; then docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_i686 linux32 /io/travis/build-wheels.sh ls wheelhouse/ + cp wheelhouse/* dist/* fi -- cp wheelhouse/* dist/* after_failure: - cat ./.tox/${TOXENV}/log/${TOXENV}-*.log notifications: From bcb0e1b4adc3d588453a854986a7765ec66a813a Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 02:09:23 -0500 Subject: [PATCH 06/10] [ci] refs #104 - Publish sdist on to PyPI --- .travis.yml | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index 4c771b41..8ea43ccb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -114,13 +114,15 @@ deploy: on: tags: true repo: skycoin/pyskycoin -# FIXME: Upload manylinux wheels -# - provider: pypi -# user: -# secure: qPng5d9MuWToDdnABpvUvKspQJ2xj+evgBQOMxpCpXKkrp3EcJtT7VA4bi3k3RlShiKMw71+gqqpGFOO8QshRRf0qldDSzwYefUxe0/dqwuKcb77tY4yUZJtYi3MX/jmWUW0kLSedNGXv42ye4TbFxnd0yCCNVrffbIclcIapzqAECB2a61btcrLTWqaqsO5BYitEQ9VfRtv20Kx4wSjxECNGr354kYV95d74g6zF0OzxMcxha2VB4MYKQ308gX1ISF11ZuaW35ZRa81dT8/fWa9j7/xhpXVBZ6craCBtAFc3q5AcQL0FlYmhM1XFgDanhv3Uxw75mhjapyMedQFpmRT+2ej4v+Le9Etf8rxeebZRJBch0o/zw8ZRUltKSeN8comWSCwaS1NQVauhb9D0cQ7R+0ULkLkBw3E4Os+9wLWNPppw4p7v4m5SpCcD5AVeBuUFd4F9y4LNfjWGrEMfyGjcSyZqZts0xoZ3L6ta05n1vr84ah8DpQRHrMl6PeuH0dfbYRxnGEhBJcEfXZ2RmqC6EBdV1OBnWh91bUpltnwv/kG+aIhtgp/ZSQY1DukglJ2QDrXZZ0HI7TjXwYTJeScPuxsbPcluepfFrxU0K3dib8JyeJEQOfN1ioE6ln9TDGcDgTuYvBbA3ndjtqJZeWiUS7siyO9d7aE2kPZOSI= -# password: -# secure: Lek+1bI8jaYADO5b4oLTirI3xqdYktV/ihyGCraK+Glp/U6FwwlF3ttRpvdT9/YyVRgWEt/jePQxH+COW3WbKh54MZWCMlMKmWc4JTs6zHliAWXecAQSvPDWHjzO0F1iz839MRBfQdBUMh1g7BFi4nC886DS7ts7+p2XXGsWwtI+quOwvZ6bS0M6nMTecG8OtpYCkOAoGZI6JEoDXyIygPR5+TIWXO2QFt7KT+fsircOvDHzdA2YY/oexwUWwLLf7J0qnRm2AEx0dDjpFTCaOr6+VxdjD7F8qDoXePzVEvW7AG6k0Emx3Vuj9JiTgga8qX3ExHSXoomNhiJoOM30UbH00mdT5Fz+6HqYqFieijX/Li2fExqXXp6Za4VHMrwImrXoYQw4350F8b6QzF7E4WouBBysBZIkBEswp69783uU1lGcbU0wnyj8SN6rYIPO03MG1e5HO+Dd9avMtCMdGj3qsNlmfK0v3fAGjrYsStMQtrfOUZGTahrHPh7P3VPB4qmsJ7eNo+lFtLN0I2+ehoqMd3UH+qggdFdLQFGVMe0SWCUV9Aoyxo9vVqbnPzclsmWL44M6YRDIgOtochNiDINbdx/EA/L517GrpSDjZwvhrJkoCE7Wr9m5YcC+x8qQXCpQ4dcYAJ4C+okASAIwtjOai5dQB7TfHJfN5XzSLUI= -# skip_existing: true -# on: -# tags: true -# repo: skycoin/pyskycoin + # FIXME: Upload manylinux wheels + - provider: pypi + distributions: sdist + skip_cleanup: true + skip_existing: true + user: + secure: qPng5d9MuWToDdnABpvUvKspQJ2xj+evgBQOMxpCpXKkrp3EcJtT7VA4bi3k3RlShiKMw71+gqqpGFOO8QshRRf0qldDSzwYefUxe0/dqwuKcb77tY4yUZJtYi3MX/jmWUW0kLSedNGXv42ye4TbFxnd0yCCNVrffbIclcIapzqAECB2a61btcrLTWqaqsO5BYitEQ9VfRtv20Kx4wSjxECNGr354kYV95d74g6zF0OzxMcxha2VB4MYKQ308gX1ISF11ZuaW35ZRa81dT8/fWa9j7/xhpXVBZ6craCBtAFc3q5AcQL0FlYmhM1XFgDanhv3Uxw75mhjapyMedQFpmRT+2ej4v+Le9Etf8rxeebZRJBch0o/zw8ZRUltKSeN8comWSCwaS1NQVauhb9D0cQ7R+0ULkLkBw3E4Os+9wLWNPppw4p7v4m5SpCcD5AVeBuUFd4F9y4LNfjWGrEMfyGjcSyZqZts0xoZ3L6ta05n1vr84ah8DpQRHrMl6PeuH0dfbYRxnGEhBJcEfXZ2RmqC6EBdV1OBnWh91bUpltnwv/kG+aIhtgp/ZSQY1DukglJ2QDrXZZ0HI7TjXwYTJeScPuxsbPcluepfFrxU0K3dib8JyeJEQOfN1ioE6ln9TDGcDgTuYvBbA3ndjtqJZeWiUS7siyO9d7aE2kPZOSI= + password: + secure: Lek+1bI8jaYADO5b4oLTirI3xqdYktV/ihyGCraK+Glp/U6FwwlF3ttRpvdT9/YyVRgWEt/jePQxH+COW3WbKh54MZWCMlMKmWc4JTs6zHliAWXecAQSvPDWHjzO0F1iz839MRBfQdBUMh1g7BFi4nC886DS7ts7+p2XXGsWwtI+quOwvZ6bS0M6nMTecG8OtpYCkOAoGZI6JEoDXyIygPR5+TIWXO2QFt7KT+fsircOvDHzdA2YY/oexwUWwLLf7J0qnRm2AEx0dDjpFTCaOr6+VxdjD7F8qDoXePzVEvW7AG6k0Emx3Vuj9JiTgga8qX3ExHSXoomNhiJoOM30UbH00mdT5Fz+6HqYqFieijX/Li2fExqXXp6Za4VHMrwImrXoYQw4350F8b6QzF7E4WouBBysBZIkBEswp69783uU1lGcbU0wnyj8SN6rYIPO03MG1e5HO+Dd9avMtCMdGj3qsNlmfK0v3fAGjrYsStMQtrfOUZGTahrHPh7P3VPB4qmsJ7eNo+lFtLN0I2+ehoqMd3UH+qggdFdLQFGVMe0SWCUV9Aoyxo9vVqbnPzclsmWL44M6YRDIgOtochNiDINbdx/EA/L517GrpSDjZwvhrJkoCE7Wr9m5YcC+x8qQXCpQ4dcYAJ4C+okASAIwtjOai5dQB7TfHJfN5XzSLUI= + on: + tags: true + repo: skycoin/pyskycoin From 7f287b160d8bb07f1479d1822043e8355dbd0cae Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 02:17:47 -0500 Subject: [PATCH 07/10] [ci] refs #104 - Remove parenthesis in PYPI_DEPLOY condition check --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 8ea43ccb..616c6f8a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -60,7 +60,7 @@ matrix: - PYTHON=3.7.1 - TOXENV=py37 before_install: -- if [ ( $TRAVIS_OS_NAME == 'linux' ) -a ( $TOXENV == 'py37') -a ( $TRAVIS_TAG != '' ) ]; then +- if [ $TRAVIS_OS_NAME == 'linux' -a $TOXENV == 'py37' -a $TRAVIS_TAG != '' ]; then export PYPI_DEPLOY=true ; echo "Deploying to PYPI" fi From d0aabd00dd015c5f16c76f4fdef70c19985da6d8 Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 02:48:27 -0500 Subject: [PATCH 08/10] [ci] refs #104 - Escape variable expansion with double quote chars --- .travis.yml | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/.travis.yml b/.travis.yml index 616c6f8a..1cfc07ea 100644 --- a/.travis.yml +++ b/.travis.yml @@ -60,45 +60,46 @@ matrix: - PYTHON=3.7.1 - TOXENV=py37 before_install: -- if [ $TRAVIS_OS_NAME == 'linux' -a $TOXENV == 'py37' -a $TRAVIS_TAG != '' ]; then +- if [ "$TRAVIS_OS_NAME" == 'linux' && "$TOXENV" == 'py37' && "$TRAVIS_TAG" != '' ]; then export PYPI_DEPLOY=true ; echo "Deploying to PYPI" fi - cd gopath/src/github.com/skycoin/skycoin && git checkout v0.25.0 && cd ${TRAVIS_BUILD_DIR} -- if [[ $TRAVIS_OS_NAME == 'linux' ]]; then bash ./.travis/install-linux.sh ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then bash ./.travis/install-osx.sh; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then +- if [[ "$TRAVIS_OS_NAME" == 'linux' ]]; then bash ./.travis/install-linux.sh ; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then bash ./.travis/install-osx.sh; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then export PYCMD_VERSION="$(echo ${PYTHON} | cut -d . -f 1,2)" ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_PATH="$(pyenv which python${PYCMD_VERSION})"; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PYCMD_DIRPATH="$( dirname ${PYCMD_PATH})" ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then export PATH="${PYCMD_DIRPATH}:/Users/travis/.pyenv/shims:${PATH}"; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then export PYCMD_PATH="$(pyenv which python${PYCMD_VERSION})"; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then export PYCMD_DIRPATH="$( dirname ${PYCMD_PATH})" ; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then export PATH="${PYCMD_DIRPATH}:/Users/travis/.pyenv/shims:${PATH}"; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then eval "alias python${PYCMD_VERSION}=$(pyenv which python${PYCMD_VERSION})" && eval "alias python2.7=$(pyenv which python2.7)"; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then pyenv versions ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then pyenv which python${PYCMD_VERSION} ; fi -- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then eval "python${PYCMD_VERSION} --version"; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then pyenv versions ; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then pyenv which python${PYCMD_VERSION} ; fi +- if [[ "$TRAVIS_OS_NAME" == 'osx' ]]; then eval "python${PYCMD_VERSION} --version"; fi - echo "PATH=$PATH" install: - eval "$(gimme 1.10)" before_script: # Install PyPA Docker images for building multilinux wheels -- if [ $PYPI_DEPLOY = "true" ]; then docker pull quay.io/pypa/manylinux1_x86_64 ; fi -- if [ $PYPI_DEPLOY = "true" ]; then docker pull quay.io/pypa/manylinux1_i686 ; fi +- if [ "$PYPI_DEPLOY" = "true" ]; then docker pull quay.io/pypa/manylinux1_x86_64 ; fi +- if [ "$PYPI_DEPLOY" = "true" ]; then docker pull quay.io/pypa/manylinux1_i686 ; fi script: # Test PySkycoin - make test-ci - mkdir -p dist -- if [ $PYPI_DEPLOY = "true" ]; then +- if [ "$PYPI_DEPLOY" = "true" ]; then docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_x86_64 /io/travis/build-wheels.sh ls wheelhouse/ fi -- if [ $PYPI_DEPLOY = "true" ]; then +- if [ "$PYPI_DEPLOY" = "true" ]; then docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_i686 linux32 /io/travis/build-wheels.sh ls wheelhouse/ cp wheelhouse/* dist/* fi +- ls dist/ after_failure: - cat ./.tox/${TOXENV}/log/${TOXENV}-*.log notifications: From 5ac1457cc1a82be5e1e78db272245fdf0ce7919c Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 02:57:10 -0500 Subject: [PATCH 09/10] [ci] refs #104 - Fix syntax error setting up PYPI_DEPLOY --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 1cfc07ea..bb54ebd2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -62,7 +62,7 @@ matrix: before_install: - if [ "$TRAVIS_OS_NAME" == 'linux' && "$TOXENV" == 'py37' && "$TRAVIS_TAG" != '' ]; then export PYPI_DEPLOY=true ; - echo "Deploying to PYPI" + echo "Deploying to PYPI" ; fi - cd gopath/src/github.com/skycoin/skycoin && git checkout v0.25.0 && cd ${TRAVIS_BUILD_DIR} - if [[ "$TRAVIS_OS_NAME" == 'linux' ]]; then bash ./.travis/install-linux.sh ; fi From 51024cb1cf099ae0aefe088ad12b1454bfad6407 Mon Sep 17 00:00:00 2001 From: Olemis Lang Date: Tue, 15 Jan 2019 14:25:35 -0500 Subject: [PATCH 10/10] [ci] refs #104 - Separate .travis.yml commands with semicolon --- .travis.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index bb54ebd2..f8f48563 100644 --- a/.travis.yml +++ b/.travis.yml @@ -91,13 +91,13 @@ script: - make test-ci - mkdir -p dist - if [ "$PYPI_DEPLOY" = "true" ]; then - docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_x86_64 /io/travis/build-wheels.sh - ls wheelhouse/ + docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_x86_64 /io/travis/build-wheels.sh ; + ls wheelhouse/ ; fi - if [ "$PYPI_DEPLOY" = "true" ]; then - docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_i686 linux32 /io/travis/build-wheels.sh - ls wheelhouse/ - cp wheelhouse/* dist/* + docker run --rm -v `pwd`:/io quay.io/pypa/manylinux1_i686 linux32 /io/travis/build-wheels.sh ; + ls wheelhouse/ ; + cp wheelhouse/* dist/ ; fi - ls dist/ after_failure: