mirror of https://github.com/amol-/dukpy.git
Remove stray files
This commit is contained in:
parent
d01320560d
commit
01723fea84
|
@ -1,63 +0,0 @@
|
|||
#!/bin/bash
|
||||
if [ -n "$DEBUG" ]
|
||||
then
|
||||
set -x
|
||||
fi
|
||||
set -euo pipefail
|
||||
# ref: https://coderwall.com/p/fkfaqq/safer-bash-scripts-with-set-euxo-pipefail
|
||||
|
||||
PYTHON_VERSIONS=`ls /opt/python/`
|
||||
|
||||
# Avoid creation of __pycache__/*.py[c|o]
|
||||
export PYTHONDONTWRITEBYTECODE=1
|
||||
|
||||
package_name="$1"
|
||||
if [ -z "$package_name" ]
|
||||
then
|
||||
&>2 echo "Please pass package name as a first argument of this script ($0)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
arch=`uname -m`
|
||||
|
||||
echo
|
||||
echo
|
||||
echo "Compile wheels"
|
||||
for PYTHON in ${PYTHON_VERSIONS}; do
|
||||
/opt/python/${PYTHON}/bin/pip wheel /io/ -w /io/dist/
|
||||
done
|
||||
|
||||
echo
|
||||
echo
|
||||
echo "Bundle external shared libraries into the wheels"
|
||||
for whl in /io/dist/${package_name}-*-linux_${arch}.whl; do
|
||||
echo "Repairing $whl..."
|
||||
auditwheel repair "$whl" -w /io/dist/
|
||||
done
|
||||
|
||||
echo
|
||||
echo
|
||||
echo "Cleanup OS specific wheels"
|
||||
rm -fv /io/dist/*-linux_*.whl
|
||||
|
||||
echo
|
||||
echo
|
||||
echo "Cleanup non-$package_name wheels"
|
||||
find /io/dist -maxdepth 1 -type f ! -name "$package_name"'-*-manylinux1_*.whl' -print0 | xargs -0 rm -rfv
|
||||
|
||||
echo
|
||||
echo
|
||||
echo "Install packages and test"
|
||||
echo "dist directory:"
|
||||
ls /io/dist
|
||||
|
||||
for PYTHON in ${PYTHON_VERSIONS}; do
|
||||
# clear python cache
|
||||
find /io -type d -name __pycache__ -print0 | xargs -0 rm -rf
|
||||
|
||||
echo
|
||||
echo -n "Test $PYTHON: "
|
||||
/opt/python/${PYTHON}/bin/python -c "import platform; print('Building wheel for {platform} platform.'.format(platform=platform.platform()))"
|
||||
/opt/python/${PYTHON}/bin/pip install "$package_name"[testing,webassets] -f file:///io/dist
|
||||
/opt/python/${PYTHON}/bin/nosetests -v --with-coverage --cover-package="$package_name" --cover-erase /io/tests
|
||||
done
|
|
@ -1,35 +0,0 @@
|
|||
#!/bin/bash
|
||||
package_name="$1"
|
||||
if [ -z "$package_name" ]
|
||||
then
|
||||
&>2 echo "Please pass package name as a first argument of this script ($0)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
manylinux1_image_prefix="quay.io/pypa/manylinux1_"
|
||||
dock_ext_args=""
|
||||
declare -A docker_pull_pids=() # This syntax requires at least bash v4
|
||||
|
||||
for arch in x86_64 i686
|
||||
do
|
||||
docker pull "${manylinux1_image_prefix}${arch}" &
|
||||
docker_pull_pids[$arch]=$!
|
||||
done
|
||||
|
||||
echo Creating dist folder with privileges of host-machine user
|
||||
mkdir -p dist # This is required to be created with host-machine user privileges
|
||||
|
||||
for arch in x86_64 i686
|
||||
do
|
||||
echo
|
||||
echo
|
||||
arch_pull_pid=${docker_pull_pids[$arch]}
|
||||
echo Waiting for docker pull PID $arch_pull_pid to complete downloading container for $arch arch...
|
||||
wait $arch_pull_pid # await for docker image for current arch to be pulled from hub
|
||||
[ $arch == "i686" ] && dock_ext_args="linux32"
|
||||
|
||||
echo Building wheel for $arch arch
|
||||
docker run --rm -v `pwd`:/io "${manylinux1_image_prefix}${arch}" $dock_ext_args /io/.github/build-wheels.sh "$package_name"
|
||||
|
||||
dock_ext_args="" # Reset docker args, just in case
|
||||
done
|
174
.travis.yml
174
.travis.yml
|
@ -1,174 +0,0 @@
|
|||
conditions: v1
|
||||
|
||||
os: linux
|
||||
dist: xenial
|
||||
|
||||
language: python
|
||||
python:
|
||||
- 2.7
|
||||
- 3.5
|
||||
- 3.6
|
||||
- 3.7
|
||||
- 3.8
|
||||
- &mainstream_python 3.9
|
||||
- nightly
|
||||
|
||||
install:
|
||||
- travis_retry pip install -U --upgrade-strategy=eager --pre -e .[testing,webassets]
|
||||
- travis_retry pip install 'pycparser==2.18'
|
||||
- travis_retry pip install 'coveralls'
|
||||
|
||||
script:
|
||||
- pytest -v --cov=dukpy --cov-report=term-missing
|
||||
- if python -c "import sys; sys.exit(sys.version_info < (2,7))"; then
|
||||
python setup.py check -rm;
|
||||
fi
|
||||
- if python -c "import sys; sys.exit(sys.version_info < (3,6))"; then
|
||||
python setup.py check -s;
|
||||
fi
|
||||
|
||||
after_success:
|
||||
- coveralls
|
||||
|
||||
stages:
|
||||
- test
|
||||
- name: deploy
|
||||
if: tag IS present
|
||||
|
||||
before_cache:
|
||||
- rm -f $HOME/.cache/pip/log/debug.log
|
||||
|
||||
env:
|
||||
global:
|
||||
GIT_INSTALLER_DIR_PATH: ${HOME}/.git-installers
|
||||
GIT_VERSION: 2.20.1
|
||||
PYTHON_INSTALLER_DIR_PATH: ${HOME}/.python-installers
|
||||
|
||||
.mixtures:
|
||||
- &macos-job
|
||||
os: osx
|
||||
osx_image: xcode8.3
|
||||
language: generic
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/Library/Caches/Homebrew
|
||||
- $PYTHON_INSTALLER_DIR_PATH
|
||||
- $GIT_INSTALLER_DIR_PATH
|
||||
before_install: &install-from-python_org
|
||||
- |
|
||||
function probe_url() {
|
||||
local py_ver="$1"
|
||||
[ $(curl -I --write-out '%{http_code}' --silent --output /dev/null "https://www.python.org/ftp/python/${py_ver}/python-${py_ver}-macosx10.9.pkg") == '200' ] && return 0
|
||||
return 1
|
||||
}
|
||||
- |
|
||||
function find_last_macos_py() {
|
||||
for py_ver in $*
|
||||
do
|
||||
>&2 echo Probing $py_ver
|
||||
probe_url $py_ver && >&2 echo "Found pkg: ${py_ver}" && echo $py_ver && return 0
|
||||
done
|
||||
>&2 echo Failed looking up macOS pkg for $*
|
||||
return 1
|
||||
}
|
||||
- export GIT_DMG_NAME="git-${GIT_VERSION}-intel-universal-mavericks.dmg"
|
||||
- export GIT_PKG_NAME="git-${GIT_VERSION}-intel-universal-mavericks.pkg"
|
||||
- export GIT_DMG_PATH="${GIT_INSTALLER_DIR_PATH}/${GIT_DMG_NAME}"
|
||||
- >
|
||||
stat "${GIT_DMG_PATH}" &>/dev/null || wget -O "${GIT_DMG_PATH}" "https://sourceforge.net/projects/git-osx-installer/files/${GIT_DMG_NAME}/download?use_mirror=autoselect"
|
||||
- stat "${GIT_DMG_PATH}" >/dev/null
|
||||
- sudo hdiutil attach ${GIT_DMG_PATH}
|
||||
- hdiutil info
|
||||
- >
|
||||
export GIT_INSTALLER_VOLUME=$(hdiutil info | tail -n1 | sed 's#^.*\(/Volumes.*\)#\1#')
|
||||
- >
|
||||
export GIT_INSTALLER_PATH="${GIT_INSTALLER_VOLUME}/${GIT_PKG_NAME}"
|
||||
- ls -alh "${GIT_INSTALLER_VOLUME}"
|
||||
- sudo installer -verboseR -dumplog -pkg "${GIT_INSTALLER_PATH}" -target /
|
||||
- sudo hdiutil detach "${GIT_INSTALLER_VOLUME}"
|
||||
- export PYTHON_VERSION_LONG_SUGGESTIONS=$(git ls-remote --sort -v:refname --tags git://github.com/python/cpython.git "${PYTHON_VERSION}*" "v${PYTHON_VERSION}*" | grep -v '\^{}$' | awk '{print$2}' | sed 's#^refs/tags/##;s#^v##' | grep -v '[abcepr]')
|
||||
- export PYTHON_VERSION_LONG=$(find_last_macos_py $PYTHON_VERSION_LONG_SUGGESTIONS)
|
||||
- export PYTHON_VERSION_SHORT=$(echo ${PYTHON_VERSION_LONG} | awk -F. '{print$1"."$2}')
|
||||
- echo "Selected version vars are:"
|
||||
- echo "PYTHON_VERSION=${PYTHON_VERSION}"
|
||||
- echo "PYTHON_VERSION_SHORT=${PYTHON_VERSION_SHORT}"
|
||||
- echo "PYTHON_VERSION_LONG=${PYTHON_VERSION_LONG}"
|
||||
- export PYTHON_INSTALL_PATH="/Library/Frameworks/Python.framework/Versions/${PYTHON_VERSION_SHORT}"
|
||||
- export PYTHON_INSTALL_EXE="${PYTHON_INSTALL_PATH}/bin/python${PYTHON_VERSION_SHORT}"
|
||||
- export PATH="${PYTHON_INSTALL_PATH}/bin:${PATH}"
|
||||
- export PYTHON_VENV_PATH="${HOME}/virtualenv/python${PYTHON_VERSION_SHORT}"
|
||||
- export PYTHON_INSTALLER_PATH="${PYTHON_INSTALLER_DIR_PATH}/python-${PYTHON_VERSION_LONG}.pkg"
|
||||
- echo "PYTHON_INSTALLER_PATH=${PYTHON_INSTALLER_PATH}"
|
||||
- env
|
||||
- >
|
||||
stat "${PYTHON_INSTALLER_PATH}" &>/dev/null || wget -O "${PYTHON_INSTALLER_PATH}" "https://www.python.org/ftp/python/${PYTHON_VERSION_LONG}/python-${PYTHON_VERSION_LONG}-macosx10.9.pkg"
|
||||
- stat "${PYTHON_INSTALLER_PATH}" >/dev/null
|
||||
- sudo installer -verboseR -dumplog -pkg "${PYTHON_INSTALLER_PATH}" -target /
|
||||
- ls "${PYTHON_INSTALL_PATH}/bin"
|
||||
- ls -lh "${PYTHON_INSTALL_EXE}"
|
||||
- stat "${PYTHON_INSTALL_EXE}"
|
||||
- /Applications/Python\ ${PYTHON_VERSION_SHORT}/Install\ Certificates.command || echo "No need to fix certificates"
|
||||
- if [ "2.7" = "$PYTHON_VERSION" ]; then curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | ${PYTHON_INSTALL_EXE}; else curl https://bootstrap.pypa.io/get-pip.py | ${PYTHON_INSTALL_EXE}; fi
|
||||
- >
|
||||
"${PYTHON_INSTALL_EXE}" -m pip install -U pip
|
||||
- >
|
||||
"${PYTHON_INSTALL_EXE}" -m pip install -U virtualenv
|
||||
- >
|
||||
"${PYTHON_INSTALL_EXE}" -m virtualenv "${PYTHON_VENV_PATH}"
|
||||
- . "${PYTHON_VENV_PATH}/bin/activate"
|
||||
- if [ "2.7" = "$PYTHON_VERSION" ]; then curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python; else curl https://bootstrap.pypa.io/get-pip.py | python; fi
|
||||
- python --version
|
||||
- pip --version
|
||||
|
||||
jobs:
|
||||
fast_finish: true
|
||||
allow_failures:
|
||||
- python: nightly
|
||||
|
||||
include:
|
||||
- <<: *macos-job
|
||||
name: Running tests against Python 3.8 env under macOS 10.13
|
||||
env:
|
||||
PYTHON_VERSION: 3.8
|
||||
- <<: *macos-job
|
||||
name: Running tests against Python 3.7 env under macOS 10.13
|
||||
env:
|
||||
PYTHON_VERSION: 3.7
|
||||
- <<: *macos-job
|
||||
name: Running tests against Python 2.7 env under macOS 10.13
|
||||
env:
|
||||
PYTHON_VERSION: 2.7
|
||||
- <<: *macos-job
|
||||
name: Running tests against Python 3.6 env under macOS 10.13
|
||||
env:
|
||||
PYTHON_VERSION: 3.6
|
||||
|
||||
- stage: deploy
|
||||
python: *mainstream_python
|
||||
install: skip
|
||||
services:
|
||||
- docker
|
||||
script:
|
||||
- .github/run-docker.sh "dukpy"
|
||||
deploy:
|
||||
provider: pypi
|
||||
# `skip_cleanup: true` is required to preserve binary wheels, built
|
||||
# inside of manylinux1 docker container during `script` step above.
|
||||
skip_cleanup: true
|
||||
# Although Travis CI instructs `setup.py` to build source distribution,
|
||||
# which is default value for distribution option (`distribution: sdist`),
|
||||
# it will also upload all wheels we've previously built in manylinux1
|
||||
# docker container using `twine upload -r pypi dist/*` command.
|
||||
# Also since commit https://github.com/travis-ci/dpl/commit/90b5e39
|
||||
# it is default that Travis PYPI provider has `skip_upload_docs: true`
|
||||
# set by default.
|
||||
# Besides above, we don't do cleanup of `dist/*`, because it's being done
|
||||
# by Travis CI PYPI deployment provider after upload, unconditionally.
|
||||
on:
|
||||
tags: true
|
||||
all_branches: true
|
||||
user: amol
|
||||
# just source dist, because binary wheels are built within docker
|
||||
distributions: sdist
|
||||
password:
|
||||
secure: g8mh+wysPGF9VaxHsP/FYjjw+CJ8TJpRKRVQIAi7DRy3yn05lsvfwqHBvKMIOZV26JmI8vxiwCPt0IcsBONzRrKuVp0nS0yXLmaaHH2SIOhZaYLknm1eD9AV7T79Z0uWG7ygFXoCCvkJGiOjZkfrakwYVqvIg9tFCvukJaWLHl8=
|
130
appveyor.yml
130
appveyor.yml
|
@ -1,130 +0,0 @@
|
|||
environment:
|
||||
global:
|
||||
# SDK v7.0 MSVC Express 2008's SetEnv.cmd script will fail if the
|
||||
# /E:ON and /V:ON options are not enabled in the batch script interpreter
|
||||
# See: http://stackoverflow.com/a/13751649/163740
|
||||
CMD_IN_ENV: "cmd /E:ON /V:ON /C .\\tests\\run_with_env.cmd"
|
||||
|
||||
PYPI_USERNAME: amol
|
||||
# Use the following web UI to encrypt your password:
|
||||
# https://ci.appveyor.com/tools/encrypt
|
||||
PYPI_PASSWORD:
|
||||
secure: X7AQy+logua8ux61g3Knhg==
|
||||
|
||||
matrix:
|
||||
|
||||
# Pre-installed Python versions, which Appveyor may upgrade to
|
||||
# a later point release.
|
||||
# See: http://www.appveyor.com/docs/installed-software#python
|
||||
|
||||
- PYTHON: "C:\\Python27"
|
||||
PYTHON_VERSION: "2.7.x" # currently 2.7.9
|
||||
PYTHON_ARCH: "32"
|
||||
|
||||
- PYTHON: "C:\\Python27-x64"
|
||||
PYTHON_VERSION: "2.7.x" # currently 2.7.9
|
||||
PYTHON_ARCH: "64"
|
||||
|
||||
- PYTHON: "C:\\Python35"
|
||||
PYTHON_VERSION: "3.5.x" # currently 3.5.3
|
||||
PYTHON_ARCH: "32"
|
||||
|
||||
- PYTHON: "C:\\Python35-x64"
|
||||
PYTHON_VERSION: "3.5.x" # currently 3.5.3
|
||||
PYTHON_ARCH: "64"
|
||||
|
||||
- PYTHON: "C:\\Python36"
|
||||
PYTHON_VERSION: "3.6.x" # currently 3.6.4
|
||||
PYTHON_ARCH: "32"
|
||||
|
||||
- PYTHON: "C:\\Python36-x64"
|
||||
PYTHON_VERSION: "3.6.x" # currently 3.6.4
|
||||
PYTHON_ARCH: "64"
|
||||
|
||||
- PYTHON: "C:\\Python37"
|
||||
PYTHON_VERSION: "3.7.x" # currently 3.7.5
|
||||
PYTHON_ARCH: "32"
|
||||
|
||||
- PYTHON: "C:\\Python37-x64"
|
||||
PYTHON_VERSION: "3.7.x" # currently 3.7.5
|
||||
PYTHON_ARCH: "64"
|
||||
|
||||
- PYTHON: "C:\\Python38"
|
||||
PYTHON_VERSION: "3.8.x" # currently 3.8.0
|
||||
PYTHON_ARCH: "32"
|
||||
|
||||
- PYTHON: "C:\\Python38-x64"
|
||||
PYTHON_VERSION: "3.8.x" # currently 3.8.0
|
||||
PYTHON_ARCH: "64"
|
||||
|
||||
install:
|
||||
# If there is a newer build queued for the same PR, cancel this one.
|
||||
# The AppVeyor 'rollout builds' option is supposed to serve the same
|
||||
# purpose but it is problematic because it tends to cancel builds pushed
|
||||
# directly to master instead of just PR builds (or the converse).
|
||||
# credits: JuliaLang developers.
|
||||
- ps: if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
|
||||
https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
|
||||
Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
|
||||
throw "There are newer queued builds for this pull request, failing early." }
|
||||
- ECHO "Filesystem root:"
|
||||
- ps: "ls \"C:/\""
|
||||
|
||||
- ECHO "Installed SDKs:"
|
||||
- ps: "ls \"C:/Program Files/Microsoft SDKs/Windows\""
|
||||
|
||||
# Install Python (from the official .msi of http://python.org) and pip when
|
||||
# not already installed.
|
||||
- ps: if (-not(Test-Path($env:PYTHON))) { & appveyor\install.ps1 }
|
||||
|
||||
# Prepend newly installed Python to the PATH of this build (this cannot be
|
||||
# done from inside the powershell script as it would require to restart
|
||||
# the parent CMD process).
|
||||
- "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"
|
||||
|
||||
# Check that we have the expected version and architecture for Python
|
||||
- "python --version"
|
||||
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
|
||||
|
||||
# Upgrade to the latest version of pip to avoid it displaying warnings
|
||||
# about it being out of date.
|
||||
# - "pip install --disable-pip-version-check --user --upgrade pip"
|
||||
|
||||
# Install the build dependencies of the project. If some dependencies contain
|
||||
# compiled extensions and are not provided as pre-built wheel packages,
|
||||
# pip will build them from source using the MSVC compiler matching the
|
||||
# target Python version and architecture
|
||||
- "%CMD_IN_ENV% pip install -e .[testing,webassets]"
|
||||
|
||||
build_script:
|
||||
# Build the compiled extension
|
||||
- "%CMD_IN_ENV% python setup.py build"
|
||||
|
||||
test_script:
|
||||
# Run the project tests
|
||||
- "%CMD_IN_ENV% pytest -v --cov=dukpy --cov-report=term-missing --cov-report=xml --junitxml=junit-test-results.xml"
|
||||
|
||||
after_test:
|
||||
# If tests are successful, create binary packages for the project.
|
||||
- "%CMD_IN_ENV% pip install --upgrade setuptools wheel"
|
||||
- "%CMD_IN_ENV% python setup.py bdist_wheel"
|
||||
- ps: "ls dist"
|
||||
|
||||
# This enables AppVeyor UI to list test details:
|
||||
- ps: |
|
||||
$wc = New-Object 'System.Net.WebClient'
|
||||
$wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\junit-test-results.xml))
|
||||
|
||||
#on_success:
|
||||
#- "%CMD_IN_ENV% coveralls"
|
||||
|
||||
deploy_script:
|
||||
- "%CMD_IN_ENV% pip install --upgrade twine"
|
||||
- ps: >-
|
||||
if($env:appveyor_repo_tag -eq 'True') {
|
||||
Invoke-Expression "python -m twine upload dist/* --username $env:PYPI_USERNAME --password $env:PYPI_PASSWORD"
|
||||
}
|
||||
|
||||
artifacts:
|
||||
# Archive the generated packages in the ci.appveyor.com build report.
|
||||
- path: dist\*
|
Loading…
Reference in New Issue