debian: build-wheels: partial debian support
Add debian support to wheels scripts. Note: this solution is not fully functional. Remaining issues will be addressed in separate commits. See FIXME file in this patch. * build-wheels: move OS-specific files to subdirectories {dev,stable}-wheels.cfg {dev,stable}-wheels-py2.cfg openstack.cfg Dockerfile * added a copy of openstack/ussuri requirements files under debian/openstack-requirements/ussuri/upstream for reference * added a patched version of openstack/ussuri requirements files based on above. Changes: - added lines for python3.9 - disabled some packages that don't compile on debian (nss, thrift); these will be installed as DEB files into the base image * build-base-wheels.sh: - auto-detect OS & version by default - add local build repo to docker file - define CPUCOUNT=2 when building wheels. Otherwise some wheels run out of RAM when building. * build-wheel-tarball.sh: - auto-detect OS & version - new option: --keep-image - allow openstack URL to be a local file name - assume DEB wheel packages may install wheels at any level, not just under "/wheels". It's not consistent with CentOS, but many DEB packages do it that way now. * get-stx-wheels.sh: - auto-detect OS & version defaults - debian: don't scan 3rd-party libraries for wheels. They don't exist as files within the POD, but only in the repomgr repo. To be addressed later. - debian: don't scan for lower layer wheels. Layered builds are not supported by Debian right now. To be addressed later. - debian: extarct wheels from DEB files CHANGES TO DEBIAN WHEEL VERSIONS COMPARED TO CENTOS =================================================== * Python 3 (stable-wheels.cfg): - libvirt_python 4.7.0 upgraded to 7.0.0. Original version doesn't compile on debian/bullseye. New version matches the SO package included with bullseye - python_nss: removed. This module doesn't compile on bullseye as-is. A patched version is compiled as a DEB package as part of STX [1] - thriftpy: removed. This module doesn't compile on bullseye as-is. A patched version is provided by Debian [2] * Python2 (stable-wheels-py2.cfg): - python-nss: removed. This module doesn't compile on bullseye as-is. A patched version is compiled as a DEB package as part of STX, which also provides the wheel [1] TESTS ===== - Build py2 & py3 wheels on debian & centos REFERENCES ========== [1] Import python-nss package to debian: https://review.opendev.org/c/starlingx/integ/+/837399 [2] Add additional packages to download lists: https://review.opendev.org/c/starlingx/tools/+/837904 Story: 2009897 Task: 44694 Depends-On: https://review.opendev.org/c/starlingx/integ/+/837399 Depends-On: https://review.opendev.org/c/starlingx/tools/+/837904 Signed-off-by: Davlet Panech <davlet.panech@windriver.com> Change-Id: I0889118b9f0125888fb661e58ff41579da7eb3b4
This commit is contained in:
parent
9ed4cf97c6
commit
075b71dcf9
20
build-tools/build-wheels/FIXME
Normal file
20
build-tools/build-wheels/FIXME
Normal file
@ -0,0 +1,20 @@
|
||||
Debian
|
||||
======
|
||||
|
||||
debian/Dockerfile:
|
||||
- disable upstream repo, use only the managed packages.
|
||||
Requires additions to download lists in stx-tool.
|
||||
- convert thrifty & nss to wheels and don't install them in Dockerfile
|
||||
|
||||
build-wheel-tarball.sh:
|
||||
- current DEB wheel packages install wheels at random locations, rather
|
||||
than under /wheels as in CentOS. Fix them and remove the workaround
|
||||
in this script.
|
||||
|
||||
build-wheel-tarball.sh:
|
||||
- look for wheels in non-Starlingx DEBs. Requires accessing repomgr via
|
||||
the REST API (?)
|
||||
- support layered builds (ie scan DEBs from lower layers)
|
||||
|
||||
debian/openstack-requirements:
|
||||
- requirements are not compatible with debian/bullseye
|
@ -18,15 +18,16 @@ if [ -z "${MY_WORKSPACE}" -o -z "${MY_REPO}" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
DOCKER_PATH=${MY_REPO}/build-tools/build-wheels/docker
|
||||
KEEP_IMAGE=no
|
||||
KEEP_CONTAINER=no
|
||||
OS=centos
|
||||
OS_VERSION=7.5.1804
|
||||
SUPPORTED_OS_LIST=('centos' 'debian')
|
||||
OS=
|
||||
OS_VERSION=
|
||||
BUILD_STREAM=stable
|
||||
HTTP_PROXY=""
|
||||
HTTPS_PROXY=""
|
||||
NO_PROXY=""
|
||||
: ${PYTHON3:=python3}
|
||||
declare -i MAX_ATTEMPTS=1
|
||||
|
||||
function usage {
|
||||
@ -35,8 +36,8 @@ Usage:
|
||||
$(basename $0) [ --os <os> ] [ --keep-image ] [ --keep-container ] [ --stream <stable|dev> ]
|
||||
|
||||
Options:
|
||||
--os: Specify base OS (eg. centos)
|
||||
--os-version: Specify OS version
|
||||
--os: Override base OS (eg. centos; default: auto)
|
||||
--os-version: Override OS version (default: auto)
|
||||
--keep-image: Skip deletion of the wheel build image in docker
|
||||
--keep-container: Skip deletion of container used for the build
|
||||
--http_proxy: Set http proxy <URL>:<PORT>, urls splitted by ","
|
||||
@ -114,26 +115,38 @@ while true; do
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -z "$OS" ] ; then
|
||||
OS="$(ID= && source /etc/os-release 2>/dev/null && echo $ID || true)"
|
||||
if ! [ -n "$OS" ]; then
|
||||
echo "Unable to determine OS" >&2
|
||||
echo "Re-run with \"--os\" option" >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
BUILD_IMAGE_NAME="${USER}-$(basename ${MY_WORKSPACE})-wheelbuilder:${OS}-${BUILD_STREAM}"
|
||||
|
||||
# BUILD_IMAGE_NAME can't have caps if it's passed to docker build -t $BUILD_IMAGE_NAME.
|
||||
# The following will substitute caps with lower case.
|
||||
BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME,,}"
|
||||
|
||||
DOCKER_FILE=${DOCKER_PATH}/${OS}-dockerfile
|
||||
|
||||
function supported_os_list {
|
||||
for f in ${DOCKER_PATH}/*-dockerfile; do
|
||||
echo $(basename ${f%-dockerfile})
|
||||
done | xargs echo
|
||||
}
|
||||
DOCKER_FILE=${MY_SCRIPT_DIR}/${OS}/Dockerfile
|
||||
|
||||
if [ ! -f ${DOCKER_FILE} ]; then
|
||||
echo "Unsupported OS specified: ${OS}" >&2
|
||||
echo "Supported OS options: $(supported_os_list)" >&2
|
||||
echo "Supported OS options: ${SUPPORTED_OS_LIST[@]}" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$OS_VERSION" ]; then
|
||||
OS_VERSION="$(sed -r -n 's/^\s*ARG\s+RELEASE\s*=\s*(\S+).*/\1/p' "$DOCKER_FILE")"
|
||||
if [ -z "$OS_VERSION" ]; then
|
||||
echo "Unable to determine OS_VERSION" >&2
|
||||
echo "Re-run with \"--os-version\" option" >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Print a loud message
|
||||
function notice {
|
||||
(
|
||||
@ -191,10 +204,11 @@ function prepare_output_dir {
|
||||
fi
|
||||
}
|
||||
|
||||
DOCKER_BUILD_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/docker
|
||||
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/base
|
||||
BUILD_OUTPUT_PATH_PY2=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/base-py2
|
||||
WHEELS_CFG=${DOCKER_PATH}/${BUILD_STREAM}-wheels.cfg
|
||||
WHEELS_CFG_PY2=${DOCKER_PATH}/${BUILD_STREAM}-wheels-py2.cfg
|
||||
WHEELS_CFG=${MY_SCRIPT_DIR}/${OS}/${BUILD_STREAM}-wheels.cfg
|
||||
WHEELS_CFG_PY2=${MY_SCRIPT_DIR}/${OS}/${BUILD_STREAM}-wheels-py2.cfg
|
||||
|
||||
# make sure .cfg files exist
|
||||
require_file "${WHEELS_CFG}"
|
||||
@ -276,6 +290,53 @@ if all_wheels_exist "${BUILD_OUTPUT_PATH}" "${WHEELS_CFG}" && \
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Create a directory containing docker files
|
||||
\rm -rf "${DOCKER_BUILD_PATH}"
|
||||
mkdir -p "${DOCKER_BUILD_PATH}"
|
||||
\cp -r "${MY_SCRIPT_DIR}/docker-common" "${MY_SCRIPT_DIR}/${OS}" "${DOCKER_BUILD_PATH}" || exit 1
|
||||
# Replace "@...@" vars in apt/*.in files
|
||||
if [[ "${OS}" == "debian" ]] ; then
|
||||
(
|
||||
# REPOMGR_DEPLOY_URL must be defined in the environment and refer
|
||||
# to the k8s repomgr service. It is normally defined by the helm
|
||||
# chart of STX tools.
|
||||
if [[ -z "$REPOMGR_DEPLOY_URL" ]] ; then
|
||||
echo "REPOMGR_DEPLOY_URL must be defined in the environment!" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Make sure pyhon3 exists
|
||||
$PYTHON3 --version >/dev/null || exit 1
|
||||
|
||||
# Extract host name from repomgr URL
|
||||
REPOMGR_HOST=$(
|
||||
$PYTHON3 -c '
|
||||
import sys
|
||||
from urllib.parse import urlparse
|
||||
print (urlparse (sys.argv[1]).hostname)
|
||||
' "$REPOMGR_DEPLOY_URL"
|
||||
)
|
||||
if [[ $? -ne 0 || -z "$REPOMGR_HOST" ]] ; then
|
||||
echo "failed to parse REPOMGR_DEPLOY_URL !" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# replace @...@ vars in apt/*.in files
|
||||
count=0
|
||||
for src in "${DOCKER_BUILD_PATH}/${OS}/apt"/*.in ; do
|
||||
dst="${src%.in}"
|
||||
sed -e "s#@REPOMGR_URL@#$REPOMGR_DEPLOY_URL#g" \
|
||||
-e "s#@REPOMGR_HOST@#$REPOMGR_HOST#g" \
|
||||
"$src" >"$dst" || exit 1
|
||||
let ++count
|
||||
done
|
||||
if [[ $count -eq 0 ]] ; then
|
||||
echo "No *.in files found in ${DOCKER_BUILD_PATH}/${OS}/apt !" >&2
|
||||
exit 1
|
||||
fi
|
||||
) || exit 1
|
||||
fi
|
||||
|
||||
# Check to see if the OS image is already pulled
|
||||
docker images --format '{{.Repository}}:{{.Tag}}' ${OS}:${OS_VERSION} | grep -q "^${OS}:${OS_VERSION}$"
|
||||
BASE_IMAGE_PRESENT=$?
|
||||
@ -297,7 +358,7 @@ if [ ! -z "$NO_PROXY" ]; then
|
||||
fi
|
||||
|
||||
BUILD_ARGS+=(-t ${BUILD_IMAGE_NAME})
|
||||
BUILD_ARGS+=(-f ${DOCKER_PATH}/${OS}-dockerfile ${DOCKER_PATH})
|
||||
BUILD_ARGS+=(-f ${DOCKER_BUILD_PATH}/${OS}/Dockerfile ${DOCKER_BUILD_PATH})
|
||||
|
||||
# Build image
|
||||
with_retries ${MAX_ATTEMPTS} docker build "${BUILD_ARGS[@]}"
|
||||
@ -321,6 +382,7 @@ if [ ! -z "$NO_PROXY" ]; then
|
||||
RUN_ARGS+=(--env no_proxy=$NO_PROXY)
|
||||
fi
|
||||
RUN_ARGS+=(--env DISPLAY_RESULT=no)
|
||||
RUN_ARGS+=(--env CPUCOUNT=2)
|
||||
|
||||
# Run container to build wheels
|
||||
rm -f ${BUILD_OUTPUT_PATH}/failed.lst
|
||||
|
@ -17,9 +17,9 @@ if [ -z "${MY_WORKSPACE}" -o -z "${MY_REPO}" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SUPPORTED_OS_ARGS=('centos')
|
||||
OS=centos
|
||||
OS_VERSION=7.5.1804
|
||||
SUPPORTED_OS_ARGS=('centos' 'debian')
|
||||
OS=
|
||||
OS_VERSION=
|
||||
BUILD_STREAM=stable
|
||||
VERSION=$(date --utc '+%Y.%m.%d.%H.%M') # Default version, using timestamp
|
||||
PUSH=no
|
||||
@ -27,6 +27,7 @@ HTTP_PROXY=""
|
||||
HTTPS_PROXY=""
|
||||
NO_PROXY=""
|
||||
CLEAN=no
|
||||
KEEP_IMAGE=no
|
||||
DOCKER_USER=${USER}
|
||||
declare -i MAX_ATTEMPTS=1
|
||||
PYTHON2=no
|
||||
@ -72,11 +73,12 @@ Options:
|
||||
--version: Version for pushed image (if used with --push)
|
||||
--attempts: Max attempts, in case of failure (default: 1)
|
||||
--python2: Build a python2 tarball
|
||||
--keep-image: Don't delete wheel builder image at the end
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
OPTS=$(getopt -o h -l help,os:,os-version:,push,clean,user:,release:,stream:,http_proxy:,https_proxy:,no_proxy:,version:,attempts:,python2 -- "$@")
|
||||
OPTS=$(getopt -o h -l help,os:,os-version:,push,clean,user:,release:,stream:,http_proxy:,https_proxy:,no_proxy:,version:,attempts:,python2,keep-image -- "$@")
|
||||
if [ $? -ne 0 ]; then
|
||||
usage
|
||||
exit 1
|
||||
@ -143,6 +145,10 @@ while true; do
|
||||
PYTHON2=yes
|
||||
shift
|
||||
;;
|
||||
--keep-image)
|
||||
KEEP_IMAGE=yes
|
||||
shift
|
||||
;;
|
||||
-h | --help )
|
||||
usage
|
||||
exit 1
|
||||
@ -155,6 +161,14 @@ while true; do
|
||||
done
|
||||
|
||||
# Validate the OS option
|
||||
if [ -z "$OS" ] ; then
|
||||
OS="$(ID= && source /etc/os-release 2>/dev/null && echo $ID || true)"
|
||||
if ! [ -n "$OS" ]; then
|
||||
echo "Unable to determine OS" >&2
|
||||
echo "Re-run with \"--os\" option" >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
VALID_OS=1
|
||||
for supported_os in ${SUPPORTED_OS_ARGS[@]}; do
|
||||
if [ "$OS" = "${supported_os}" ]; then
|
||||
@ -169,7 +183,8 @@ if [ ${VALID_OS} -ne 0 ]; then
|
||||
fi
|
||||
|
||||
# Read openstack URLs
|
||||
source "${MY_SCRIPT_DIR}/openstack.cfg" || exit 1
|
||||
OPENSTACK_CFG="${MY_SCRIPT_DIR}/$OS/openstack.cfg"
|
||||
source "$OPENSTACK_CFG" || exit 1
|
||||
|
||||
# Set python version-specific variables
|
||||
if [ "${PYTHON2}" = "yes" ]; then
|
||||
@ -179,7 +194,10 @@ fi
|
||||
|
||||
# Build the base wheels and retrieve the StarlingX wheels
|
||||
declare -a BUILD_BASE_WL_ARGS
|
||||
BUILD_BASE_WL_ARGS+=(--os ${OS} --os-version ${OS_VERSION} --stream ${BUILD_STREAM})
|
||||
BUILD_BASE_WL_ARGS+=(--os ${OS} --stream ${BUILD_STREAM})
|
||||
if [ -n "$OS_VERSION" ]; then
|
||||
BUILD_BASE_WL_ARGS+=(--os-version "${OS_VERSION}")
|
||||
fi
|
||||
if [ ! -z "$HTTP_PROXY" ]; then
|
||||
BUILD_BASE_WL_ARGS+=(--http_proxy ${HTTP_PROXY})
|
||||
fi
|
||||
@ -192,6 +210,10 @@ if [ ! -z "$NO_PROXY" ]; then
|
||||
BUILD_BASE_WL_ARGS+=(--no_proxy ${NO_PROXY})
|
||||
fi
|
||||
|
||||
if [ "$KEEP_IMAGE" = "yes" ]; then
|
||||
BUILD_BASE_WL_ARGS+=(--keep-image)
|
||||
fi
|
||||
|
||||
${MY_SCRIPT_DIR}/build-base-wheels.sh ${BUILD_BASE_WL_ARGS[@]} --attempts ${MAX_ATTEMPTS}
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failure running build-base-wheels.sh" >&2
|
||||
@ -234,17 +256,21 @@ else
|
||||
fi
|
||||
fi
|
||||
|
||||
with_retries ${MAX_ATTEMPTS} wget "${OPENSTACK_REQ_URL}/global-requirements.txt"
|
||||
for url in "${OPENSTACK_REQ_URL}/global-requirements.txt" "${OPENSTACK_REQ_URL}/upper-constraints.txt" ; do
|
||||
if echo "$url" | grep -q -E '^(https?|ftp):' >/dev/null ; then
|
||||
with_retries ${MAX_ATTEMPTS} wget "$url"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failed to download global-requirements.txt" >&2
|
||||
echo "Failed to download $url" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
with_retries ${MAX_ATTEMPTS} wget "${OPENSTACK_REQ_URL}/upper-constraints.txt"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Failed to download upper-constraints.txt" >&2
|
||||
exit 1
|
||||
else
|
||||
# Remove "file:" from url and treat what remains as a file name.
|
||||
# Local files should be relative to the location of openstack.cfg,
|
||||
# so leading slashes are menaingless, remove them as well.
|
||||
url="$(echo "$url" | sed -r 's,^(file:)?/*,,')"
|
||||
\cp "$(dirname "$OPENSTACK_CFG")"/"$url" ./ || exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
# Delete $SKIP_CONSTRAINTS from upper-constraints.txt, if any present
|
||||
for name in ${SKIP_CONSTRAINTS[@]}; do
|
||||
@ -259,7 +285,14 @@ done
|
||||
shopt -s nullglob
|
||||
|
||||
# Copy the base and stx wheels, updating upper-constraints.txt as necessary
|
||||
for wheel in ../base${PY_SUFFIX}/*.whl ../stx/wheels/*.whl; do
|
||||
# FIXME: debian packages install *.whl files under /usr/share/..., rather than
|
||||
# /wheels. Do a deep search on that platform
|
||||
if [ "${OS}" == "debian" ]; then
|
||||
stx_find_wheels_cmd=(find ../stx -name '*.whl')
|
||||
else
|
||||
stx_find_wheels_cmd=(find ../stx/wheels -mindepth 1 -maxdepth 1 -name '*.whl')
|
||||
fi
|
||||
for wheel in ../base${PY_SUFFIX}/*.whl $("${stx_find_wheels_cmd[@]}") ; do
|
||||
# Get the wheel name and version from the METADATA
|
||||
METADATA=$(unzip -p ${wheel} '*/METADATA')
|
||||
name=$(echo "${METADATA}" | grep '^Name:' | awk '{print $2}')
|
||||
|
@ -32,15 +32,15 @@ RUN set -ex ;\
|
||||
# while setuptools is larger than 45.3, it no longer support "Features" in setup.py
|
||||
python3 -m pip install --user setuptools==45.3 ;\
|
||||
python3 -m pip install --user --upgrade wheel
|
||||
COPY docker-build-wheel.sh /
|
||||
COPY ${BUILD_STREAM}-wheels.cfg /wheels.cfg
|
||||
COPY docker-common/docker-build-wheel.sh /
|
||||
COPY centos/${BUILD_STREAM}-wheels.cfg /wheels.cfg
|
||||
|
||||
# Python2 packages
|
||||
RUN set -ex; \
|
||||
yum -y install python python-devel ;\
|
||||
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py ;\
|
||||
python get-pip.py
|
||||
COPY ${BUILD_STREAM}-wheels-py2.cfg /wheels-py2.cfg
|
||||
COPY centos/${BUILD_STREAM}-wheels-py2.cfg /wheels-py2.cfg
|
||||
|
||||
# root CA cert expired on October 1st, 2021
|
||||
RUN yum update -y ca-certificates
|
89
build-tools/build-wheels/debian/Dockerfile
Normal file
89
build-tools/build-wheels/debian/Dockerfile
Normal file
@ -0,0 +1,89 @@
|
||||
ARG RELEASE=11.3
|
||||
FROM debian:${RELEASE}
|
||||
|
||||
ARG BUILD_STREAM=stable
|
||||
|
||||
# Install apt repos
|
||||
RUN mv /etc/apt/sources.list /etc/apt/sources.list.d/debian.list
|
||||
COPY debian/apt/sources.list /etc/apt/sources.list.d/stx.list
|
||||
COPY debian/apt/preferences /etc/apt/preferences.d/stx
|
||||
|
||||
# FIXME: disable upstream bullseye repo. Requires all dependent packages
|
||||
# referenced by apt-get to be added to stx-tools .lst file(s). Otherwise
|
||||
# we get a "random" set of packages, some from upstream, some from STX.
|
||||
|
||||
# FIXME: there's no ussuri/bullseye port, best we can do is "victoria" or more recent
|
||||
#RUN set -ex ; \
|
||||
# echo "deb [trusted=yes] http://osbpo.debian.net/osbpo bullseye-victoria-backports-nochange main" \
|
||||
# /etc/apt/sources.list.d/openstack-victoria.list.disabled ; \
|
||||
|
||||
# Install the necessary packages for building the python modules.
|
||||
# Some of these are dependencies of the specific modules, and could
|
||||
# instead be added to the wheels.cfg file in the future.
|
||||
RUN set -ex ; \
|
||||
apt-get -y update ; \
|
||||
apt-get -y --no-install-recommends --no-install-suggests install \
|
||||
bzip2 \
|
||||
ca-certificates \
|
||||
g++ \
|
||||
gcc \
|
||||
git \
|
||||
libev-dev \
|
||||
liberasurecode-dev \
|
||||
libffi-dev \
|
||||
libkrb5-dev \
|
||||
libldap2-dev \
|
||||
libmariadb-dev \
|
||||
libnss3-dev \
|
||||
libpcre3-dev \
|
||||
libpq-dev \
|
||||
libsasl2-dev \
|
||||
libsystemd-dev \
|
||||
libvirt-dev \
|
||||
libxml2-dev \
|
||||
libxslt1-dev \
|
||||
pkg-config \
|
||||
python3 \
|
||||
python3-dev \
|
||||
python3-nss \
|
||||
python3-pip \
|
||||
python3-setuptools \
|
||||
python3-thriftpy \
|
||||
python3-wheel \
|
||||
swig \
|
||||
unzip \
|
||||
wget \
|
||||
zip \
|
||||
; \
|
||||
# make sure python3-nss is sane \
|
||||
# the upstream version of it doesn't install pip metadata, but our patched version does
|
||||
if [ `find /usr/lib/python3/dist-packages -maxdepth 1 -type f -name 'python_nss*.egg-info' -print -quit | wc -l` -eq 0 ] ; then \
|
||||
echo "python-nss didn't install pip metadata!" >&2 ; \
|
||||
echo "Did you compile python-nss locally prior to building this docker image?" >&2 ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
|
||||
# These are required to build the python lxml module
|
||||
ENV XML2_CONFIG=/usr/bin/xml2-config XSLT_CONFIG=/usr/bin/xslt-config
|
||||
|
||||
# Python2 environment
|
||||
RUN set -ex ; \
|
||||
apt-get -y install \
|
||||
python \
|
||||
python-dev \
|
||||
python-setuptools \
|
||||
; \
|
||||
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py ; \
|
||||
python get-pip.py ; \
|
||||
rm -f get-pip.py
|
||||
|
||||
|
||||
# APT clean up
|
||||
RUN apt-get clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Copy local files
|
||||
COPY docker-common/docker-build-wheel.sh /
|
||||
COPY debian/${BUILD_STREAM}-wheels.cfg /wheels.cfg
|
||||
COPY debian/${BUILD_STREAM}-wheels-py2.cfg /wheels-py2.cfg
|
||||
|
7
build-tools/build-wheels/debian/apt/preferences.in
Normal file
7
build-tools/build-wheels/debian/apt/preferences.in
Normal file
@ -0,0 +1,7 @@
|
||||
# See: https://manpages.debian.org/buster/apt/apt_preferences.5.en.html
|
||||
|
||||
Explanation: Prefer StarlingX repos over vanilla Debian
|
||||
Package: *
|
||||
Pin: origin "@REPOMGR_HOST@"
|
||||
Pin-Priority: 999
|
||||
|
2
build-tools/build-wheels/debian/apt/sources.list.in
Normal file
2
build-tools/build-wheels/debian/apt/sources.list.in
Normal file
@ -0,0 +1,2 @@
|
||||
deb [trusted=yes] @REPOMGR_URL@/deb-local-binary bullseye main
|
||||
deb [trusted=yes] @REPOMGR_URL@/deb-local-build bullseye main
|
@ -0,0 +1,6 @@
|
||||
This directory contains the patched versions of openstack/requirements files:
|
||||
|
||||
ussuri/ - openstack/ussuri release
|
||||
upstream/ - original unpatched versions
|
||||
global-requirements.txt - patched for Debian/bullseye
|
||||
upper-constraints.txt - patched for Debian/bullseye
|
@ -0,0 +1,604 @@
|
||||
abclient # Apache-2.0
|
||||
alembic!=1.2.0 # MIT
|
||||
amqp!=2.1.4 # BSD
|
||||
ansible-runner!=1.3.5 # Apache 2.0
|
||||
anyjson # BSD
|
||||
appdirs # MIT License
|
||||
apscheduler # MIT License
|
||||
autobahn # MIT License
|
||||
automaton # Apache-2.0
|
||||
beautifulsoup4 # MIT
|
||||
Babel!=2.4.0 # BSD
|
||||
bcrypt # Apache-2.0
|
||||
betamax # Apache-2.0
|
||||
betamax-matchers # Apache-2.0
|
||||
blockdiag!=2.0.0 # Apache-2.0
|
||||
boto # MIT
|
||||
boto3 # Apache-2.0
|
||||
botocore # Apache-2.0
|
||||
cassandra-driver!=3.6.0 # Apache-2.0
|
||||
castellan # Apache-2.0
|
||||
ceilometermiddleware # Apache-2.0
|
||||
cachetools # MIT License
|
||||
cffi # MIT
|
||||
cliff!=2.9.0,!=2.17.0,<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
cliff!=2.9.0,!=2.17.0;python_version>='3.6' # Apache-2.0
|
||||
# NOTE(mordred) python-openstackclient is broken due to bug 1810213
|
||||
cmd2!=0.8.3,<0.9.0 # MIT
|
||||
confluent-kafka!=1.4.0 # Apache-2.0
|
||||
cotyledon # Apache-2.0
|
||||
construct<2.9 # MIT
|
||||
PuLP # MIT
|
||||
contextlib2;python_version<'3.0' # PSF License
|
||||
croniter # MIT License
|
||||
cryptography!=2.0 # BSD/Apache-2.0
|
||||
cursive # Apache-2.0
|
||||
dataclasses;python_version=='3.6' # Apache-2.0
|
||||
ddt # MIT
|
||||
debtcollector<2.0.0;python_version<'3.0' # Apache-2.0
|
||||
debtcollector;python_version>='3.0' # Apache-2.0
|
||||
decorator # BSD
|
||||
defusedxml # PSF
|
||||
dib-utils # Apache-2.0
|
||||
diskimage-builder!=1.6.0,!=1.7.0,!=1.7.1 # Apache-2.0
|
||||
distro # Apache-2.0
|
||||
Django<2;python_version<'3.0' # BSD
|
||||
Django<3.0;python_version>='3.0' # BSD
|
||||
django-compressor # MIT
|
||||
django-debreach # BSD
|
||||
django-floppyforms<2 # BSD
|
||||
django-formtools # BSD
|
||||
dnspython;python_version=='2.7' # http://www.dnspython.org/LICENSE
|
||||
dnspython3!=1.13.0,!=1.14.0;python_version>='3.0' # http://www.dnspython.org/LICENSE
|
||||
# Note(tonyb): We don't actually directly depend on docutils but we pull it in
|
||||
# indirectly and we needed to blacklist 0.13.1 for problems with
|
||||
# Sphinx 1.3. This can be now removed once all projects removed it.
|
||||
docutils # OSI-Approved Open Source, Public Domain
|
||||
dogpile.cache # BSD
|
||||
dogtag-pki # LGPLv3+
|
||||
dulwich!=0.19.3,!=0.19.7 # Apache-2.0
|
||||
edgegrid-python # Apache-2.0
|
||||
elasticsearch<3.0.0 # Apache-2.0
|
||||
enmerkar;python_version>='3.0' # BSD
|
||||
enum34;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
|
||||
# NOTE: New versions of eventlet should not be accepted lightly
|
||||
# as they have earned a reputation of frequently breaking things.
|
||||
eventlet!=0.18.3,!=0.20.1,!=0.21.0,!=0.23.0,!=0.25.0 # MIT
|
||||
exabgp!=4.0.6 # BSD
|
||||
extras # MIT
|
||||
faker # MIT
|
||||
falcon # Apache-2.0
|
||||
Flask!=0.11 # BSD
|
||||
flask-keystone # Apache-2.0
|
||||
flask-oslolog # Apache-2.0
|
||||
Flask-RESTful # BSD
|
||||
Flask-SQLAlchemy # BSD
|
||||
fortiosclient # Apache-2.0
|
||||
futures!=0.17.0;python_version=='2.7' or python_version=='2.6' # PSF
|
||||
futurist<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
futurist;python_version>='3.6' # Apache-2.0
|
||||
funcsigs;python_version=='2.7' or python_version=='2.6' # Apache-2.0
|
||||
glance-store!=0.29.0 # Apache-2.0
|
||||
google-api-python-client # Apache-2.0
|
||||
graphviz!=0.5.0 # MIT License
|
||||
greenlet!=0.4.14 # MIT
|
||||
GitPython<2.1.12;python_version<'3.0' # BSD License (3 clause)
|
||||
GitPython;python_version>='3.0' # BSD License (3 clause)
|
||||
gunicorn<20.0.0;python_version<'3.0' # MIT
|
||||
gunicorn;python_version>='3.0' # MIT
|
||||
happybase!=0.7,!=1.0.0;python_version=='2.7' # MIT
|
||||
heat-translator # Apache-2.0
|
||||
horizon # Apache-2.0
|
||||
httplib2 # MIT
|
||||
hvac # Apache-2.0
|
||||
icalendar # BSD
|
||||
importlib-metadata # Apache-2.0
|
||||
infinisdk # BSD-3
|
||||
influxdb!=5.2.0,!=5.2.1,!=5.2.2,!=5.2.3;python_version<'3.0' # MIT
|
||||
influxdb;python_version>='3.0' # MIT
|
||||
instack-undercloud # Apache-2.0
|
||||
ironic-lib # Apache-2.0
|
||||
ipaddress;python_version<'3.3' # PSF
|
||||
iso8601 # MIT
|
||||
jira # BSD License (2 clause)
|
||||
Jinja2 # BSD License (3 clause)
|
||||
jmespath # MIT
|
||||
jsonmodels # BSD License (3 clause)
|
||||
jsonpatch!=1.20 # BSD
|
||||
jsonpath-rw<2.0 # Apache-2.0
|
||||
jsonpath-rw-ext # Apache-2.0
|
||||
jsonschema # MIT
|
||||
kazoo # Apache-2.0
|
||||
keystoneauth1 # Apache-2.0
|
||||
keystonemiddleware # Apache-2.0
|
||||
krest # Apache-2.0
|
||||
kubernetes # Apache-2.0
|
||||
kuryr-lib # Apache-2.0
|
||||
packaging # Apache-2.0
|
||||
pylev # BSD
|
||||
pypowervm!=1.1.21,!=1.1.22 # Apache-2.0
|
||||
pyScss!=1.3.5 # MIT License
|
||||
django-pyscss # BSD License (2 clause)
|
||||
kombu!=4.0.2 # BSD
|
||||
ldap3 # LGPLv3
|
||||
deprecation # Apache-2.0
|
||||
libvirt-python!=4.1.0,!=4.2.0,<6.0.0;python_version<'3.0' # LGPLv2+
|
||||
libvirt-python!=4.1.0,!=4.2.0;python_version>='3.0' # LGPLv2+
|
||||
lxml!=3.7.0 # BSD
|
||||
Mako # MIT
|
||||
marathon!=0.9.1 # MIT
|
||||
metalsmith # Apache-2.0
|
||||
microversion-parse # Apache-2.0
|
||||
mistral-lib # Apache-2.0
|
||||
monasca-common # Apache-2.0
|
||||
monasca-statsd # Apache-2.0
|
||||
monotonic;python_version<'3.3' # Apache-2.0
|
||||
msgpack # Apache-2.0
|
||||
munch # MIT
|
||||
murano-pkg-check # Apache-2.0
|
||||
mypy;python_version>='3.4' # MIT
|
||||
ndg-httpsclient;python_version<'3.0' # BSD
|
||||
netaddr # BSD
|
||||
netifaces!=0.10.0,!=0.10.1 # MIT
|
||||
netmiko # MIT
|
||||
network-runner # Apache 2.0
|
||||
networking-bagpipe # Apache-2.0
|
||||
networking-bgpvpn # Apache-2.0
|
||||
networking-l2gw # Apache-2.0
|
||||
networking-odl # Apache-2.0
|
||||
networking-sfc # Apache-2.0
|
||||
# NOTE(fdegir): NetworkX 2.3 dropped support for Python 2
|
||||
networkx<2.3;python_version<'3.0' # BSD
|
||||
networkx;python_version>='3.4' # BSD
|
||||
# NOTE(ralonsoh): neutron-lib 2.0.0 dropped support for Python 2
|
||||
neutron-lib<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
neutron-lib;python_version>='3.6' # Apache-2.0
|
||||
neutron-dynamic-routing # Apache-2.0
|
||||
neutron-fwaas # Apache-2.0
|
||||
neutron-lbaas # Apache-2.0
|
||||
neutron-vpnaas # Apache-2.0
|
||||
neutron # Apache-2.0
|
||||
notifier # Apache-2.0
|
||||
oauth2client!=4.0.0 # Apache-2.0
|
||||
oauthlib # BSD
|
||||
octavia-lib # Apache-2.0
|
||||
openstackdocstheme # Apache-2.0
|
||||
osc-lib # Apache-2.0
|
||||
osc-placement # Apache-2.0
|
||||
oslo.cache!=1.31.1,<2.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.cache!=1.31.1,!=2.1.0;python_version>='3.0' # Apache-2.0
|
||||
oslo.config!=4.3.0,!=4.4.0,<8.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.config!=4.3.0,!=4.4.0;python_version>='3.0' # Apache-2.0
|
||||
oslo.concurrency<4.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.concurrency;python_version>='3.0' # Apache-2.0
|
||||
oslo.context<3.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.context;python_version>='3.0' # Apache-2.0
|
||||
oslo.db # Apache-2.0
|
||||
oslo.i18n<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.i18n;python_version>='3.6' # Apache-2.0
|
||||
oslo.limit<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.limit;python_version>='3.0' # Apache-2.0
|
||||
oslo.log<4.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.log;python_version>='3.0' # Apache-2.0
|
||||
oslo.messaging!=9.0.0 # Apache-2.0
|
||||
oslo.middleware # Apache-2.0
|
||||
oslo.policy<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.policy!=3.0.0;python_version>='3.6' # Apache-2.0
|
||||
oslo.privsep<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.privsep;python_version>='3.6' # Apache-2.0
|
||||
oslo.reports<2.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.reports;python_version>='3.6' # Apache-2.0
|
||||
oslo.rootwrap # Apache-2.0
|
||||
# NOTE(mriedem): oslo.serialization 2.19.1 is blocked for bug 1593641
|
||||
oslo.serialization!=2.19.1,<3.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.serialization!=2.19.1;python_version>='3.0' # Apache-2.0
|
||||
oslo.service!=1.28.1 # Apache-2.0
|
||||
oslo.upgradecheck<0.4.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.upgradecheck;python_version>='3.6' # Apache-2.0
|
||||
# NOTE(lajoskatona): oslo.utils version between 3.39.1 and 3.40.1 excluded due to bug 1812922
|
||||
oslo.utils!=3.39.1,!=3.40.0,!=3.40.1,<4.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.utils!=3.39.1,!=3.40.0,!=3.40.1;python_version>='3.0' # Apache-2.0
|
||||
oslo.vmware # Apache-2.0
|
||||
oslo.versionedobjects<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.versionedobjects;python_version>='3.6' # Apache-2.0
|
||||
osprofiler # Apache-2.0
|
||||
os-apply-config # Apache-2.0
|
||||
os-brick!=2.8.0 # Apache-2.0
|
||||
os-client-config # Apache-2.0
|
||||
os-collect-config # Apache-2.0
|
||||
os-dpm # Apache-2.0
|
||||
os-net-config # Apache-2.0
|
||||
os-refresh-config # Apache-2.0
|
||||
os-resource-classes # Apache-2.0
|
||||
os-service-types # Apache-2.0
|
||||
os-testr<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-testr;python_version>='3.6' # Apache-2.0
|
||||
os-traits # Apache-2.0
|
||||
os-ken<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-ken;python_version>='3.6' # Apache-2.0
|
||||
os-vif!=1.8.0,!=1.12.0,<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-vif!=1.8.0,!=1.12.0;python_version>='3.6' # Apache-2.0
|
||||
ovs # Apache-2.0
|
||||
os-win<5.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-win;python_version>='3.6' # Apache-2.0
|
||||
os-xenapi # Apache-2.0
|
||||
paramiko # LGPLv2.1+
|
||||
Parsley # MIT
|
||||
pathlib2 # MIT
|
||||
passlib # BSD
|
||||
Paste # MIT
|
||||
PasteDeploy # MIT
|
||||
paunch # Apache-2.0
|
||||
pbr!=2.1.0 # Apache-2.0
|
||||
pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2 # BSD
|
||||
pexpect!=3.3 # ISC License
|
||||
pifpaf # Apache-2.0
|
||||
pika # BSD
|
||||
Pillow # PIL License
|
||||
Pint<0.10;python_version<'3.6' # BSD
|
||||
Pint;python_version>='3.6' # BSD
|
||||
pip # MIT
|
||||
prometheus-client # Apache-2.0
|
||||
protobuf # BSD License (3 clause)
|
||||
PrettyTable<0.8 # BSD
|
||||
psutil # BSD
|
||||
pyasn1!=0.2.3 # BSD
|
||||
pyasn1-modules # BSD
|
||||
pycadf!=2.0.0,<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
pycadf!=2.0.0;python_version>='3.6' # Apache-2.0
|
||||
PyECLib # BSD
|
||||
pyghmi!=1.4.0,!=1.5.11 # Apache-2.0
|
||||
pyinotify;sys_platform!='win32' and sys_platform!='darwin' and sys_platform!='sunos5' # MIT
|
||||
PyJWT # MIT
|
||||
pykmip # Apache 2.0 License
|
||||
python-ldap # PSF
|
||||
pylxd # Apache-2.0
|
||||
pymemcache!=1.3.0 # Apache 2.0 License
|
||||
pymongo!=3.1 # Apache-2.0
|
||||
PyMySQL # MIT License
|
||||
pytest # MIT
|
||||
pytest-django # BSD (3 clause)
|
||||
pytest-html #MPL-2.0
|
||||
python-etcd # MIT License
|
||||
pywbem # LGPLv2.1+
|
||||
pywinrm # MIT
|
||||
salt!=2019.2.1,!=2019.2.2 # Apache-2.0
|
||||
storpool!=5.2.0,!=5.3.0 # Apache-2.0
|
||||
storpool.spopenstack # Apache-2.0
|
||||
dfs-sdk # Apache-2.0
|
||||
tap-as-a-service # Apache-2.0
|
||||
etcd3 # Apache-2.0
|
||||
etcd3gw!=0.2.2,!=0.2.3 # Apache-2.0
|
||||
typing # PSF
|
||||
voluptuous # BSD License
|
||||
pydot # MIT License
|
||||
pydotplus # MIT License
|
||||
crc16 # LGPLv3+
|
||||
pyzabbix # LGPL
|
||||
statsd # MIT
|
||||
weakrefmethod;python_version=='2.7' # PSF
|
||||
zVMCloudConnector;sys_platform!='win32' # Apache 2.0 License
|
||||
opentracing # Apache-2.0
|
||||
jaeger-client # Apache-2.0
|
||||
|
||||
pyngus # Apache-2.0
|
||||
|
||||
pyOpenSSL # Apache-2.0
|
||||
pyparsing # MIT
|
||||
pyroute2!=0.5.4,!=0.5.5;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
|
||||
pysnmp # BSD
|
||||
pystache # MIT
|
||||
pysaml2!=4.0.3,!=4.0.4,!=4.0.5,!=4.0.5rc1,!=4.1.0,!=4.2.0,!=4.3.0,!=4.4.0,!=4.6.0 # Apache-2.0
|
||||
|
||||
# OpenStack clients. None of these should have an upper bound
|
||||
# as that has implications for testing in the gate.
|
||||
aodhclient # Apache-2.0
|
||||
gnocchiclient # Apache-2.0
|
||||
tricircleclient<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
tricircleclient;python_version>='3.6' # Apache-2.0
|
||||
python-barbicanclient # Apache-2.0
|
||||
python-blazarclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-blazarclient;python_version>='3.6' # Apache-2.0
|
||||
python-ceilometerclient # Apache-2.0
|
||||
python-cinderclient!=4.0.0,<6.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-cinderclient!=4.0.0;python_version>='3.6' # Apache-2.0
|
||||
python-cloudkittyclient<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-cloudkittyclient;python_version>='3.6' # Apache-2.0
|
||||
python-congressclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-congressclient<2000;python_version>='3.6' # Apache-2.0
|
||||
python-designateclient # Apache-2.0
|
||||
python-freezerclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-freezerclient;python_version>='3.6' # Apache-2.0
|
||||
python-heatclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-heatclient;python_version>='3.6' # Apache-2.0
|
||||
python-hnvclient # Apache-2.0
|
||||
python-glanceclient # Apache-2.0
|
||||
python-glareclient # Apache-2.0
|
||||
python-ironic-inspector-client # Apache-2.0
|
||||
python-ironicclient!=2.5.2,!=2.7.1,!=3.0.0,<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-ironicclient!=2.5.2,!=2.7.1,!=3.0.0;python_version>='3.6' # Apache-2.0
|
||||
python-karborclient # Apache-2.0
|
||||
python-keystoneclient!=2.1.0 # Apache-2.0
|
||||
python-kingbirdclient # Apache-2.0
|
||||
python-magnumclient # Apache-2.0
|
||||
python-masakariclient # Apache-2.0
|
||||
python-manilaclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-manilaclient;python_version>='3.6' # Apache-2.0
|
||||
python-mistralclient!=3.2.0,<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-mistralclient!=3.2.0;python_version>='3.6' # Apache-2.0
|
||||
python-muranoclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-muranoclient;python_version>='3.6' # Apache-2.0
|
||||
python-monascaclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-monascaclient;python_version>='3.6' # Apache-2.0
|
||||
python-neutronclient # Apache-2.0
|
||||
python-novaclient # Apache-2.0
|
||||
python-octaviaclient # Apache-2.0
|
||||
python-openstackclient # Apache-2.0
|
||||
python-qinlingclient<5.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-qinlingclient;python_version>='3.6' # Apache-2.0
|
||||
python-rsdclient # Apache-2.0
|
||||
python-saharaclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-saharaclient;python_version>='3.6' # Apache-2.0
|
||||
python-searchlightclient<2.0.0;python_version=='2.7' #Apache-2.0
|
||||
python-searchlightclient;python_version>='3.6' #Apache-2.0
|
||||
python-senlinclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-senlinclient;python_version>='3.6' # Apache-2.0
|
||||
python-smaugclient # Apache-2.0
|
||||
python-solumclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-solumclient;python_version>='3.6' # Apache-2.0
|
||||
python-swiftclient # Apache-2.0
|
||||
python-tackerclient<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-tackerclient;python_version>='3.6' # Apache-2.0
|
||||
python-troveclient # Apache-2.0
|
||||
python-vitrageclient<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-vitrageclient;python_version>='3.6' # Apache-2.0
|
||||
python-watcherclient # Apache-2.0
|
||||
python-zaqarclient # Apache-2.0
|
||||
python-zunclient # Apache-2.0
|
||||
|
||||
python-magic # MIT
|
||||
python-memcached # PSF
|
||||
python-dateutil # BSD
|
||||
|
||||
# 2013.6 is the first version of pytz that is PEP 440 compatible.
|
||||
pytz # MIT
|
||||
pyudev # LGPLv2.1+
|
||||
PyYAML # MIT
|
||||
qpid-python;python_version=='2.7' # Apache-2.0
|
||||
raven # BSD
|
||||
reno<3.0.0;python_version<'3.0' # Apache-2.0
|
||||
reno;python_version>='3.0' # Apache-2.0
|
||||
requests!=2.20.0 # Apache-2.0
|
||||
requests-aws # BSD License (3 clause)
|
||||
requests-kerberos # ISC
|
||||
requestsexceptions # Apache-2.0
|
||||
rfc3986 # Apache-2.0
|
||||
rsd-lib # Apache-2.0
|
||||
Routes # MIT
|
||||
rtslib-fb # Apache-2.0
|
||||
ryu # Apache-2.0
|
||||
semantic-version # BSD
|
||||
fasteners!=0.15 # Apache-2.0
|
||||
scrypt # BSD
|
||||
simplejson # MIT
|
||||
six # MIT
|
||||
scipy # BSD
|
||||
scikit-learn<=0.20.0;python_version<='3.4' # BSD
|
||||
scikit-learn;python_version>='3.5' # BSD
|
||||
setproctitle # BSD
|
||||
# NOTE(yamahata):
|
||||
# bug work around of sqlalchemy
|
||||
# https://bitbucket.org/zzzeek/sqlalchemy/issues/3952/
|
||||
# The fix which is in git master branch is planned for 1.1.9
|
||||
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8 # MIT
|
||||
SQLAlchemy-Utils # BSD License
|
||||
sqlalchemy-migrate # Apache-2.0
|
||||
sqlalchemy-filters # Apache-2.0
|
||||
sqlparse # BSD
|
||||
stevedore # Apache-2.0
|
||||
storops # Apache-2.0
|
||||
systemd-python # LGPLv2+
|
||||
sysv-ipc # BSD License
|
||||
suds-jurko # LGPLv3+
|
||||
sympy # BSD
|
||||
taskflow # Apache-2.0
|
||||
tempest # Apache-2.0
|
||||
tooz # Apache-2.0
|
||||
tosca-parser # Apache-2.0
|
||||
tripleo-common!=11.3.0 # Apache-2.0
|
||||
validations-libs # Apache-2.0
|
||||
urllib3 # MIT
|
||||
unicodecsv;python_version<'3.0' # BSD
|
||||
warlock<2 # Apache-2.0
|
||||
WebOb # MIT
|
||||
websocket-client # LGPLv2+
|
||||
websockify # LGPLv3
|
||||
wheel # MIT
|
||||
PyMI;sys_platform=='win32' # Apache 2.0 License
|
||||
wmi;sys_platform=='win32' # MIT
|
||||
WSME # MIT
|
||||
xattr;sys_platform!='win32' # MIT
|
||||
xstatic-angular-uuid # MIT License
|
||||
xstatic-angular-vis # MIT License
|
||||
xstatic-filesaver # MIT License
|
||||
xstatic-js-yaml # MIT License
|
||||
xstatic-json2yaml # MIT License
|
||||
XenAPI # LGPL
|
||||
XStatic # MIT License
|
||||
XStatic-Angular # MIT License
|
||||
XStatic-Angular-Bootstrap # MIT License
|
||||
XStatic-Angular-Gettext # MIT License
|
||||
XStatic-Angular-lrdragndrop # MIT License
|
||||
XStatic-Angular-Schema-Form # MIT
|
||||
XStatic-angular-ui-router # MIT
|
||||
XStatic-Bootstrap-Datepicker # Apache 2.0 License
|
||||
XStatic-Bootstrap-SCSS # Apache 2.0 License
|
||||
XStatic-bootswatch # MIT License
|
||||
XStatic-D3 # BSD License (3 clause)
|
||||
XStatic-Dagre # MIT License
|
||||
XStatic-Dagre-D3 # MIT License
|
||||
XStatic-Font-Awesome # SIL OFL 1.1 License, MIT License
|
||||
XStatic-Graphlib # MIT License
|
||||
XStatic-Hogan # Apache 2.0 License
|
||||
XStatic-Jasmine # MIT License
|
||||
XStatic-jQuery<2 # MIT License
|
||||
XStatic-JQuery-Migrate # MIT License
|
||||
XStatic-JQuery.quicksearch # MIT License
|
||||
XStatic-JQuery.TableSorter # MIT License
|
||||
XStatic-jquery-ui # MIT License
|
||||
XStatic-JSEncrypt # MIT License
|
||||
XStatic-lodash # MIT License
|
||||
XStatic-mdi # SIL OPEN FONT LICENSE Version 1.1
|
||||
XStatic-moment # MIT License
|
||||
XStatic-Moment-Timezone # MIT License
|
||||
XStatic-objectpath # MIT
|
||||
XStatic-Rickshaw # BSD License (prior)
|
||||
XStatic-roboto-fontface # Apache 2.0 License
|
||||
XStatic-smart-table # MIT License
|
||||
XStatic-Spin # MIT License
|
||||
XStatic-term.js # MIT License
|
||||
XStatic-tv4 # MIT
|
||||
XStatic-Angular-FileUpload # MIT License
|
||||
yaql # Apache 2.0 License
|
||||
# NOTE(dtantsur): zeroconf dropped compatibility with Python 2 in version 0.20
|
||||
zeroconf<0.20;python_version=='2.7' # LGPL
|
||||
zeroconf;python_version>='3.0' # LGPL
|
||||
zhmcclient # Apache 2.0 License
|
||||
|
||||
# Testing tools below, which are typically in test-requires.txt
|
||||
|
||||
bashate<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
bashate;python_version>='3.6' # Apache-2.0
|
||||
couchdb # Apache-2.0
|
||||
coverage!=4.4 # Apache-2.0
|
||||
demjson # GLGPLv3+
|
||||
docker # Apache-2.0
|
||||
django-nose # BSD
|
||||
doc8 # Apache-2.0
|
||||
Pygments # BSD license
|
||||
fixtures # Apache-2.0/BSD
|
||||
fixtures-git # Apache-2.0
|
||||
freezegun # Apache-2.0
|
||||
gabbi # Apache-2.0
|
||||
kafka-python # Apache-2.0
|
||||
keyring<19.0.0;python_version=='2.7' # MIT/PSF
|
||||
keyring;python_version>='3.4' # MIT/PSF
|
||||
ldappool # MPL
|
||||
# Do not make mock conditional on Python version: we depend on newer code than
|
||||
# in [most] releases of the Python std library.
|
||||
# https://github.com/testing-cabal/mock/issues/487 for 4.0.[0-1] blacklist
|
||||
mock!=4.0.0,!=4.0.1 # BSD
|
||||
mox # Apache-2.0
|
||||
mox3 # Apache-2.0
|
||||
nodeenv # BSD
|
||||
nose # LGPL
|
||||
nose-exclude # LGPL
|
||||
nosehtmloutput # Apache-2.0
|
||||
nosexcover # BSD
|
||||
openstack-doc-tools # Apache-2.0
|
||||
openstack.nose-plugin # Apache-2.0
|
||||
openstacksdk # Apache-2.0
|
||||
os-api-ref # Apache-2.0
|
||||
oslosphinx # Apache-2.0
|
||||
oslotest # Apache-2.0
|
||||
ovsdbapp # Apache-2.0
|
||||
proboscis # Apache-2.0
|
||||
psycopg2 # LGPL/ZPL
|
||||
psycopg2-binary # LGPL/ZPL
|
||||
purestorage # BSD
|
||||
pysendfile;sys_platform!='win32' # MIT
|
||||
python-3parclient # Apache-2.0
|
||||
python-consul # MIT License
|
||||
python-subunit # Apache-2.0/BSD
|
||||
python-pytun # MIT
|
||||
pyzmq # LGPL+BSD
|
||||
redis # MIT
|
||||
hiredis # BSD
|
||||
requests-mock # Apache-2.0
|
||||
tenacity # Apache-2.0
|
||||
retrying!=1.3.0 # Apache-2.0
|
||||
selenium # Apache-2.0
|
||||
# While setuptools cannot deal with pre-installed incompatible versions,
|
||||
# setting a lower bound is not harmful - it makes error messages cleaner. DO
|
||||
# NOT set an upper bound on setuptools, as that will lead to uninstallable
|
||||
# situations as progressive releases of projects are done.
|
||||
# Blacklist setuptools 34.0.0-34.3.2 due to https://github.com/pypa/setuptools/issues/951
|
||||
# Blacklist setuptools 36.2.0 due to https://github.com/pypa/setuptools/issues/1086
|
||||
# Cap setuptools to 58.0.0 on python3.5 due to the incompatibility with decorator 3.4.0.
|
||||
setuptools!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0,<58.0.0;python_version>='3.5' # PSF/ZPL
|
||||
setuptools!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0,<45.0.0;python_version<='2.7' # PSF/ZPL
|
||||
sphinx!=1.6.6,!=1.6.7,<2.0.0;python_version=='2.7' # BSD
|
||||
sphinx!=1.6.6,!=1.6.7,!=2.1.0,!=3.0.0;python_version>='3.4' # BSD
|
||||
sphinx-testing # BSD License
|
||||
sphinxcontrib-actdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-actdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-apidoc # BSD
|
||||
sphinxcontrib-blockdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-blockdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-httpdomain # BSD
|
||||
sphinxcontrib-nwdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-nwdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-seqdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-seqdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-pecanwsme # Apache-2.0
|
||||
sphinxcontrib-fulltoc # Apache-2.0
|
||||
sphinx-feature-classification # Apache-2.0
|
||||
sphinxmark # Apache-2.0
|
||||
sphinxcontrib.datatemplates # BSD License
|
||||
sphinxcontrib-programoutput # BSD license
|
||||
sphinxcontrib-svg2pdfconverter # BSD License
|
||||
stestr!=2.3.0,!=3.0.0 # Apache-2.0
|
||||
sushy!=1.9.0<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
sushy!=1.9.0;python_version>='3.6' # Apache-2.0
|
||||
tabulate # MIT
|
||||
testrepository # Apache-2.0/BSD
|
||||
testresources # Apache-2.0/BSD
|
||||
testscenarios # Apache-2.0/BSD
|
||||
testtools # MIT
|
||||
trollius;python_version=='2.7' # Apache-2.0
|
||||
ujson # BSD
|
||||
unittest2 # BSD
|
||||
virtualbmc # Apache-2.0
|
||||
virtualenv<20.8 # MIT
|
||||
vmware-nsxlib # Apache-2.0
|
||||
wrapt # BSD License
|
||||
WebTest # MIT
|
||||
Werkzeug # BSD License
|
||||
whereto # Apache-2.0
|
||||
xmltodict # MIT
|
||||
wsgi-intercept # MIT License
|
||||
xvfbwrapper #license: MIT
|
||||
zake # Apache-2.0
|
||||
zuul-sphinx # Apache-2.0
|
||||
shade # Apache-2.0
|
||||
sadisplay # BSD
|
||||
|
||||
# NOTE(tonyb): Generally adding OpenSatck services isn't allowed but some consumers of ceilometer
|
||||
# use it like a library so until there is a ceilometer-lib (or similar) this is our best option.
|
||||
ceilometer # Apache-2.0
|
||||
|
||||
# Indirect dependencies that need blocking
|
||||
# NOTE(bnemec): 1.16.0 introduced a bug that is breaking tooz. 1.18.0 fixes it.
|
||||
# See https://bugs.launchpad.net/python-tooz/+bug/1808046
|
||||
grpcio!=1.16.0,!=1.16.1,!=1.17.0,!=1.17.1
|
||||
|
||||
# NOTE(dhellmann): We need to include this package for testing the
|
||||
# release jobs that propose constraint updates, even though it is not
|
||||
# a real requirement of any of our software.
|
||||
openstack-release-test
|
||||
|
||||
# NOTE(snapiri): This is required for Dragonflow topology visualization
|
||||
skydive-client # Apache-2.0
|
||||
|
||||
# NOTE(anilvenkata): This is required for profiling oslo.service processes
|
||||
Yappi!=0.98,!=0.99 # MIT
|
||||
|
||||
# NOTE(yoctozepto): To avoid repeated breakage (this is a dep of deps)
|
||||
zipp<2;python_version<'3.6' # MIT
|
||||
zipp;python_version>='3.6' # MIT
|
||||
|
||||
# NOTE(prometheanfire): python3 caps, are not approved for use in OpenStack
|
||||
gitdb<4.0.0;python_version=='2.7' # BSD
|
||||
gitdb;python_version>='3.4' # BSD
|
||||
gitdb2<3.0.0;python_version=='2.7' # BSD
|
||||
gitdb2;python_version>='3.4' # BSD
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,604 @@
|
||||
abclient # Apache-2.0
|
||||
alembic!=1.2.0 # MIT
|
||||
amqp!=2.1.4 # BSD
|
||||
ansible-runner!=1.3.5 # Apache 2.0
|
||||
anyjson # BSD
|
||||
appdirs # MIT License
|
||||
apscheduler # MIT License
|
||||
autobahn # MIT License
|
||||
automaton # Apache-2.0
|
||||
beautifulsoup4 # MIT
|
||||
Babel!=2.4.0 # BSD
|
||||
bcrypt # Apache-2.0
|
||||
betamax # Apache-2.0
|
||||
betamax-matchers # Apache-2.0
|
||||
blockdiag!=2.0.0 # Apache-2.0
|
||||
boto # MIT
|
||||
boto3 # Apache-2.0
|
||||
botocore # Apache-2.0
|
||||
cassandra-driver!=3.6.0 # Apache-2.0
|
||||
castellan # Apache-2.0
|
||||
ceilometermiddleware # Apache-2.0
|
||||
cachetools # MIT License
|
||||
cffi # MIT
|
||||
cliff!=2.9.0,!=2.17.0,<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
cliff!=2.9.0,!=2.17.0;python_version>='3.6' # Apache-2.0
|
||||
# NOTE(mordred) python-openstackclient is broken due to bug 1810213
|
||||
cmd2!=0.8.3,<0.9.0 # MIT
|
||||
confluent-kafka!=1.4.0 # Apache-2.0
|
||||
cotyledon # Apache-2.0
|
||||
construct<2.9 # MIT
|
||||
PuLP # MIT
|
||||
contextlib2;python_version<'3.0' # PSF License
|
||||
croniter # MIT License
|
||||
cryptography!=2.0 # BSD/Apache-2.0
|
||||
cursive # Apache-2.0
|
||||
dataclasses;python_version=='3.6' # Apache-2.0
|
||||
ddt # MIT
|
||||
debtcollector<2.0.0;python_version<'3.0' # Apache-2.0
|
||||
debtcollector;python_version>='3.0' # Apache-2.0
|
||||
decorator # BSD
|
||||
defusedxml # PSF
|
||||
dib-utils # Apache-2.0
|
||||
diskimage-builder!=1.6.0,!=1.7.0,!=1.7.1 # Apache-2.0
|
||||
distro # Apache-2.0
|
||||
Django<2;python_version<'3.0' # BSD
|
||||
Django<3.0;python_version>='3.0' # BSD
|
||||
django-compressor # MIT
|
||||
django-debreach # BSD
|
||||
django-floppyforms<2 # BSD
|
||||
django-formtools # BSD
|
||||
dnspython;python_version=='2.7' # http://www.dnspython.org/LICENSE
|
||||
dnspython3!=1.13.0,!=1.14.0;python_version>='3.0' # http://www.dnspython.org/LICENSE
|
||||
# Note(tonyb): We don't actually directly depend on docutils but we pull it in
|
||||
# indirectly and we needed to blacklist 0.13.1 for problems with
|
||||
# Sphinx 1.3. This can be now removed once all projects removed it.
|
||||
docutils # OSI-Approved Open Source, Public Domain
|
||||
dogpile.cache # BSD
|
||||
dogtag-pki # LGPLv3+
|
||||
dulwich!=0.19.3,!=0.19.7 # Apache-2.0
|
||||
edgegrid-python # Apache-2.0
|
||||
elasticsearch<3.0.0 # Apache-2.0
|
||||
enmerkar;python_version>='3.0' # BSD
|
||||
enum34;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD
|
||||
# NOTE: New versions of eventlet should not be accepted lightly
|
||||
# as they have earned a reputation of frequently breaking things.
|
||||
eventlet!=0.18.3,!=0.20.1,!=0.21.0,!=0.23.0,!=0.25.0 # MIT
|
||||
exabgp!=4.0.6 # BSD
|
||||
extras # MIT
|
||||
faker # MIT
|
||||
falcon # Apache-2.0
|
||||
Flask!=0.11 # BSD
|
||||
flask-keystone # Apache-2.0
|
||||
flask-oslolog # Apache-2.0
|
||||
Flask-RESTful # BSD
|
||||
Flask-SQLAlchemy # BSD
|
||||
fortiosclient # Apache-2.0
|
||||
futures!=0.17.0;python_version=='2.7' or python_version=='2.6' # PSF
|
||||
futurist<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
futurist;python_version>='3.6' # Apache-2.0
|
||||
funcsigs;python_version=='2.7' or python_version=='2.6' # Apache-2.0
|
||||
glance-store!=0.29.0 # Apache-2.0
|
||||
google-api-python-client # Apache-2.0
|
||||
graphviz!=0.5.0 # MIT License
|
||||
greenlet!=0.4.14 # MIT
|
||||
GitPython<2.1.12;python_version<'3.0' # BSD License (3 clause)
|
||||
GitPython;python_version>='3.0' # BSD License (3 clause)
|
||||
gunicorn<20.0.0;python_version<'3.0' # MIT
|
||||
gunicorn;python_version>='3.0' # MIT
|
||||
happybase!=0.7,!=1.0.0;python_version=='2.7' # MIT
|
||||
heat-translator # Apache-2.0
|
||||
horizon # Apache-2.0
|
||||
httplib2 # MIT
|
||||
hvac # Apache-2.0
|
||||
icalendar # BSD
|
||||
importlib-metadata # Apache-2.0
|
||||
infinisdk # BSD-3
|
||||
influxdb!=5.2.0,!=5.2.1,!=5.2.2,!=5.2.3;python_version<'3.0' # MIT
|
||||
influxdb;python_version>='3.0' # MIT
|
||||
instack-undercloud # Apache-2.0
|
||||
ironic-lib # Apache-2.0
|
||||
ipaddress;python_version<'3.3' # PSF
|
||||
iso8601 # MIT
|
||||
jira # BSD License (2 clause)
|
||||
Jinja2 # BSD License (3 clause)
|
||||
jmespath # MIT
|
||||
jsonmodels # BSD License (3 clause)
|
||||
jsonpatch!=1.20 # BSD
|
||||
jsonpath-rw<2.0 # Apache-2.0
|
||||
jsonpath-rw-ext # Apache-2.0
|
||||
jsonschema # MIT
|
||||
kazoo # Apache-2.0
|
||||
keystoneauth1 # Apache-2.0
|
||||
keystonemiddleware # Apache-2.0
|
||||
krest # Apache-2.0
|
||||
kubernetes # Apache-2.0
|
||||
kuryr-lib # Apache-2.0
|
||||
packaging # Apache-2.0
|
||||
pylev # BSD
|
||||
pypowervm!=1.1.21,!=1.1.22 # Apache-2.0
|
||||
pyScss!=1.3.5 # MIT License
|
||||
django-pyscss # BSD License (2 clause)
|
||||
kombu!=4.0.2 # BSD
|
||||
ldap3 # LGPLv3
|
||||
deprecation # Apache-2.0
|
||||
libvirt-python!=4.1.0,!=4.2.0,<6.0.0;python_version<'3.0' # LGPLv2+
|
||||
libvirt-python!=4.1.0,!=4.2.0;python_version>='3.0' # LGPLv2+
|
||||
lxml!=3.7.0 # BSD
|
||||
Mako # MIT
|
||||
marathon!=0.9.1 # MIT
|
||||
metalsmith # Apache-2.0
|
||||
microversion-parse # Apache-2.0
|
||||
mistral-lib # Apache-2.0
|
||||
monasca-common # Apache-2.0
|
||||
monasca-statsd # Apache-2.0
|
||||
monotonic;python_version<'3.3' # Apache-2.0
|
||||
msgpack # Apache-2.0
|
||||
munch # MIT
|
||||
murano-pkg-check # Apache-2.0
|
||||
mypy;python_version>='3.4' # MIT
|
||||
ndg-httpsclient;python_version<'3.0' # BSD
|
||||
netaddr # BSD
|
||||
netifaces!=0.10.0,!=0.10.1 # MIT
|
||||
netmiko # MIT
|
||||
network-runner # Apache 2.0
|
||||
networking-bagpipe # Apache-2.0
|
||||
networking-bgpvpn # Apache-2.0
|
||||
networking-l2gw # Apache-2.0
|
||||
networking-odl # Apache-2.0
|
||||
networking-sfc # Apache-2.0
|
||||
# NOTE(fdegir): NetworkX 2.3 dropped support for Python 2
|
||||
networkx<2.3;python_version<'3.0' # BSD
|
||||
networkx;python_version>='3.4' # BSD
|
||||
# NOTE(ralonsoh): neutron-lib 2.0.0 dropped support for Python 2
|
||||
neutron-lib<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
neutron-lib;python_version>='3.6' # Apache-2.0
|
||||
neutron-dynamic-routing # Apache-2.0
|
||||
neutron-fwaas # Apache-2.0
|
||||
neutron-lbaas # Apache-2.0
|
||||
neutron-vpnaas # Apache-2.0
|
||||
neutron # Apache-2.0
|
||||
notifier # Apache-2.0
|
||||
oauth2client!=4.0.0 # Apache-2.0
|
||||
oauthlib # BSD
|
||||
octavia-lib # Apache-2.0
|
||||
openstackdocstheme # Apache-2.0
|
||||
osc-lib # Apache-2.0
|
||||
osc-placement # Apache-2.0
|
||||
oslo.cache!=1.31.1,<2.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.cache!=1.31.1,!=2.1.0;python_version>='3.0' # Apache-2.0
|
||||
oslo.config!=4.3.0,!=4.4.0,<8.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.config!=4.3.0,!=4.4.0;python_version>='3.0' # Apache-2.0
|
||||
oslo.concurrency<4.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.concurrency;python_version>='3.0' # Apache-2.0
|
||||
oslo.context<3.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.context;python_version>='3.0' # Apache-2.0
|
||||
oslo.db # Apache-2.0
|
||||
oslo.i18n<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.i18n;python_version>='3.6' # Apache-2.0
|
||||
oslo.limit<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.limit;python_version>='3.0' # Apache-2.0
|
||||
oslo.log<4.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.log;python_version>='3.0' # Apache-2.0
|
||||
oslo.messaging!=9.0.0 # Apache-2.0
|
||||
oslo.middleware # Apache-2.0
|
||||
oslo.policy<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.policy!=3.0.0;python_version>='3.6' # Apache-2.0
|
||||
oslo.privsep<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.privsep;python_version>='3.6' # Apache-2.0
|
||||
oslo.reports<2.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.reports;python_version>='3.6' # Apache-2.0
|
||||
oslo.rootwrap # Apache-2.0
|
||||
# NOTE(mriedem): oslo.serialization 2.19.1 is blocked for bug 1593641
|
||||
oslo.serialization!=2.19.1,<3.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.serialization!=2.19.1;python_version>='3.0' # Apache-2.0
|
||||
oslo.service!=1.28.1 # Apache-2.0
|
||||
oslo.upgradecheck<0.4.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.upgradecheck;python_version>='3.6' # Apache-2.0
|
||||
# NOTE(lajoskatona): oslo.utils version between 3.39.1 and 3.40.1 excluded due to bug 1812922
|
||||
oslo.utils!=3.39.1,!=3.40.0,!=3.40.1,<4.0.0;python_version<'3.0' # Apache-2.0
|
||||
oslo.utils!=3.39.1,!=3.40.0,!=3.40.1;python_version>='3.0' # Apache-2.0
|
||||
oslo.vmware # Apache-2.0
|
||||
oslo.versionedobjects<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
oslo.versionedobjects;python_version>='3.6' # Apache-2.0
|
||||
osprofiler # Apache-2.0
|
||||
os-apply-config # Apache-2.0
|
||||
os-brick!=2.8.0 # Apache-2.0
|
||||
os-client-config # Apache-2.0
|
||||
os-collect-config # Apache-2.0
|
||||
os-dpm # Apache-2.0
|
||||
os-net-config # Apache-2.0
|
||||
os-refresh-config # Apache-2.0
|
||||
os-resource-classes # Apache-2.0
|
||||
os-service-types # Apache-2.0
|
||||
os-testr<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-testr;python_version>='3.6' # Apache-2.0
|
||||
os-traits # Apache-2.0
|
||||
os-ken<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-ken;python_version>='3.6' # Apache-2.0
|
||||
os-vif!=1.8.0,!=1.12.0,<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-vif!=1.8.0,!=1.12.0;python_version>='3.6' # Apache-2.0
|
||||
ovs # Apache-2.0
|
||||
os-win<5.0.0;python_version=='2.7' # Apache-2.0
|
||||
os-win;python_version>='3.6' # Apache-2.0
|
||||
os-xenapi # Apache-2.0
|
||||
paramiko # LGPLv2.1+
|
||||
Parsley # MIT
|
||||
pathlib2 # MIT
|
||||
passlib # BSD
|
||||
Paste # MIT
|
||||
PasteDeploy # MIT
|
||||
paunch # Apache-2.0
|
||||
pbr!=2.1.0 # Apache-2.0
|
||||
pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2 # BSD
|
||||
pexpect!=3.3 # ISC License
|
||||
pifpaf # Apache-2.0
|
||||
pika # BSD
|
||||
Pillow # PIL License
|
||||
Pint<0.10;python_version<'3.6' # BSD
|
||||
Pint;python_version>='3.6' # BSD
|
||||
pip # MIT
|
||||
prometheus-client # Apache-2.0
|
||||
protobuf # BSD License (3 clause)
|
||||
PrettyTable<0.8 # BSD
|
||||
psutil # BSD
|
||||
pyasn1!=0.2.3 # BSD
|
||||
pyasn1-modules # BSD
|
||||
pycadf!=2.0.0,<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
pycadf!=2.0.0;python_version>='3.6' # Apache-2.0
|
||||
PyECLib # BSD
|
||||
pyghmi!=1.4.0,!=1.5.11 # Apache-2.0
|
||||
pyinotify;sys_platform!='win32' and sys_platform!='darwin' and sys_platform!='sunos5' # MIT
|
||||
PyJWT # MIT
|
||||
pykmip # Apache 2.0 License
|
||||
python-ldap # PSF
|
||||
pylxd # Apache-2.0
|
||||
pymemcache!=1.3.0 # Apache 2.0 License
|
||||
pymongo!=3.1 # Apache-2.0
|
||||
PyMySQL # MIT License
|
||||
pytest # MIT
|
||||
pytest-django # BSD (3 clause)
|
||||
pytest-html #MPL-2.0
|
||||
python-etcd # MIT License
|
||||
pywbem # LGPLv2.1+
|
||||
pywinrm # MIT
|
||||
salt!=2019.2.1,!=2019.2.2 # Apache-2.0
|
||||
storpool!=5.2.0,!=5.3.0 # Apache-2.0
|
||||
storpool.spopenstack # Apache-2.0
|
||||
dfs-sdk # Apache-2.0
|
||||
tap-as-a-service # Apache-2.0
|
||||
etcd3 # Apache-2.0
|
||||
etcd3gw!=0.2.2,!=0.2.3 # Apache-2.0
|
||||
typing # PSF
|
||||
voluptuous # BSD License
|
||||
pydot # MIT License
|
||||
pydotplus # MIT License
|
||||
crc16 # LGPLv3+
|
||||
pyzabbix # LGPL
|
||||
statsd # MIT
|
||||
weakrefmethod;python_version=='2.7' # PSF
|
||||
zVMCloudConnector;sys_platform!='win32' # Apache 2.0 License
|
||||
opentracing # Apache-2.0
|
||||
jaeger-client # Apache-2.0
|
||||
|
||||
pyngus # Apache-2.0
|
||||
|
||||
pyOpenSSL # Apache-2.0
|
||||
pyparsing # MIT
|
||||
pyroute2!=0.5.4,!=0.5.5;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
|
||||
pysnmp # BSD
|
||||
pystache # MIT
|
||||
pysaml2!=4.0.3,!=4.0.4,!=4.0.5,!=4.0.5rc1,!=4.1.0,!=4.2.0,!=4.3.0,!=4.4.0,!=4.6.0 # Apache-2.0
|
||||
|
||||
# OpenStack clients. None of these should have an upper bound
|
||||
# as that has implications for testing in the gate.
|
||||
aodhclient # Apache-2.0
|
||||
gnocchiclient # Apache-2.0
|
||||
tricircleclient<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
tricircleclient;python_version>='3.6' # Apache-2.0
|
||||
python-barbicanclient # Apache-2.0
|
||||
python-blazarclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-blazarclient;python_version>='3.6' # Apache-2.0
|
||||
python-ceilometerclient # Apache-2.0
|
||||
python-cinderclient!=4.0.0,<6.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-cinderclient!=4.0.0;python_version>='3.6' # Apache-2.0
|
||||
python-cloudkittyclient<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-cloudkittyclient;python_version>='3.6' # Apache-2.0
|
||||
python-congressclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-congressclient<2000;python_version>='3.6' # Apache-2.0
|
||||
python-designateclient # Apache-2.0
|
||||
python-freezerclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-freezerclient;python_version>='3.6' # Apache-2.0
|
||||
python-heatclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-heatclient;python_version>='3.6' # Apache-2.0
|
||||
python-hnvclient # Apache-2.0
|
||||
python-glanceclient # Apache-2.0
|
||||
python-glareclient # Apache-2.0
|
||||
python-ironic-inspector-client # Apache-2.0
|
||||
python-ironicclient!=2.5.2,!=2.7.1,!=3.0.0,<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-ironicclient!=2.5.2,!=2.7.1,!=3.0.0;python_version>='3.6' # Apache-2.0
|
||||
python-karborclient # Apache-2.0
|
||||
python-keystoneclient!=2.1.0 # Apache-2.0
|
||||
python-kingbirdclient # Apache-2.0
|
||||
python-magnumclient # Apache-2.0
|
||||
python-masakariclient # Apache-2.0
|
||||
python-manilaclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-manilaclient;python_version>='3.6' # Apache-2.0
|
||||
python-mistralclient!=3.2.0,<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-mistralclient!=3.2.0;python_version>='3.6' # Apache-2.0
|
||||
python-muranoclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-muranoclient;python_version>='3.6' # Apache-2.0
|
||||
python-monascaclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-monascaclient;python_version>='3.6' # Apache-2.0
|
||||
python-neutronclient # Apache-2.0
|
||||
python-novaclient # Apache-2.0
|
||||
python-octaviaclient # Apache-2.0
|
||||
python-openstackclient # Apache-2.0
|
||||
python-qinlingclient<5.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-qinlingclient;python_version>='3.6' # Apache-2.0
|
||||
python-rsdclient # Apache-2.0
|
||||
python-saharaclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-saharaclient;python_version>='3.6' # Apache-2.0
|
||||
python-searchlightclient<2.0.0;python_version=='2.7' #Apache-2.0
|
||||
python-searchlightclient;python_version>='3.6' #Apache-2.0
|
||||
python-senlinclient<2.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-senlinclient;python_version>='3.6' # Apache-2.0
|
||||
python-smaugclient # Apache-2.0
|
||||
python-solumclient<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-solumclient;python_version>='3.6' # Apache-2.0
|
||||
python-swiftclient # Apache-2.0
|
||||
python-tackerclient<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-tackerclient;python_version>='3.6' # Apache-2.0
|
||||
python-troveclient # Apache-2.0
|
||||
python-vitrageclient<4.0.0;python_version=='2.7' # Apache-2.0
|
||||
python-vitrageclient;python_version>='3.6' # Apache-2.0
|
||||
python-watcherclient # Apache-2.0
|
||||
python-zaqarclient # Apache-2.0
|
||||
python-zunclient # Apache-2.0
|
||||
|
||||
python-magic # MIT
|
||||
python-memcached # PSF
|
||||
python-dateutil # BSD
|
||||
|
||||
# 2013.6 is the first version of pytz that is PEP 440 compatible.
|
||||
pytz # MIT
|
||||
pyudev # LGPLv2.1+
|
||||
PyYAML # MIT
|
||||
qpid-python;python_version=='2.7' # Apache-2.0
|
||||
raven # BSD
|
||||
reno<3.0.0;python_version<'3.0' # Apache-2.0
|
||||
reno;python_version>='3.0' # Apache-2.0
|
||||
requests!=2.20.0 # Apache-2.0
|
||||
requests-aws # BSD License (3 clause)
|
||||
requests-kerberos # ISC
|
||||
requestsexceptions # Apache-2.0
|
||||
rfc3986 # Apache-2.0
|
||||
rsd-lib # Apache-2.0
|
||||
Routes # MIT
|
||||
rtslib-fb # Apache-2.0
|
||||
ryu # Apache-2.0
|
||||
semantic-version # BSD
|
||||
fasteners!=0.15 # Apache-2.0
|
||||
scrypt # BSD
|
||||
simplejson # MIT
|
||||
six # MIT
|
||||
scipy # BSD
|
||||
scikit-learn<=0.20.0;python_version<='3.4' # BSD
|
||||
scikit-learn;python_version>='3.5' # BSD
|
||||
setproctitle # BSD
|
||||
# NOTE(yamahata):
|
||||
# bug work around of sqlalchemy
|
||||
# https://bitbucket.org/zzzeek/sqlalchemy/issues/3952/
|
||||
# The fix which is in git master branch is planned for 1.1.9
|
||||
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8 # MIT
|
||||
SQLAlchemy-Utils # BSD License
|
||||
sqlalchemy-migrate # Apache-2.0
|
||||
sqlalchemy-filters # Apache-2.0
|
||||
sqlparse # BSD
|
||||
stevedore # Apache-2.0
|
||||
storops # Apache-2.0
|
||||
systemd-python # LGPLv2+
|
||||
sysv-ipc # BSD License
|
||||
suds-jurko # LGPLv3+
|
||||
sympy # BSD
|
||||
taskflow # Apache-2.0
|
||||
tempest # Apache-2.0
|
||||
tooz # Apache-2.0
|
||||
tosca-parser # Apache-2.0
|
||||
tripleo-common!=11.3.0 # Apache-2.0
|
||||
validations-libs # Apache-2.0
|
||||
urllib3 # MIT
|
||||
unicodecsv;python_version<'3.0' # BSD
|
||||
warlock<2 # Apache-2.0
|
||||
WebOb # MIT
|
||||
websocket-client # LGPLv2+
|
||||
websockify # LGPLv3
|
||||
wheel # MIT
|
||||
PyMI;sys_platform=='win32' # Apache 2.0 License
|
||||
wmi;sys_platform=='win32' # MIT
|
||||
WSME # MIT
|
||||
xattr;sys_platform!='win32' # MIT
|
||||
xstatic-angular-uuid # MIT License
|
||||
xstatic-angular-vis # MIT License
|
||||
xstatic-filesaver # MIT License
|
||||
xstatic-js-yaml # MIT License
|
||||
xstatic-json2yaml # MIT License
|
||||
XenAPI # LGPL
|
||||
XStatic # MIT License
|
||||
XStatic-Angular # MIT License
|
||||
XStatic-Angular-Bootstrap # MIT License
|
||||
XStatic-Angular-Gettext # MIT License
|
||||
XStatic-Angular-lrdragndrop # MIT License
|
||||
XStatic-Angular-Schema-Form # MIT
|
||||
XStatic-angular-ui-router # MIT
|
||||
XStatic-Bootstrap-Datepicker # Apache 2.0 License
|
||||
XStatic-Bootstrap-SCSS # Apache 2.0 License
|
||||
XStatic-bootswatch # MIT License
|
||||
XStatic-D3 # BSD License (3 clause)
|
||||
XStatic-Dagre # MIT License
|
||||
XStatic-Dagre-D3 # MIT License
|
||||
XStatic-Font-Awesome # SIL OFL 1.1 License, MIT License
|
||||
XStatic-Graphlib # MIT License
|
||||
XStatic-Hogan # Apache 2.0 License
|
||||
XStatic-Jasmine # MIT License
|
||||
XStatic-jQuery<2 # MIT License
|
||||
XStatic-JQuery-Migrate # MIT License
|
||||
XStatic-JQuery.quicksearch # MIT License
|
||||
XStatic-JQuery.TableSorter # MIT License
|
||||
XStatic-jquery-ui # MIT License
|
||||
XStatic-JSEncrypt # MIT License
|
||||
XStatic-lodash # MIT License
|
||||
XStatic-mdi # SIL OPEN FONT LICENSE Version 1.1
|
||||
XStatic-moment # MIT License
|
||||
XStatic-Moment-Timezone # MIT License
|
||||
XStatic-objectpath # MIT
|
||||
XStatic-Rickshaw # BSD License (prior)
|
||||
XStatic-roboto-fontface # Apache 2.0 License
|
||||
XStatic-smart-table # MIT License
|
||||
XStatic-Spin # MIT License
|
||||
XStatic-term.js # MIT License
|
||||
XStatic-tv4 # MIT
|
||||
XStatic-Angular-FileUpload # MIT License
|
||||
yaql # Apache 2.0 License
|
||||
# NOTE(dtantsur): zeroconf dropped compatibility with Python 2 in version 0.20
|
||||
zeroconf<0.20;python_version=='2.7' # LGPL
|
||||
zeroconf;python_version>='3.0' # LGPL
|
||||
zhmcclient # Apache 2.0 License
|
||||
|
||||
# Testing tools below, which are typically in test-requires.txt
|
||||
|
||||
bashate<1.0.0;python_version=='2.7' # Apache-2.0
|
||||
bashate;python_version>='3.6' # Apache-2.0
|
||||
couchdb # Apache-2.0
|
||||
coverage!=4.4 # Apache-2.0
|
||||
demjson # GLGPLv3+
|
||||
docker # Apache-2.0
|
||||
django-nose # BSD
|
||||
doc8 # Apache-2.0
|
||||
Pygments # BSD license
|
||||
fixtures # Apache-2.0/BSD
|
||||
fixtures-git # Apache-2.0
|
||||
freezegun # Apache-2.0
|
||||
gabbi # Apache-2.0
|
||||
kafka-python # Apache-2.0
|
||||
keyring<19.0.0;python_version=='2.7' # MIT/PSF
|
||||
keyring;python_version>='3.4' # MIT/PSF
|
||||
ldappool # MPL
|
||||
# Do not make mock conditional on Python version: we depend on newer code than
|
||||
# in [most] releases of the Python std library.
|
||||
# https://github.com/testing-cabal/mock/issues/487 for 4.0.[0-1] blacklist
|
||||
mock!=4.0.0,!=4.0.1 # BSD
|
||||
mox # Apache-2.0
|
||||
mox3 # Apache-2.0
|
||||
nodeenv # BSD
|
||||
nose # LGPL
|
||||
nose-exclude # LGPL
|
||||
nosehtmloutput # Apache-2.0
|
||||
nosexcover # BSD
|
||||
openstack-doc-tools # Apache-2.0
|
||||
openstack.nose-plugin # Apache-2.0
|
||||
openstacksdk # Apache-2.0
|
||||
os-api-ref # Apache-2.0
|
||||
oslosphinx # Apache-2.0
|
||||
oslotest # Apache-2.0
|
||||
ovsdbapp # Apache-2.0
|
||||
proboscis # Apache-2.0
|
||||
psycopg2 # LGPL/ZPL
|
||||
psycopg2-binary # LGPL/ZPL
|
||||
purestorage # BSD
|
||||
pysendfile;sys_platform!='win32' # MIT
|
||||
python-3parclient # Apache-2.0
|
||||
python-consul # MIT License
|
||||
python-subunit # Apache-2.0/BSD
|
||||
python-pytun # MIT
|
||||
pyzmq # LGPL+BSD
|
||||
redis # MIT
|
||||
hiredis # BSD
|
||||
requests-mock # Apache-2.0
|
||||
tenacity # Apache-2.0
|
||||
retrying!=1.3.0 # Apache-2.0
|
||||
selenium # Apache-2.0
|
||||
# While setuptools cannot deal with pre-installed incompatible versions,
|
||||
# setting a lower bound is not harmful - it makes error messages cleaner. DO
|
||||
# NOT set an upper bound on setuptools, as that will lead to uninstallable
|
||||
# situations as progressive releases of projects are done.
|
||||
# Blacklist setuptools 34.0.0-34.3.2 due to https://github.com/pypa/setuptools/issues/951
|
||||
# Blacklist setuptools 36.2.0 due to https://github.com/pypa/setuptools/issues/1086
|
||||
# Cap setuptools to 58.0.0 on python3.5 due to the incompatibility with decorator 3.4.0.
|
||||
setuptools!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0,<58.0.0;python_version>='3.5' # PSF/ZPL
|
||||
setuptools!=24.0.0,!=34.0.0,!=34.0.1,!=34.0.2,!=34.0.3,!=34.1.0,!=34.1.1,!=34.2.0,!=34.3.0,!=34.3.1,!=34.3.2,!=36.2.0,<45.0.0;python_version<='2.7' # PSF/ZPL
|
||||
sphinx!=1.6.6,!=1.6.7,<2.0.0;python_version=='2.7' # BSD
|
||||
sphinx!=1.6.6,!=1.6.7,!=2.1.0,!=3.0.0;python_version>='3.4' # BSD
|
||||
sphinx-testing # BSD License
|
||||
sphinxcontrib-actdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-actdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-apidoc # BSD
|
||||
sphinxcontrib-blockdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-blockdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-httpdomain # BSD
|
||||
sphinxcontrib-nwdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-nwdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-seqdiag<2.0.0;python_version=='2.7' # BSD
|
||||
sphinxcontrib-seqdiag;python_version>='3.4' # BSD
|
||||
sphinxcontrib-pecanwsme # Apache-2.0
|
||||
sphinxcontrib-fulltoc # Apache-2.0
|
||||
sphinx-feature-classification # Apache-2.0
|
||||
sphinxmark # Apache-2.0
|
||||
sphinxcontrib.datatemplates # BSD License
|
||||
sphinxcontrib-programoutput # BSD license
|
||||
sphinxcontrib-svg2pdfconverter # BSD License
|
||||
stestr!=2.3.0,!=3.0.0 # Apache-2.0
|
||||
sushy!=1.9.0<3.0.0;python_version=='2.7' # Apache-2.0
|
||||
sushy!=1.9.0;python_version>='3.6' # Apache-2.0
|
||||
tabulate # MIT
|
||||
testrepository # Apache-2.0/BSD
|
||||
testresources # Apache-2.0/BSD
|
||||
testscenarios # Apache-2.0/BSD
|
||||
testtools # MIT
|
||||
trollius;python_version=='2.7' # Apache-2.0
|
||||
ujson # BSD
|
||||
unittest2 # BSD
|
||||
virtualbmc # Apache-2.0
|
||||
virtualenv<20.8 # MIT
|
||||
vmware-nsxlib # Apache-2.0
|
||||
wrapt # BSD License
|
||||
WebTest # MIT
|
||||
Werkzeug # BSD License
|
||||
whereto # Apache-2.0
|
||||
xmltodict # MIT
|
||||
wsgi-intercept # MIT License
|
||||
xvfbwrapper #license: MIT
|
||||
zake # Apache-2.0
|
||||
zuul-sphinx # Apache-2.0
|
||||
shade # Apache-2.0
|
||||
sadisplay # BSD
|
||||
|
||||
# NOTE(tonyb): Generally adding OpenSatck services isn't allowed but some consumers of ceilometer
|
||||
# use it like a library so until there is a ceilometer-lib (or similar) this is our best option.
|
||||
ceilometer # Apache-2.0
|
||||
|
||||
# Indirect dependencies that need blocking
|
||||
# NOTE(bnemec): 1.16.0 introduced a bug that is breaking tooz. 1.18.0 fixes it.
|
||||
# See https://bugs.launchpad.net/python-tooz/+bug/1808046
|
||||
grpcio!=1.16.0,!=1.16.1,!=1.17.0,!=1.17.1
|
||||
|
||||
# NOTE(dhellmann): We need to include this package for testing the
|
||||
# release jobs that propose constraint updates, even though it is not
|
||||
# a real requirement of any of our software.
|
||||
openstack-release-test
|
||||
|
||||
# NOTE(snapiri): This is required for Dragonflow topology visualization
|
||||
skydive-client # Apache-2.0
|
||||
|
||||
# NOTE(anilvenkata): This is required for profiling oslo.service processes
|
||||
Yappi!=0.98,!=0.99 # MIT
|
||||
|
||||
# NOTE(yoctozepto): To avoid repeated breakage (this is a dep of deps)
|
||||
zipp<2;python_version<'3.6' # MIT
|
||||
zipp;python_version>='3.6' # MIT
|
||||
|
||||
# NOTE(prometheanfire): python3 caps, are not approved for use in OpenStack
|
||||
gitdb<4.0.0;python_version=='2.7' # BSD
|
||||
gitdb;python_version>='3.4' # BSD
|
||||
gitdb2<3.0.0;python_version=='2.7' # BSD
|
||||
gitdb2;python_version>='3.4' # BSD
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,202 @@
|
||||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
13
build-tools/build-wheels/debian/openstack.cfg
Normal file
13
build-tools/build-wheels/debian/openstack.cfg
Normal file
@ -0,0 +1,13 @@
|
||||
# This file specifies constraint/requirement URLs for current and python2
|
||||
# openstack branches
|
||||
|
||||
# Current/stable
|
||||
STABLE_OPENSTACK_REQ_URL="openstack-requirements/ussuri"
|
||||
# Current/experimental (for dev images)
|
||||
MASTER_OPENSTACK_REQ_URL="https://raw.githubusercontent.com/openstack/requirements/master"
|
||||
|
||||
# Python2/stable
|
||||
STABLE_OPENSTACK_REQ_URL_PY2="openstack-requirements/ussuri"
|
||||
# Python2/experimental (for dev images)
|
||||
MASTER_OPENSTACK_REQ_URL_PY2="https://raw.githubusercontent.com/openstack/requirements/stable/train"
|
||||
|
175
build-tools/build-wheels/debian/stable-wheels-py2.cfg
Normal file
175
build-tools/build-wheels/debian/stable-wheels-py2.cfg
Normal file
@ -0,0 +1,175 @@
|
||||
#
|
||||
# git: wheelname|git|git-source|basedir|branch
|
||||
# tar: wheelname|tar|wget-source|basedir
|
||||
# pypi: wheelname|pypi|wget-source
|
||||
# zip: wheelname|zip|wget-source|basedir
|
||||
#
|
||||
# If fix_setup must be called, add |fix_setup at the end of the line
|
||||
#
|
||||
abclient-0.2.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/49/eb/091b02c1e36d68927adfb746706e2c80f7e7bfb3f16e3cbcfec2632118ab/abclient-0.2.3.tar.gz|abclient-0.2.3
|
||||
alembic-1.1.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/9a/0f/a5e8997d58882da8ecd288360dddf133a83145de6480216774923b393422/alembic-1.1.0.tar.gz|alembic-1.1.0
|
||||
amqplib-1.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/75/b7/8c2429bf8d92354a0118614f9a4d15e53bc69ebedce534284111de5a0102/amqplib-1.0.2.tgz|amqplib-1.0.2
|
||||
anyjson-0.3.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/c3/4d/d4089e1a3dd25b46bebdb55a992b0797cff657b4477bc32ce28038fdecbc/anyjson-0.3.3.tar.gz|anyjson-0.3.3
|
||||
backports.ssl_match_hostname-3.7.0.1-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ff/2b/8265224812912bc5b7a607c44bf7b027554e1b9775e9ee0de8032e3de4b2/backports.ssl_match_hostname-3.7.0.1.tar.gz|backports.ssl_match_hostname-3.7.0.1|fix_setup
|
||||
bottle-0.12.17-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/c4/a5/6bf41779860e9b526772e1b3b31a65a22bd97535572988d16028c5ab617d/bottle-0.12.17.tar.gz|bottle-0.12.17
|
||||
cassandra_driver-3.19.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/1c/fe/e4df42a3e864b6b7b2c7f6050b66cafc7fba8b46da0dfb9d51867e171a77/cassandra-driver-3.19.0.tar.gz|cassandra-driver-3.19.0
|
||||
cmd2-0.8.9-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/e9/40/a71caa2aaff10c73612a7106e2d35f693e85b8cf6e37ab0774274bca3cf9/cmd2-0.8.9-py2.py3-none-any.whl
|
||||
construct-2.8.22-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/e5/c6/3e3aeef38bb0c27364af3d21493d9690c7c3925f298559bca3c48b7c9419/construct-2.8.22.tar.gz|construct-2.8.22
|
||||
crc16-0.1.1-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a6/e0/70a44c4385f2b33df82e518005aae16b5c1feaf082c73c0acebe3426fc0a/crc16-0.1.1.tar.gz|crc16-0.1.1|fix_setup
|
||||
demjson-2.2.4-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/96/67/6db789e2533158963d4af689f961b644ddd9200615b8ce92d6cad695c65a/demjson-2.2.4.tar.gz|demjson-2.2.4|fix_setup
|
||||
django_floppyforms-1.7.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8c/18/30a9137c7ae279a27ccdeb10f6fe8be18ee98551d01ec030b6cfe8b2d2e2/django-floppyforms-1.7.0.tar.gz|django-floppyforms-1.7.0
|
||||
django_pyscss-2.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/4b/7f/d771802305184aac6010826f60a0b2ecaa3f57d19ab0e405f0c8db07e809/django-pyscss-2.0.2.tar.gz|django-pyscss-2.0.2
|
||||
docopt-0.6.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/a2/55/8f8cab2afd404cf578136ef2cc5dfb50baa1761b68c9da1fb1e4eed343c9/docopt-0.6.2.tar.gz|docopt-0.6.2
|
||||
dogpile.cache-0.7.1-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/84/3e/dbf1cfc5228f1d3dca80ef714db2c5aaec5cd9efaf54d7e3daef6bc48b19/dogpile.cache-0.7.1.tar.gz|dogpile.cache-0.7.1
|
||||
enum_compat-0.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/95/6e/26bdcba28b66126f66cf3e4cd03bcd63f7ae330d29ee68b1f6b623550bfa/enum-compat-0.0.2.tar.gz|enum-compat-0.0.2
|
||||
etcd3-0.10.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/09/f1/93603a26daf7a993a0acbbcfd32afce8b2fdf30a765d5651571ab635969b/etcd3-0.10.0.tar.gz|etcd3-0.10.0
|
||||
exabgp-4.1.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/b9/f1/f2417bc82c9caa220fcd369a3b55ac895088bcc8afc262e4bb07d48aa40c/exabgp-4.1.2.tar.gz|exabgp-4.1.2
|
||||
flask_keystone-0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/1f/ca/3938de8c5f4a3d1c5dd4278bedb9d31d79816feba4d088293c620a366fb1/flask_keystone-0.2.tar.gz|flask_keystone-0.2
|
||||
flask_oslolog-0.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/a7/62/fec02ce761b548b1289680bb1be1aa0bce2b2c4017d5b31bd6c67c78aef9/flask_oslolog-0.1.tar.gz|flask_oslolog-0.1
|
||||
fortiosclient-0.0.3-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e9/aa/b2c0705d5e52c8d9af35422d940800b49c562758fbdad3179a6fbf6e92f5/fortiosclient-0.0.3.tar.gz|fortiosclient-0.0.3
|
||||
frozendict-1.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/4e/55/a12ded2c426a4d2bee73f88304c9c08ebbdbadb82569ebdd6a0c007cfd08/frozendict-1.2.tar.gz|frozendict-1.2
|
||||
funcparserlib-0.3.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/cb/f7/b4a59c3ccf67c0082546eaeb454da1a6610e924d2e7a2a21f337ecae7b40/funcparserlib-0.3.6.tar.gz|funcparserlib-0.3.6
|
||||
functools32-3.2.3.post2-py2-none-any.whl|git|https://github.com/MiCHiLU/python-functools32|python-functools32|3.2.3-2|fix_setup
|
||||
future-0.17.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/90/52/e20466b85000a181e1e144fd8305caf2cf475e2f9674e797b222f8105f5f/future-0.17.1.tar.gz|future-0.17.1
|
||||
happybase-1.2.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/d1/9c/f5f7bdb5439cda2b7da4e20ac24ec0e2455fd68aade8397f211d2994c39d/happybase-1.2.0.tar.gz|happybase-1.2.0
|
||||
hiredis-1.0.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/9e/e0/c160dbdff032ffe68e4b3c576cba3db22d8ceffc9513ae63368296d1bcc8/hiredis-1.0.0.tar.gz|hiredis-1.0.0
|
||||
httplib2-0.13.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/78/23/bb9606e87a66fd8c72a2b1a75b049d3859a122bc2648915be845bc44e04f/httplib2-0.13.1.tar.gz|httplib2-0.13.1
|
||||
itsdangerous-1.1.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/76/ae/44b03b253d6fade317f32c24d100b3b35c2239807046a4c953c7b89fa49e/itsdangerous-1.1.0-py2.py3-none-any.whl
|
||||
jaeger_client-4.1.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/f1/da/569a4f1bc3d0c412c7f903053f09ef62fa10949374ca90bc852b22dd3860/jaeger-client-4.1.0.tar.gz|jaeger-client-4.1.0
|
||||
jsonpath_rw-1.4.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/71/7c/45001b1f19af8c4478489fbae4fc657b21c4c669d7a5a036a86882581d85/jsonpath-rw-1.4.0.tar.gz|jsonpath-rw-1.4.0
|
||||
krest-1.3.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/fb/d2/9dbbd3a76f2385041720a0eb51ddab676e688fa8bee8a1489470839616cf/krest-1.3.1.tar.gz|krest-1.3.1
|
||||
#libvirt_python-4.4.0-cp27-none-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/2b/8d/1160cf34dc3d296896eb5c8f4944439ea368b87d2d2431f58d08d6bdf374/libvirt-python-4.4.0.tar.gz|libvirt-python-4.4.0|fix_setup
|
||||
logutils-0.3.5-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/49/b2/b57450889bf73da26027f8b995fd5fbfab258ec24ef967e4c1892f7cb121/logutils-0.3.5.tar.gz|logutils-0.3.5|fix_setup
|
||||
lz4-0.9.0-cp27-cp27mu-linux_x86_64.whl|git|https://github.com/python-lz4/python-lz4|python-lz4|v0.9.0
|
||||
Mako-1.1.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/b0/3c/8dcd6883d009f7cae0f3157fb53e9afb05a0d3d33b3db1268ec2e6f4a56b/Mako-1.1.0.tar.gz|Mako-1.1.0
|
||||
marathon-0.11.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/97/e3/f036af0d94f98d199233faa71b5bcbef8b8e8e634551940d98c95d276e4f/marathon-0.11.0-py2.py3-none-any.whl
|
||||
MarkupSafe-1.1.1-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/b9/2e/64db92e53b86efccfaea71321f597fa2e1b2bd3853d8ce658568f7a13094/MarkupSafe-1.1.1.tar.gz|MarkupSafe-1.1.1
|
||||
mox-0.5.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/0c/a1/64740c638cc5fae807022368f4141700518ee343b53eb3e90bf3cc15a4d4/mox-0.5.3.tar.gz|mox-0.5.3|fix_setup
|
||||
migrate-0.3.8-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/ce/31/1a4cbf8dc0536c55f41072e8ea37b3df1e412262dc731c57e5bb099eb9b2/migrate-0.3.8.tar.gz|migrate-0.3.8
|
||||
mpmath-1.1.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/ca/63/3384ebb3b51af9610086b23ea976e6d27d6d97bf140a76a365bd77a3eb32/mpmath-1.1.0.tar.gz|mpmath-1.1.0|fix_setup
|
||||
msgpack_python-0.4.8-cp27-cp27mu-linux_x86_64.whl|git|https://github.com/msgpack/msgpack-python.git|msgpack-python|0.4.8
|
||||
munch-2.3.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/68/f4/260ec98ea840757a0da09e0ed8135333d59b8dfebe9752a365b04857660a/munch-2.3.2.tar.gz|munch-2.3.2
|
||||
ndg_httpsclient-0.5.1-py2-none-any.whl|pypi|https://files.pythonhosted.org/packages/bf/b2/26470fde7ff55169df8e071fb42cb1f83e22bd952520ab2b5c5a5edc2acd/ndg_httpsclient-0.5.1-py2-none-any.whl
|
||||
netifaces-0.10.9-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/0d/18/fd6e9c71a35b67a73160ec80a49da63d1eed2d2055054cc2995714949132/netifaces-0.10.9.tar.gz|netifaces-0.10.9
|
||||
networking_sfc-8.0.0.0b2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/6a/a8/0e9bdd1f87dfb50682f23a01f590530ec8fa715e51127cf9f58d1905886c/networking_sfc-8.0.0.0b2-py2.py3-none-any.whl
|
||||
networkx-2.2-py2.py3-none-any.whl|zip|https://files.pythonhosted.org/packages/f3/f4/7e20ef40b118478191cec0b58c3192f822cace858c19505c7670961b76b2/networkx-2.2.zip|networkx-2.2
|
||||
neutron_lib-1.29.1-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/6b/dd/548cbb7a936de18aa642372927e409540d8f5d96a2f7650c4d1197845f3c/neutron_lib-1.29.1-py2.py3-none-any.whl
|
||||
nodeenv-1.3.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/00/6e/ed417bd1ed417ab3feada52d0c89ab0ed87d150f91590badf84273e047c9/nodeenv-1.3.3.tar.gz|nodeenv-1.3.3
|
||||
nose_exclude-0.5.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/63/cf/90c4be56bf11b7bc8801086d9445baf731aa36b8e8fc5791731e8e604dcd/nose-exclude-0.5.0.tar.gz|nose-exclude-0.5.0
|
||||
nosehtmloutput-0.0.5-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/0c/f7/6cb16c0b233d3f2d62be38ddb7d7c1bc967188c41575ecf0312e6575730d/nosehtmloutput-0.0.5.tar.gz|nosehtmloutput-0.0.5
|
||||
openshift-0.8.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/73/ed/c92c0ba23b6c4c8e5542151a1b89cb8ff01f68a72fe68f6c95a28d885ebe/openshift-0.8.6.tar.gz|openshift-0.8.6
|
||||
openstack.nose_plugin-0.11-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/bc/83/e7c9b9297e1a501d2c2617f98d6176199570e8ee32f0e72669c8852c6c81/openstack.nose_plugin-0.11.tar.gz|openstack.nose_plugin-0.11
|
||||
opentracing-2.2.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/94/9f/289424136addf621fb4c75624ef9a3a80e8575da3993a87950c57e93217e/opentracing-2.2.0.tar.gz|opentracing-2.2.0
|
||||
ovs-2.11.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/81/06/387b2159ac073de95e484aa6e2f108a232cd906e350307168843061f899f/ovs-2.11.0.tar.gz|ovs-2.11.0
|
||||
panko-5.0.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/a9/89/d666e0889d869e41c9b7f87a0a34858b2520782b82e025da84c98e0db8f6/panko-5.0.0.tar.gz|panko-5.0.0
|
||||
pathlib-1.0.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/ac/aa/9b065a76b9af472437a0059f77e8f962fe350438b927cb80184c32f075eb/pathlib-1.0.1.tar.gz|pathlib-1.0.1|fix_setup
|
||||
pecan-1.3.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/93/98/889d7615595e894f4f7e4c17d4008c822c8e39e650c8ab390cc6c39b99c4/pecan-1.3.3.tar.gz|pecan-1.3.3
|
||||
pifpaf-2.2.2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/33/dc/4f276c55d94cd73fc1f94e2d23f34b476fea38d240e3e17b837a5749bc9f/pifpaf-2.2.2-py2.py3-none-any.whl
|
||||
pika_pool-0.1.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/ec/48/50c8f02a3eef4cb824bec50661ec1713040402cc1b2a38954dc977a59c23/pika-pool-0.1.3.tar.gz|pika-pool-0.1.3
|
||||
Pint-0.9-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/15/9d/bf177ebbc57d25e9e296addc14a1303d1e34d7964af5df428a8332349c42/Pint-0.9-py2.py3-none-any.whl
|
||||
ply-3.11-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl
|
||||
positional-1.1.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8c/16/64a4fa0967c486380468dca18867d22ac1c17bba06349e31ace77c7757f7/positional-1.1.2.tar.gz|positional-1.1.2
|
||||
prettytable-0.7.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/e0/a1/36203205f77ccf98f3c6cf17cf068c972e6458d7e58509ca66da949ca347/prettytable-0.7.2.tar.gz|prettytable-0.7.2
|
||||
proboscis-1.2.6.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/3c/c8/c187818ab8d0faecdc3c16c1e0b2e522f3b38570f0fb91dcae21662019d0/proboscis-1.2.6.0.tar.gz|proboscis-1.2.6.0
|
||||
psutil-5.6.3-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/1c/ca/5b8c1fe032a458c2c4bcbe509d1401dca9dda35c7fc46b36bb81c2834740/psutil-5.6.3.tar.gz|psutil-5.6.3
|
||||
psycopg2-2.8.3-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/5c/1c/6997288da181277a0c29bc39a5f9143ff20b8c99f2a7d059cfb55163e165/psycopg2-2.8.3.tar.gz|psycopg2-2.8.3
|
||||
PuLP-1.6.10-py2-none-any.whl|zip|https://files.pythonhosted.org/packages/2d/33/3ae6d9d2ac8c7068937af6372fd8828ac605e62a8b17106fe57110930d38/PuLP-1.6.10.zip|PuLP-1.6.10
|
||||
pycparser-2.19-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar.gz|pycparser-2.19
|
||||
pycrypto-2.6.1-cp27-cp27mu-linux_x86_64.whl|git|https://github.com/dlitz/pycrypto|pycrypto|v2.6.1|fix_setup
|
||||
pycryptodomex-3.9.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e4/90/a01cafbbad7466491e3a630bf1d734294a32ff1b10e7429e9a4e8478669e/pycryptodomex-3.9.0.tar.gz|pycryptodomex-3.9.0
|
||||
pydot-1.4.1-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/33/d1/b1479a770f66d962f545c2101630ce1d5592d90cb4f083d38862e93d16d2/pydot-1.4.1-py2.py3-none-any.whl
|
||||
pydotplus-2.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/60/bf/62567830b700d9f6930e9ab6831d6ba256f7b0b730acb37278b0ccdffacf/pydotplus-2.0.2.tar.gz|pydotplus-2.0.2
|
||||
pyeclib-1.6.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/aa/d6/ca6bba5e66fc7a9810a995b17a3675492da2bec405806d8ac3db18cfd93b/pyeclib-1.6.0.tar.gz|pyeclib-1.6.0|fix_setup
|
||||
pyinotify-0.9.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/e3/c0/fd5b18dde17c1249658521f69598f3252f11d9d7a980c5be8619970646e1/pyinotify-0.9.6.tar.gz|pyinotify-0.9.6
|
||||
pykerberos-1.2.1-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/9a/b8/1ec56b6fa8a2e2a81420bd3d90e70b59fc83f6b857fb2c2c37accddc8be3/pykerberos-1.2.1.tar.gz|pykerberos-1.2.1
|
||||
PyKMIP-0.9.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/24/b2/258332aea85163f49a187337e8c85ee4529eb499b84fe0a6fe2d1a9c8d25/PyKMIP-0.9.1.tar.gz|PyKMIP-0.9.1
|
||||
pylxd-2.2.10-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/49/9a/eba58646721ffbff40dc41571b13c9528fdc4e26a82252318c997cdbe26a/pylxd-2.2.10.tar.gz|pylxd-2.2.10
|
||||
pyngus-2.3.0-py2-none-any.whl|zip|https://files.pythonhosted.org/packages/58/b1/336b8f64e7e4efa9b95027af71e02cd4cfacca8f919345badb852381878a/pyngus-2.3.0.zip|pyngus-2.3.0
|
||||
pyperclip-1.7.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/2d/0f/4eda562dffd085945d57c2d9a5da745cfb5228c02bc90f2c74bbac746243/pyperclip-1.7.0.tar.gz|pyperclip-1.7.0
|
||||
pyroute2-0.5.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/f6/80/16a604075345f0c253537d55e5c5282a37c61a1fc8ee0fcc42d1fd2a0739/pyroute2-0.5.6.tar.gz|pyroute2-0.5.6|fix_setup
|
||||
pyrsistent-0.15.4-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/b9/66/b2638d96a2d128b168d0dba60fdc77b7800a9b4a5340cefcc5fc4eae6295/pyrsistent-0.15.4.tar.gz|pyrsistent-0.15.4
|
||||
pyScss-1.3.4-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/1d/4a/221ae7561c8f51c4f28b2b172366ccd0820b14bb947350df82428dfce381/pyScss-1.3.4.tar.gz|pyScss-1.3.4
|
||||
pysendfile-2.0.1-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/cd/3f/4aa268afd0252f06b3b487c296a066a01ddd4222a46b7a3748599c8fc8c3/pysendfile-2.0.1.tar.gz|pysendfile-2.0.1
|
||||
pystache-0.5.4-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/d6/fd/eb8c212053addd941cc90baac307c00ac246ac3fce7166b86434c6eae963/pystache-0.5.4.tar.gz|pystache-0.5.4
|
||||
python_cinderclient-4.3.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/f1/09/760c454c5bf67509d7f8479d583a3e84411f51ec2a1942aea3741a49b090/python_cinderclient-4.3.0-py2.py3-none-any.whl
|
||||
python_consul-1.1.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/3f/d0/59bc5f1c6c4d4b498c41d8ce7052ee9e9d68be19e16038a55252018a6c4d/python_consul-1.1.0-py2.py3-none-any.whl
|
||||
python_editor-1.0.4-py2-none-any.whl|pypi|https://files.pythonhosted.org/packages/55/a0/3c0ba1c10f2ca381645dd46cb7afbb73fddc8de9f957e1f9e726a846eabc/python_editor-1.0.4-py2-none-any.whl
|
||||
python_etcd-0.4.5-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/a1/da/616a4d073642da5dd432e5289b7c1cb0963cc5dde23d1ecb8d726821ab41/python-etcd-0.4.5.tar.gz|python-etcd-0.4.5
|
||||
python_ldap-3.2.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/ea/93/596f875e003c770447f4b99267820a0c769dd2dc3ae3ed19afe460fcbad0/python-ldap-3.2.0.tar.gz|python-ldap-3.2.0
|
||||
python_memcached-1.59-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/f5/90/19d3908048f70c120ec66a39e61b92c253e834e6e895cd104ce5e46cbe53/python_memcached-1.59-py2.py3-none-any.whl
|
||||
#python_nss-1.0.1-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/6b/29/629098e34951c358b1f04f13a70b3590eb0cf2df817d945bd05c4169d71b/python-nss-1.0.1.tar.bz2|python-nss-1.0.1|fix_setup
|
||||
python_pcre-0.7-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/9d/af/61435bd163f01fe3709fca9b1f79e4978d8089ee671d2e004fc85e10de29/python-pcre-0.7.tar.gz|python-pcre-0.7|fix_setup
|
||||
python_pytun-2.3.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/52/a4/a062106c739eac79c8160fcf5779ebc84afc1c38b016ab216ed1e6da69b6/python-pytun-2.3.0.tar.gz|python-pytun-2.3.0|fix_setup
|
||||
python_qpid_proton-0.28.0-cp27-cp27mu-linux_x86_64.whl|zip|https://files.pythonhosted.org/packages/96/35/2c86d844aec1acdfe7778966994aa270fcf03f076df393003bd4fc07dfa9/python-qpid-proton-0.28.0.zip|python-qpid-proton-0.28.0|fix_setup
|
||||
python_string_utils-0.6.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/5d/13/216f2d4a71307f5a4e5782f1f59e6e8e5d6d6c00eaadf9f92aeccfbb900c/python-string-utils-0.6.0.tar.gz|python-string-utils-0.6.0|fix_setup
|
||||
pyudev-0.21.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/bc/a2/31a07829acea8e70a28c247f43fa5d981229ae0f9edfeddedf52de00709b/pyudev-0.21.0.tar.gz|pyudev-0.21.0
|
||||
PyYAML-5.1.2-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e3/e8/b3212641ee2718d556df0f23f78de8303f068fe29cdaa7a91018849582fe/PyYAML-5.1.2.tar.gz|PyYAML-5.1.2
|
||||
pyzabbix-0.7.5-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/11/ad/24e19d0cf16d05b7ee19f337f02058ee9b760649171865469ccceef83027/pyzabbix-0.7.5.tar.gz|pyzabbix-0.7.5
|
||||
qpid_python-1.36.0.post1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/2a/33/026ac50a29a85d5d54dd7784a98d624f6142cb07ce185ed268ef9bd3b6dc/qpid-python-1.36.0-1.tar.gz|qpid-python-1.36.0-1|fix_setup
|
||||
rcssmin-1.0.6-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e2/5f/852be8aa80d1c24de9b030cdb6532bc7e7a1c8461554f6edbe14335ba890/rcssmin-1.0.6.tar.gz|rcssmin-1.0.6|fix_setup
|
||||
repoze.lru-0.7-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/12/bc/595a77c4b5e204847fdf19268314ef59c85193a9dc9f83630fc459c0fee5/repoze.lru-0.7.tar.gz|repoze.lru-0.7
|
||||
requests_aws-0.1.8-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/5e/2f/4da17752036c04cf4c9af7a2da0d41ef2205043f1c61008006475aa24b8b/requests-aws-0.1.8.tar.gz|requests-aws-0.1.8
|
||||
restructuredtext_lint-1.3.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/62/76/bd8760de759fb74d7863e6935200af101cb128a7de008741a4e22341d03c/restructuredtext_lint-1.3.0.tar.gz|restructuredtext_lint-1.3.0
|
||||
retrying-1.3.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/44/ef/beae4b4ef80902f22e3af073397f079c96969c69b2c7d52a57ea9ae61c9d/retrying-1.3.3.tar.gz|retrying-1.3.3
|
||||
rfc3986-1.4.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/78/be/7b8b99fd74ff5684225f50dd0e865393d2265656ef3b4ba9eaaaffe622b8/rfc3986-1.4.0-py2.py3-none-any.whl
|
||||
rjsmin-1.1.0-cp27-cp27mu-manylinux1_x86_64.whl|pypi|https://files.pythonhosted.org/packages/c3/8e/079b7cc3a0fc9934ab05d868a00183c7aafd90b5d6138313d98ac2b9f666/rjsmin-1.1.0-cp27-cp27mu-manylinux1_x86_64.whl
|
||||
rtslib_fb-2.1.69-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/fc/1a/77a26207bdad13cc39b93d874b3a1b04e5a0b0332fb716e4d654537bacdb/rtslib-fb-2.1.69.tar.gz|rtslib-fb-2.1.69
|
||||
scandir-1.10.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/df/f5/9c052db7bd54d0cbf1bc0bb6554362bba1012d03e5888950a4f5c5dadc4e/scandir-1.10.0.tar.gz|scandir-1.10.0
|
||||
scrypt-0.8.13-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/80/3d/141eb80e754b86f6c25a2ffaf6c3af3acdb65a3e3700829a05ab0c5d965d/scrypt-0.8.13.tar.gz|scrypt-0.8.13
|
||||
SecretStorage-2.3.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/a5/a5/0830cfe34a4cfd0d1c3c8b614ede1edb2aaf999091ac8548dd19cb352e79/SecretStorage-2.3.1.tar.gz|SecretStorage-2.3.1
|
||||
setproctitle-1.1.10-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/5a/0d/dc0d2234aacba6cf1a729964383e3452c52096dc695581248b548786f2b3/setproctitle-1.1.10.tar.gz|setproctitle-1.1.10
|
||||
simplegeneric-0.8.1-py2-none-any.whl|zip|https://files.pythonhosted.org/packages/3d/57/4d9c9e3ae9a255cd4e1106bb57e24056d3d0709fc01b2e3e345898e49d5b/simplegeneric-0.8.1.zip|simplegeneric-0.8.1
|
||||
simplejson-3.16.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e3/24/c35fb1c1c315fc0fffe61ea00d3f88e85469004713dab488dee4f35b0aff/simplejson-3.16.0.tar.gz|simplejson-3.16.0
|
||||
skydive_client-0.5.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/e4/68/78a246619d9b16bb226562c155f18f798283f86db8f01a89c30b97ac7a27/skydive-client-0.5.0.tar.gz|skydive-client-0.5.0
|
||||
smmap2-2.0.5-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/55/d2/866d45e3a121ee15a1dc013824d58072fd5c7799c9c34d01378eb262ca8f/smmap2-2.0.5-py2.py3-none-any.whl
|
||||
sphinxcontrib_fulltoc-1.2.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8e/a6/d1297db9b75650681e5429e92e13df139ee6b64303ff1b2eea4ebd32c0a9/sphinxcontrib-fulltoc-1.2.0.tar.gz|sphinxcontrib-fulltoc-1.2.0
|
||||
sphinxcontrib_pecanwsme-0.10.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/75/2b/105d07f47485ecf774cd80b881c29e148182b72a3a60596abdd016c87fce/sphinxcontrib-pecanwsme-0.10.0.tar.gz|sphinxcontrib-pecanwsme-0.10.0
|
||||
SQLAlchemy-1.3.8-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/fc/49/82d64d705ced344ba458197dadab30cfa745f9650ee22260ac2b275d288c/SQLAlchemy-1.3.8.tar.gz|SQLAlchemy-1.3.8
|
||||
SQLAlchemy_Utils-0.34.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/45/61/3bdd2931e86253fa7df6445a26929fbcc9bc43ad6b27a10f991eb6ecde75/SQLAlchemy-Utils-0.34.2.tar.gz|SQLAlchemy-Utils-0.34.2
|
||||
stomp.py-4.1.22-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/52/7e/22ca617f61e0d5904e06c1ebd5d453adf30099526c0b64dca8d74fff0cad/stomp.py-4.1.22.tar.gz|stomp.py-4.1.22
|
||||
subprocess32-3.5.4-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/32/c8/564be4d12629b912ea431f1a50eb8b3b9d00f1a0b1ceff17f266be190007/subprocess32-3.5.4.tar.gz|subprocess32-3.5.4
|
||||
suds_jurko-0.6-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/bd/6f/54fbf0999a606680d27c69b1ad12dfff62768ecb9fe48524cebda6eb4423/suds-jurko-0.6.tar.bz2|suds-jurko-0.6
|
||||
systemd_python-234-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e8/a8/00ba0f605837a8f69523e6c3a4fb14675a6430c163f836540129c50b3aef/systemd-python-234.tar.gz|systemd-python-234|fix_setup
|
||||
sysv_ipc-1.0.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/08/7d/a862f3045fa191eeece23650725273f2ccaf9ac6b95443dfe4cac6508638/sysv_ipc-1.0.0.tar.gz|sysv_ipc-1.0.0|fix_setup
|
||||
Tempita-0.5.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/56/c8/8ed6eee83dbddf7b0fc64dd5d4454bc05e6ccaafff47991f73f2894d9ff4/Tempita-0.5.2.tar.gz|Tempita-0.5.2
|
||||
termcolor-1.1.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz|termcolor-1.1.0|fix_setup
|
||||
testrepository-0.0.20-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/0c/85/f495b58b2b0ac907def07385219e9747b75840fa01280f228546a4a5ad7f/testrepository-0.0.20.tar.gz|testrepository-0.0.20
|
||||
thrift-0.11.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/c6/b4/510617906f8e0c5660e7d96fbc5585113f83ad547a3989b80297ac72a74c/thrift-0.11.0.tar.gz|thrift-0.11.0
|
||||
thriftpy-0.3.9-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/f4/19/cca118cf7d2087310dbc8bd70dc7df0c1320f2652873a93d06d7ba356d4a/thriftpy-0.3.9.tar.gz|thriftpy-0.3.9
|
||||
thriftpy2-0.4.8-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/2c/23/57b00b3d5d3d0ae66d79844a39d3c3b92dde3063c901036808602137d3ab/thriftpy2-0.4.8.tar.gz|thriftpy2-0.4.8
|
||||
tinyrpc-1.0.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/21/7a/ff1a74256e1bcc04fbaa414c13a2bb79a29ac9918b25f2238592b991e3bc/tinyrpc-1.0.3.tar.gz|tinyrpc-1.0.3
|
||||
tornado-4.5.3-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e3/7b/e29ab3d51c8df66922fea216e2bddfcb6430fb29620e5165b16a216e0d3c/tornado-4.5.3.tar.gz|tornado-4.5.3
|
||||
trollius-2.2.post1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/0b/31/356ae13ad4df58f963e9954d55118f6cffdb3a903c1547973ad7bc347fb9/trollius-2.2.post1.tar.gz|trollius-2.2.post1
|
||||
ujson-1.35-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/16/c4/79f3409bc710559015464e5f49b9879430d8f87498ecdc335899732e5377/ujson-1.35.tar.gz|ujson-1.35
|
||||
unicodecsv-0.14.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/6f/a4/691ab63b17505a26096608cc309960b5a6bdf39e4ba1a793d5f9b1a53270/unicodecsv-0.14.1.tar.gz|unicodecsv-0.14.1
|
||||
uWSGI-2.0.17.1-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a2/c9/a2d5737f63cd9df4317a4acc15d1ddf4952e28398601d8d7d706c16381e0/uwsgi-2.0.17.1.tar.gz|uwsgi-2.0.17.1
|
||||
voluptuous-0.11.7-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/24/3b/fe531688c0d9e057fccc0bc9430c0a3d4b90e0d2f015326e659c2944e328/voluptuous-0.11.7.tar.gz|voluptuous-0.11.7
|
||||
warlock-1.3.3-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/c2/36/178b26a338cd6d30523246da4721b1114306f588deb813f3f503052825ee/warlock-1.3.3.tar.gz|warlock-1.3.3
|
||||
weakrefmethod-1.0.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/99/82/73a21e3eab9a1ff76d12375f7301fba5c6325b9598eed0ae5b0cf5243656/weakrefmethod-1.0.3.tar.gz|weakrefmethod-1.0.3
|
||||
websockify-0.9.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/c4/5b/16ec1e9f4fc536846d95a01a77d97da12f8042ca5cf83cdf3dd0442e881c/websockify-0.9.0.tar.gz|websockify-0.9.0
|
||||
whereto-0.4.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/80/83/371a699ce90257608592dadca400a7ecd9a2db6137d78f6f433c7c5e3197/whereto-0.4.0.tar.gz|whereto-0.4.0
|
||||
wrapt-1.11.2-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/23/84/323c2415280bc4fc880ac5050dddfb3c8062c2552b34c2e512eb4aa68f79/wrapt-1.11.2.tar.gz|wrapt-1.11.2|fix_setup
|
||||
ws4py-0.5.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/53/20/4019a739b2eefe9282d3822ef6a225250af964b117356971bd55e274193c/ws4py-0.5.1.tar.gz|ws4py-0.5.1
|
||||
WSME-0.9.3-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/d1/b6/8027248bfca3ce192bc54d46fcda4324c86c8beabe344cbb80fb57a6c868/WSME-0.9.3.tar.gz|WSME-0.9.3
|
||||
xattr-0.9.6-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/60/80/a1f35bfd3c7ffb78791b2a6a15c233584a102a20547fd96d48933ec453e7/xattr-0.9.6.tar.gz|xattr-0.9.6
|
||||
XStatic-1.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/36/78/c0ffaf14216517a14d3daa67ff24fbb60b4703e95ce1059a48fd508e6b8c/XStatic-1.0.2.tar.gz|XStatic-1.0.2
|
||||
XStatic_Angular_FileUpload-12.0.4.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/4d/fd/c3051915d2f12e8fa11f59c01162ce85e38eca15d9ec73a3d7b271b49744/XStatic-Angular-FileUpload-12.0.4.0.tar.gz|XStatic-Angular-FileUpload-12.0.4.0
|
||||
XStatic_Angular_lrdragndrop-1.0.2.4-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/80/ea/ffdde05892eabe468f22403f75299cf5d991f0af4f1400bebbf3af04bc9a/XStatic_Angular_lrdragndrop-1.0.2.4-py2.py3-none-any.whl
|
||||
XStatic_Angular_Schema_Form-0.8.13.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/57/71/ceea2c0a72e2ee2d316d6ab1c06b21faa9f5cbc4b36a4127d7847b7079c5/XStatic-Angular-Schema-Form-0.8.13.0.tar.gz|XStatic-Angular-Schema-Form-0.8.13.0
|
||||
XStatic_Bootstrap_Datepicker-1.3.1.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/91/4f/832f14478e714815bb3d44d01dfe8dbe19ccf9f823e0bc7ac1a8cf7fa6b3/XStatic-Bootstrap-Datepicker-1.3.1.0.tar.gz|XStatic-Bootstrap-Datepicker-1.3.1.0
|
||||
XStatic_Hogan-2.0.0.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/21/fe/37d5c8247f24738e7e368d27ebf945de1ea29fbc3112ac5e75b1b7f1d0c9/XStatic-Hogan-2.0.0.2.tar.gz|XStatic-Hogan-2.0.0.2
|
||||
XStatic_Jasmine-2.4.1.2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/05/43/ceac7def3b6eaf82b6f593e3db2b03a9693a7b002b569e664e382aecddbc/XStatic_Jasmine-2.4.1.2-py2.py3-none-any.whl
|
||||
XStatic_jQuery-1.12.4.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/67/f1/c18c14fc4aab386e4aba587c5d10c268de222c75bf5e271b6f68a2ea6e77/XStatic-jQuery-1.12.4.1.tar.gz|XStatic-jQuery-1.12.4.1
|
||||
XStatic_JQuery_Migrate-1.2.1.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/7c/fc/edbfcb4574ec3cf0b68a0613dd1904c9139e3bf6dede792d2e7edcf13023/XStatic-JQuery-Migrate-1.2.1.1.tar.gz|XStatic-JQuery-Migrate-1.2.1.1
|
||||
XStatic_JQuery.quicksearch-2.0.3.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/ea/ab/f934d06a78ce2c6bb594e9a426f6966b3192c4c279467c9898be6fd284d3/XStatic-JQuery.quicksearch-2.0.3.1.tar.gz|XStatic-JQuery.quicksearch-2.0.3.1
|
||||
XStatic_JQuery.TableSorter-2.14.5.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/c1/6c/d6b0807906af90536e793a3b23cca557869fa5a27156639f0029de8b1f1f/XStatic-JQuery.TableSorter-2.14.5.1.tar.gz|XStatic-JQuery.TableSorter-2.14.5.1
|
||||
XStatic_jquery_ui-1.12.1.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/e6/5a/883b22dad1d3e01708312d71c5bc63d543d66cef9b448c1cf85379d64fb3/XStatic-jquery-ui-1.12.1.1.tar.gz|XStatic-jquery-ui-1.12.1.1
|
||||
XStatic_mdi-1.6.50.2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/73/49/13b9f7ce9fbcc7fabe086b7ac1b056118cbd4c9abf185e01cc4a54631136/XStatic_mdi-1.6.50.2-py2.py3-none-any.whl
|
||||
XStatic_objectpath-1.2.1.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/23/6c/56de25d9d3be430e7de2fcf4baac10279dad78d7b16cbda339cf014c2fe5/XStatic-objectpath-1.2.1.0.tar.gz|XStatic-objectpath-1.2.1.0
|
||||
XStatic_Rickshaw-1.5.0.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/45/c6/39aa4d02ea96b04ff372d1e3558587155790b1c5444855a97b89c255be38/XStatic-Rickshaw-1.5.0.0.tar.gz|XStatic-Rickshaw-1.5.0.0
|
||||
XStatic_Spin-1.2.5.2-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/af/21/cca7f0b7abfe008cdd03dd4c4255aad3087f4a892a010c0f6f1452d7344b/XStatic-Spin-1.2.5.2.tar.gz|XStatic-Spin-1.2.5.2
|
||||
XStatic_term.js-0.0.7.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/63/7a/7bfec29f5f28fdda7170ebbbb2204aeb1d33d6050f3476a807590de06434/XStatic-term.js-0.0.7.0.tar.gz|XStatic-term.js-0.0.7.0
|
||||
XStatic_tv4-1.2.7.0-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/2b/26/b07115af27b339c861b8c9a775a621524b421c898e26e015880dfb888c49/XStatic-tv4-1.2.7.0.tar.gz|XStatic-tv4-1.2.7.0
|
||||
xvfbwrapper-0.2.9-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/57/b6/4920eabda9b49630dea58745e79f9919aba6408d460afe758bf6e9b21a04/xvfbwrapper-0.2.9.tar.gz|xvfbwrapper-0.2.9
|
||||
yappi-1.0-cp27-cp27mu-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/d2/92/7cd637a19fa2a10c0e55a44f8b36bcb83f0e1943ba8f1fb5edb15c819f2e/yappi-1.0.tar.gz|yappi-1.0
|
||||
zVMCloudConnector-1.4.1-py2-none-any.whl|tar|https://files.pythonhosted.org/packages/11/92/9f704de9759816e7b9897b9fb41285b421498b4642551b6fbcccd2850008/zVMCloudConnector-1.4.1.tar.gz|zVMCloudConnector-1.4.1
|
180
build-tools/build-wheels/debian/stable-wheels.cfg
Normal file
180
build-tools/build-wheels/debian/stable-wheels.cfg
Normal file
@ -0,0 +1,180 @@
|
||||
#
|
||||
# git: wheelname|git|git-source|basedir|branch
|
||||
# tar: wheelname|tar|wget-source|basedir
|
||||
# pypi: wheelname|pypi|wget-source
|
||||
# zip: wheelname|zip|wget-source|basedir
|
||||
#
|
||||
# If fix_setup must be called, add |fix_setup at the end of the line
|
||||
#
|
||||
abclient-0.2.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/49/eb/091b02c1e36d68927adfb746706e2c80f7e7bfb3f16e3cbcfec2632118ab/abclient-0.2.3.tar.gz|abclient-0.2.3
|
||||
alembic-1.4.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/60/1e/cabc75a189de0fbb2841d0975243e59bde8b7822bacbb95008ac6fe9ad47/alembic-1.4.2.tar.gz|alembic-1.4.2
|
||||
amqplib-1.0.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/75/b7/8c2429bf8d92354a0118614f9a4d15e53bc69ebedce534284111de5a0102/amqplib-1.0.2.tgz|amqplib-1.0.2
|
||||
anyjson-0.3.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/c3/4d/d4089e1a3dd25b46bebdb55a992b0797cff657b4477bc32ce28038fdecbc/anyjson-0.3.3.tar.gz|anyjson-0.3.3
|
||||
backports.ssl_match_hostname-3.7.0.1-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ff/2b/8265224812912bc5b7a607c44bf7b027554e1b9775e9ee0de8032e3de4b2/backports.ssl_match_hostname-3.7.0.1.tar.gz|backports.ssl_match_hostname-3.7.0.1|fix_setup
|
||||
bottle-0.12.18-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/e9/39/2bf3a1fd963e749cdbe5036a184eda8c37d8af25d1297d94b8b7aeec17c4/bottle-0.12.18-py3-none-any.whl
|
||||
cassandra_driver-3.23.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/90/d7/d68083117bf50941870a795150f3261c5270e74c2d57ca3af0bd8423ed74/cassandra-driver-3.23.0.tar.gz|cassandra-driver-3.23.0
|
||||
cmd2-0.8.9-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/e9/40/a71caa2aaff10c73612a7106e2d35f693e85b8cf6e37ab0774274bca3cf9/cmd2-0.8.9-py2.py3-none-any.whl
|
||||
construct-2.8.22-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e5/c6/3e3aeef38bb0c27364af3d21493d9690c7c3925f298559bca3c48b7c9419/construct-2.8.22.tar.gz|construct-2.8.22
|
||||
crc16-0.1.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a6/e0/70a44c4385f2b33df82e518005aae16b5c1feaf082c73c0acebe3426fc0a/crc16-0.1.1.tar.gz|crc16-0.1.1|fix_setup
|
||||
demjson-2.2.4-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/96/67/6db789e2533158963d4af689f961b644ddd9200615b8ce92d6cad695c65a/demjson-2.2.4.tar.gz|demjson-2.2.4|fix_setup
|
||||
django_debreach-2.0.1-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/2a/92/8c363cf5d1ee33d4c3b999b41c127c5cd3c64d4c20aa47bdfb6c386c9309/django_debreach-2.0.1-py3-none-any.whl
|
||||
django_floppyforms-1.8.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/a9/d2/498b883ac309b56b70c26877974bd50927615dd3f6433f5463e2668b1128/django_floppyforms-1.8.0-py2.py3-none-any.whl
|
||||
django_pyscss-2.0.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/4b/7f/d771802305184aac6010826f60a0b2ecaa3f57d19ab0e405f0c8db07e809/django-pyscss-2.0.2.tar.gz|django-pyscss-2.0.2
|
||||
docopt-0.6.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/a2/55/8f8cab2afd404cf578136ef2cc5dfb50baa1761b68c9da1fb1e4eed343c9/docopt-0.6.2.tar.gz|docopt-0.6.2
|
||||
dogpile.cache-0.9.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ac/6a/9ac405686a94b7f009a20a50070a5786b0e1aedc707b88d40d0c4b51a82e/dogpile.cache-0.9.0.tar.gz|dogpile.cache-0.9.0
|
||||
enum_compat-0.0.3-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/55/ae/467bc4509246283bb59746e21a1a2f5a8aecbef56b1fa6eaca78cd438c8b/enum_compat-0.0.3-py3-none-any.whl
|
||||
etcd3-0.10.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/09/f1/93603a26daf7a993a0acbbcfd32afce8b2fdf30a765d5651571ab635969b/etcd3-0.10.0.tar.gz|etcd3-0.10.0
|
||||
exabgp-4.2.6-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/b6/36/7270c8e4b5b0ddba79301f5bbf206ce4b76247957169162b428e2695efa9/exabgp-4.2.6.tar.gz|exabgp-4.2.6
|
||||
flask_keystone-0.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/1f/ca/3938de8c5f4a3d1c5dd4278bedb9d31d79816feba4d088293c620a366fb1/flask_keystone-0.2.tar.gz|flask_keystone-0.2
|
||||
flask_oslolog-0.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/a7/62/fec02ce761b548b1289680bb1be1aa0bce2b2c4017d5b31bd6c67c78aef9/flask_oslolog-0.1.tar.gz|flask_oslolog-0.1
|
||||
fortiosclient-0.0.3-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e9/aa/b2c0705d5e52c8d9af35422d940800b49c562758fbdad3179a6fbf6e92f5/fortiosclient-0.0.3.tar.gz|fortiosclient-0.0.3
|
||||
frozendict-1.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/4e/55/a12ded2c426a4d2bee73f88304c9c08ebbdbadb82569ebdd6a0c007cfd08/frozendict-1.2.tar.gz|frozendict-1.2
|
||||
future-0.18.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/45/0b/38b06fd9b92dc2b68d58b75f900e97884c45bedd2ff83203d933cf5851c9/future-0.18.2.tar.gz|future-0.18.2
|
||||
googleapis_common_protos-1.51.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/05/46/168fd780f594a4d61122f7f3dc0561686084319ad73b4febbf02ae8b32cf/googleapis-common-protos-1.51.0.tar.gz|googleapis-common-protos-1.51.0
|
||||
happybase-1.2.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/d1/9c/f5f7bdb5439cda2b7da4e20ac24ec0e2455fd68aade8397f211d2994c39d/happybase-1.2.0.tar.gz|happybase-1.2.0
|
||||
hiredis-1.0.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/7f/5c/62e5c6b811b4dcef4125b4a01f76db82c496d79299dd67053b8f9c0732c0/hiredis-1.0.1.tar.gz|hiredis-1.0.1
|
||||
httplib2-0.17.2-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/dd/a6/e3d8ae2c5b3a89de9a6b5e1e9396ce41432e08feafe25c37c4dc6b49d79d/httplib2-0.17.2-py3-none-any.whl
|
||||
ifaddr-0.1.6-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/9f/54/d92bda685093ebc70e2057abfa83ef1b3fb0ae2b6357262a3e19dfe96bb8/ifaddr-0.1.6.tar.gz|ifaddr-0.1.6
|
||||
itsdangerous-1.1.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/76/ae/44b03b253d6fade317f32c24d100b3b35c2239807046a4c953c7b89fa49e/itsdangerous-1.1.0-py2.py3-none-any.whl
|
||||
jaeger_client-4.3.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/2b/75/17a937a61135671cebc175ab5c299dc0f7477042469482fd9a6f91262c68/jaeger-client-4.3.0.tar.gz|jaeger-client-4.3.0
|
||||
jsonpath_rw-1.4.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/71/7c/45001b1f19af8c4478489fbae4fc657b21c4c669d7a5a036a86882581d85/jsonpath-rw-1.4.0.tar.gz|jsonpath-rw-1.4.0
|
||||
krest-1.3.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/fb/d2/9dbbd3a76f2385041720a0eb51ddab676e688fa8bee8a1489470839616cf/krest-1.3.1.tar.gz|krest-1.3.1
|
||||
libvirt_python-7.0.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/ee/32/f8f89f58e86ffd0d384d1864bbcefc1894efe5132dbc050489bd7555a6d6/libvirt-python-7.0.0.tar.gz|libvirt-python-7.0.0|fix_setup
|
||||
logutils-0.3.5-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/49/b2/b57450889bf73da26027f8b995fd5fbfab258ec24ef967e4c1892f7cb121/logutils-0.3.5.tar.gz|logutils-0.3.5|fix_setup
|
||||
lz4-0.9.0-cp39-cp39-linux_x86_64.whl|git|https://github.com/python-lz4/python-lz4|python-lz4|v0.9.0
|
||||
Mako-1.1.2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/50/78/f6ade1e18aebda570eed33b7c534378d9659351cadce2fcbc7b31be5f615/Mako-1.1.2-py2.py3-none-any.whl
|
||||
marathon-0.12.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/41/66/814432693297dfb076958ae5ac781e3a88fd70d335473a57f4f2c6329515/marathon-0.12.0-py2.py3-none-any.whl
|
||||
MarkupSafe-1.1.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/b9/2e/64db92e53b86efccfaea71321f597fa2e1b2bd3853d8ce658568f7a13094/MarkupSafe-1.1.1.tar.gz|MarkupSafe-1.1.1
|
||||
migrate-0.3.8-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ce/31/1a4cbf8dc0536c55f41072e8ea37b3df1e412262dc731c57e5bb099eb9b2/migrate-0.3.8.tar.gz|migrate-0.3.8
|
||||
mox-0.5.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/0c/a1/64740c638cc5fae807022368f4141700518ee343b53eb3e90bf3cc15a4d4/mox-0.5.3.tar.gz|mox-0.5.3|fix_setup
|
||||
mpmath-1.1.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ca/63/3384ebb3b51af9610086b23ea976e6d27d6d97bf140a76a365bd77a3eb32/mpmath-1.1.0.tar.gz|mpmath-1.1.0|fix_setup
|
||||
msgpack_python-0.4.8-cp39-cp39-linux_x86_64.whl|git|https://github.com/msgpack/msgpack-python.git|msgpack-python|0.4.8
|
||||
munch-2.5.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/cc/ab/85d8da5c9a45e072301beb37ad7f833cd344e04c817d97e0cc75681d248f/munch-2.5.0-py2.py3-none-any.whl
|
||||
ndg_httpsclient-0.5.1-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/fb/67/c2f508c00ed2a6911541494504b7cac16fe0b0473912568df65fd1801132/ndg_httpsclient-0.5.1-py3-none-any.whl
|
||||
netifaces-0.10.9-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/0d/18/fd6e9c71a35b67a73160ec80a49da63d1eed2d2055054cc2995714949132/netifaces-0.10.9.tar.gz|netifaces-0.10.9
|
||||
networking_sfc-8.0.0.0b2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/6a/a8/0e9bdd1f87dfb50682f23a01f590530ec8fa715e51127cf9f58d1905886c/networking_sfc-8.0.0.0b2-py2.py3-none-any.whl
|
||||
networkx-2.2-py2.py3-none-any.whl|zip|https://files.pythonhosted.org/packages/f3/f4/7e20ef40b118478191cec0b58c3192f822cace858c19505c7670961b76b2/networkx-2.2.zip|networkx-2.2
|
||||
neutron_lib-2.3.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/83/52/805c061a96efca3c70c91d93fa8f7f555a7f86ba955ab9e4d1b41399459f/neutron_lib-2.3.0-py3-none-any.whl
|
||||
nodeenv-1.3.5-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/08/43/86ff33286c83f7b5e8903c32db01fe122c5e8a9d8dc1067dcaa9be54a033/nodeenv-1.3.5-py2.py3-none-any.whl
|
||||
nose_exclude-0.5.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/63/cf/90c4be56bf11b7bc8801086d9445baf731aa36b8e8fc5791731e8e604dcd/nose-exclude-0.5.0.tar.gz|nose-exclude-0.5.0
|
||||
nosehtmloutput-0.0.7-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/e0/5d/2bb521a8ccb0222bd94ed557645955d95ba6798df6b3b4bdc2c31dec4f7c/nosehtmloutput-0.0.7-py2.py3-none-any.whl
|
||||
openshift-0.8.6-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/73/ed/c92c0ba23b6c4c8e5542151a1b89cb8ff01f68a72fe68f6c95a28d885ebe/openshift-0.8.6.tar.gz|openshift-0.8.6
|
||||
openstack.nose_plugin-0.11-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/bc/83/e7c9b9297e1a501d2c2617f98d6176199570e8ee32f0e72669c8852c6c81/openstack.nose_plugin-0.11.tar.gz|openstack.nose_plugin-0.11
|
||||
opentracing-2.3.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e4/a8/df5285f42cd07782409d0ae835785fae6e2a0f7e8b0036ea302f1422fd25/opentracing-2.3.0.tar.gz|opentracing-2.3.0
|
||||
ovs-2.11.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/81/06/387b2159ac073de95e484aa6e2f108a232cd906e350307168843061f899f/ovs-2.11.0.tar.gz|ovs-2.11.0
|
||||
panko-5.0.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/a9/89/d666e0889d869e41c9b7f87a0a34858b2520782b82e025da84c98e0db8f6/panko-5.0.0.tar.gz|panko-5.0.0
|
||||
pathlib-1.0.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ac/aa/9b065a76b9af472437a0059f77e8f962fe350438b927cb80184c32f075eb/pathlib-1.0.1.tar.gz|pathlib-1.0.1|fix_setup
|
||||
pecan-1.3.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/93/98/889d7615595e894f4f7e4c17d4008c822c8e39e650c8ab390cc6c39b99c4/pecan-1.3.3.tar.gz|pecan-1.3.3
|
||||
pifpaf-2.4.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/66/12/ed1533c0b31647ea9fb879b5ad239336ad98628227d0b90d3c7157ffb3fb/pifpaf-2.4.0-py2.py3-none-any.whl
|
||||
pika_pool-0.1.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/ec/48/50c8f02a3eef4cb824bec50661ec1713040402cc1b2a38954dc977a59c23/pika-pool-0.1.3.tar.gz|pika-pool-0.1.3
|
||||
Pint-0.9-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/15/9d/bf177ebbc57d25e9e296addc14a1303d1e34d7964af5df428a8332349c42/Pint-0.9-py2.py3-none-any.whl
|
||||
ply-3.11-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/a3/58/35da89ee790598a0700ea49b2a66594140f44dec458c07e8e3d4979137fc/ply-3.11-py2.py3-none-any.whl
|
||||
positional-1.1.2-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8c/16/64a4fa0967c486380468dca18867d22ac1c17bba06349e31ace77c7757f7/positional-1.1.2.tar.gz|positional-1.1.2
|
||||
prettytable-0.7.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e0/a1/36203205f77ccf98f3c6cf17cf068c972e6458d7e58509ca66da949ca347/prettytable-0.7.2.tar.gz|prettytable-0.7.2
|
||||
proboscis-1.2.6.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/3c/c8/c187818ab8d0faecdc3c16c1e0b2e522f3b38570f0fb91dcae21662019d0/proboscis-1.2.6.0.tar.gz|proboscis-1.2.6.0
|
||||
psutil-5.7.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/c4/b8/3512f0e93e0db23a71d82485ba256071ebef99b227351f0f5540f744af41/psutil-5.7.0.tar.gz|psutil-5.7.0
|
||||
psycopg2-2.8.5-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a8/8f/1c5690eebf148d1d1554fc00ccf9101e134636553dbb75bdfef4f85d7647/psycopg2-2.8.5.tar.gz|psycopg2-2.8.5
|
||||
PuLP-2.1-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/41/34/757c88c320f80ce602199603afe63aed1e0bc11180b9a9fb6018fb2ce7ef/PuLP-2.1-py3-none-any.whl
|
||||
pycparser-2.20-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/ae/e7/d9c3a176ca4b02024debf82342dab36efadfc5776f9c8db077e8f6e71821/pycparser-2.20-py2.py3-none-any.whl
|
||||
pycrypto-2.6.1-cp39-cp39-linux_x86_64.whl|git|https://github.com/dlitz/pycrypto|pycrypto|v2.6.1|fix_setup
|
||||
pycryptodomex-3.9.7-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/7f/3c/80cfaec41c3a9d0f524fe29bca9ab22d02ac84b5bfd6e22ade97d405bdba/pycryptodomex-3.9.7.tar.gz|pycryptodomex-3.9.7
|
||||
pydot-1.4.1-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/33/d1/b1479a770f66d962f545c2101630ce1d5592d90cb4f083d38862e93d16d2/pydot-1.4.1-py2.py3-none-any.whl
|
||||
pydotplus-2.0.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/60/bf/62567830b700d9f6930e9ab6831d6ba256f7b0b730acb37278b0ccdffacf/pydotplus-2.0.2.tar.gz|pydotplus-2.0.2
|
||||
pyeclib-1.6.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/aa/d6/ca6bba5e66fc7a9810a995b17a3675492da2bec405806d8ac3db18cfd93b/pyeclib-1.6.0.tar.gz|pyeclib-1.6.0|fix_setup
|
||||
pyinotify-0.9.6-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e3/c0/fd5b18dde17c1249658521f69598f3252f11d9d7a980c5be8619970646e1/pyinotify-0.9.6.tar.gz|pyinotify-0.9.6
|
||||
pykerberos-1.2.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/9a/b8/1ec56b6fa8a2e2a81420bd3d90e70b59fc83f6b857fb2c2c37accddc8be3/pykerberos-1.2.1.tar.gz|pykerberos-1.2.1
|
||||
PyKMIP-0.10.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/f8/3e/e343bb9c2feb2a793affd052cb0da62326a021457a07d59251f771b523e7/PyKMIP-0.10.0.tar.gz|PyKMIP-0.10.0
|
||||
pylxd-2.2.10-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/49/9a/eba58646721ffbff40dc41571b13c9528fdc4e26a82252318c997cdbe26a/pylxd-2.2.10.tar.gz|pylxd-2.2.10
|
||||
pyngus-2.3.0-py3-none-any.whl|zip|https://files.pythonhosted.org/packages/58/b1/336b8f64e7e4efa9b95027af71e02cd4cfacca8f919345badb852381878a/pyngus-2.3.0.zip|pyngus-2.3.0
|
||||
pyperclip-1.8.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/f6/5b/55866e1cde0f86f5eec59dab5de8a66628cb0d53da74b8dbc15ad8dabda3/pyperclip-1.8.0.tar.gz|pyperclip-1.8.0
|
||||
pyroute2-0.5.11-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/00/5c/600b3fa746da0c857e1775b9cf0861eb8aaaec67c42352bb82f90c77e6fc/pyroute2-0.5.11.tar.gz|pyroute2-0.5.11
|
||||
pyrsistent-0.16.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/9f/0d/cbca4d0bbc5671822a59f270e4ce3f2195f8a899c97d0d5abb81b191efb5/pyrsistent-0.16.0.tar.gz|pyrsistent-0.16.0
|
||||
pyScss-1.3.7-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e6/0d/6b52a5211121b870cc0c4c908b689fd460630b01a9e501a534db78e67bad/pyScss-1.3.7.tar.gz|pyScss-1.3.7
|
||||
pysendfile-2.0.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/cd/3f/4aa268afd0252f06b3b487c296a066a01ddd4222a46b7a3748599c8fc8c3/pysendfile-2.0.1.tar.gz|pysendfile-2.0.1
|
||||
pystache-0.5.4-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/d6/fd/eb8c212053addd941cc90baac307c00ac246ac3fce7166b86434c6eae963/pystache-0.5.4.tar.gz|pystache-0.5.4
|
||||
python_barbicanclient-4.10.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/93/bf/b254f88d3c1a50212609d44ff8798e64f11df28011ead93161a2390cd4a2/python_barbicanclient-4.10.0-py3-none-any.whl
|
||||
python_cinderclient-7.0.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/64/8f/c675ad3f12d52739948b299607285a56d0a1e7d1bcc72ceed1f625a38fff/python_cinderclient-7.0.0-py3-none-any.whl
|
||||
python_consul-1.1.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/3f/d0/59bc5f1c6c4d4b498c41d8ce7052ee9e9d68be19e16038a55252018a6c4d/python_consul-1.1.0-py2.py3-none-any.whl
|
||||
python_editor-1.0.4-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/c6/d3/201fc3abe391bbae6606e6f1d598c15d367033332bd54352b12f35513717/python_editor-1.0.4-py3-none-any.whl
|
||||
python_etcd-0.4.5-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/a1/da/616a4d073642da5dd432e5289b7c1cb0963cc5dde23d1ecb8d726821ab41/python-etcd-0.4.5.tar.gz|python-etcd-0.4.5
|
||||
python_json_logger-0.1.11-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/80/9d/1c3393a6067716e04e6fcef95104c8426d262b4adaf18d7aa2470eab028d/python-json-logger-0.1.11.tar.gz|python-json-logger-0.1.11
|
||||
python_ldap-3.2.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/ea/93/596f875e003c770447f4b99267820a0c769dd2dc3ae3ed19afe460fcbad0/python-ldap-3.2.0.tar.gz|python-ldap-3.2.0
|
||||
python_memcached-1.59-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/f5/90/19d3908048f70c120ec66a39e61b92c253e834e6e895cd104ce5e46cbe53/python_memcached-1.59-py2.py3-none-any.whl
|
||||
python_neutronclient-7.1.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/e2/b9/2680f60f679e3d5099274e966a68d0c45e2387aa53c8754c7f120838aeb4/python_neutronclient-7.1.0-py3-none-any.whl
|
||||
#python_nss-1.0.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/6b/29/629098e34951c358b1f04f13a70b3590eb0cf2df817d945bd05c4169d71b/python-nss-1.0.1.tar.bz2|python-nss-1.0.1|fix_setup
|
||||
python_pcre-0.7-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/9d/af/61435bd163f01fe3709fca9b1f79e4978d8089ee671d2e004fc85e10de29/python-pcre-0.7.tar.gz|python-pcre-0.7|fix_setup
|
||||
python_pytun-2.3.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/52/a4/a062106c739eac79c8160fcf5779ebc84afc1c38b016ab216ed1e6da69b6/python-pytun-2.3.0.tar.gz|python-pytun-2.3.0|fix_setup
|
||||
python_string_utils-0.6.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/5d/13/216f2d4a71307f5a4e5782f1f59e6e8e5d6d6c00eaadf9f92aeccfbb900c/python-string-utils-0.6.0.tar.gz|python-string-utils-0.6.0|fix_setup
|
||||
pyudev-0.22.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/72/c8/4660d815a79b1d42c409012aaa10ebd6b07a47529b4cb6880f27a24bd646/pyudev-0.22.0.tar.gz|pyudev-0.22.0
|
||||
PyYAML-5.3.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/64/c2/b80047c7ac2478f9501676c988a5411ed5572f35d1beff9cae07d321512c/PyYAML-5.3.1.tar.gz|PyYAML-5.3.1
|
||||
pyzabbix-0.7.5-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/11/ad/24e19d0cf16d05b7ee19f337f02058ee9b760649171865469ccceef83027/pyzabbix-0.7.5.tar.gz|pyzabbix-0.7.5
|
||||
rcssmin-1.0.6-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e2/5f/852be8aa80d1c24de9b030cdb6532bc7e7a1c8461554f6edbe14335ba890/rcssmin-1.0.6.tar.gz|rcssmin-1.0.6|fix_setup
|
||||
repoze.lru-0.7-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/12/bc/595a77c4b5e204847fdf19268314ef59c85193a9dc9f83630fc459c0fee5/repoze.lru-0.7.tar.gz|repoze.lru-0.7
|
||||
requests_aws-0.1.8-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/5e/2f/4da17752036c04cf4c9af7a2da0d41ef2205043f1c61008006475aa24b8b/requests-aws-0.1.8.tar.gz|requests-aws-0.1.8
|
||||
restructuredtext_lint-1.3.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/62/76/bd8760de759fb74d7863e6935200af101cb128a7de008741a4e22341d03c/restructuredtext_lint-1.3.0.tar.gz|restructuredtext_lint-1.3.0
|
||||
retrying-1.3.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/44/ef/beae4b4ef80902f22e3af073397f079c96969c69b2c7d52a57ea9ae61c9d/retrying-1.3.3.tar.gz|retrying-1.3.3
|
||||
rfc3986-1.4.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/78/be/7b8b99fd74ff5684225f50dd0e865393d2265656ef3b4ba9eaaaffe622b8/rfc3986-1.4.0-py2.py3-none-any.whl
|
||||
rjsmin-1.1.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a2/ba/0fa30f7ec949714b8397e80ee2057d1a7e77b3a9f1b94c1ece93586cf34f/rjsmin-1.1.0.tar.gz|rjsmin-1.1.0
|
||||
rtslib_fb-2.1.71-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/9e/1b/c26bc038888b1e6042d35ec97599cef05181fb6a7a7ecdbb0c041c3f50ea/rtslib-fb-2.1.71.tar.gz|rtslib-fb-2.1.71|
|
||||
scandir-1.10.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/df/f5/9c052db7bd54d0cbf1bc0bb6554362bba1012d03e5888950a4f5c5dadc4e/scandir-1.10.0.tar.gz|scandir-1.10.0
|
||||
scrypt-0.8.13-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/80/3d/141eb80e754b86f6c25a2ffaf6c3af3acdb65a3e3700829a05ab0c5d965d/scrypt-0.8.13.tar.gz|scrypt-0.8.13
|
||||
SecretStorage-2.3.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/a5/a5/0830cfe34a4cfd0d1c3c8b614ede1edb2aaf999091ac8548dd19cb352e79/SecretStorage-2.3.1.tar.gz|SecretStorage-2.3.1
|
||||
setproctitle-1.1.10-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/5a/0d/dc0d2234aacba6cf1a729964383e3452c52096dc695581248b548786f2b3/setproctitle-1.1.10.tar.gz|setproctitle-1.1.10
|
||||
simplegeneric-0.8.1-py3-none-any.whl|zip|https://files.pythonhosted.org/packages/3d/57/4d9c9e3ae9a255cd4e1106bb57e24056d3d0709fc01b2e3e345898e49d5b/simplegeneric-0.8.1.zip|simplegeneric-0.8.1
|
||||
simplejson-3.17.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/98/87/a7b98aa9256c8843f92878966dc3d8d914c14aad97e2c5ce4798d5743e07/simplejson-3.17.0.tar.gz|simplejson-3.17.0
|
||||
skydive_client-0.7.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/98/86/62925511c6282add4e339639fc5a9e22fd0dc95783b7627fd56bf45a32bf/skydive_client-0.7.0-py3-none-any.whl
|
||||
smmap-3.0.4-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/b0/9a/4d409a6234eb940e6a78dfdfc66156e7522262f5f2fecca07dc55915952d/smmap-3.0.4-py2.py3-none-any.whl
|
||||
sphinxcontrib_fulltoc-1.2.0-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8e/a6/d1297db9b75650681e5429e92e13df139ee6b64303ff1b2eea4ebd32c0a9/sphinxcontrib-fulltoc-1.2.0.tar.gz|sphinxcontrib-fulltoc-1.2.0
|
||||
sphinxcontrib_pecanwsme-0.10.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/75/2b/105d07f47485ecf774cd80b881c29e148182b72a3a60596abdd016c87fce/sphinxcontrib-pecanwsme-0.10.0.tar.gz|sphinxcontrib-pecanwsme-0.10.0
|
||||
SQLAlchemy-1.3.16-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/7f/4b/adfb1f03da7f50db054a5b728d32dbfae8937754cfa159efa0216a3758d1/SQLAlchemy-1.3.16.tar.gz|SQLAlchemy-1.3.16
|
||||
SQLAlchemy_Utils-0.36.3-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/aa/24/68937e9b5c757f62795467e2f02a8f463a3a1fd3d08bd32a6b0583ba3dbf/SQLAlchemy-Utils-0.36.3.tar.gz|SQLAlchemy-Utils-0.36.3
|
||||
stomp.py-6.0.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/d7/a0/a67e46ec1e63f2e78497e7331092eeb2ce4b69738d80a8210122e7a000a9/stomp.py-6.0.0-py3-none-any.whl
|
||||
subprocess32-3.5.4-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/32/c8/564be4d12629b912ea431f1a50eb8b3b9d00f1a0b1ceff17f266be190007/subprocess32-3.5.4.tar.gz|subprocess32-3.5.4
|
||||
suds_jurko-0.6-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/bd/6f/54fbf0999a606680d27c69b1ad12dfff62768ecb9fe48524cebda6eb4423/suds-jurko-0.6.tar.bz2|suds-jurko-0.6
|
||||
systemd_python-234-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/e8/a8/00ba0f605837a8f69523e6c3a4fb14675a6430c163f836540129c50b3aef/systemd-python-234.tar.gz|systemd-python-234|fix_setup
|
||||
sysv_ipc-1.0.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/57/8a/9bbb064566320cd66c6e32c35db76d43932d7b94348f0c4c1e74d03ec261/sysv_ipc-1.0.1.tar.gz|sysv_ipc-1.0.1|fix_setup
|
||||
tabulate-0.8.7-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/c4/f4/770ae9385990f5a19a91431163d262182d3203662ea2b5739d0fcfc080f1/tabulate-0.8.7-py3-none-any.whl
|
||||
tempest-24.0.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/f0/eb/d3fb2cdb72c20caa7a4e0af2c60176ce82e120e99ce7e5a62a386faae89c/tempest-24.0.0-py3-none-any.whl
|
||||
Tempita-0.5.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/56/c8/8ed6eee83dbddf7b0fc64dd5d4454bc05e6ccaafff47991f73f2894d9ff4/Tempita-0.5.2.tar.gz|Tempita-0.5.2
|
||||
termcolor-1.1.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/8a/48/a76be51647d0eb9f10e2a4511bf3ffb8cc1e6b14e9e4fab46173aa79f981/termcolor-1.1.0.tar.gz|termcolor-1.1.0|fix_setup
|
||||
testrepository-0.0.20-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/0c/85/f495b58b2b0ac907def07385219e9747b75840fa01280f228546a4a5ad7f/testrepository-0.0.20.tar.gz|testrepository-0.0.20
|
||||
thrift-0.13.0-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/97/1e/3284d19d7be99305eda145b8aa46b0c33244e4a496ec66440dac19f8274d/thrift-0.13.0.tar.gz|thrift-0.13.0
|
||||
thriftpy2-0.4.11-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a9/f0/9bf08e6b5983aa6a6103818da21eadfaea1ad99ec9882be3e75a30e8e9ff/thriftpy2-0.4.11.tar.gz|thriftpy2-0.4.11
|
||||
tinyrpc-1.0.4-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/9d/91/c639ba014aada92446516c5fc4b04f2cee3539ab2d0758a6a87a6da973cb/tinyrpc-1.0.4.tar.gz|tinyrpc-1.0.4
|
||||
tornado-6.0.4-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/95/84/119a46d494f008969bf0c775cb2c6b3579d3c4cc1bb1b41a022aa93ee242/tornado-6.0.4.tar.gz|tornado-6.0.4
|
||||
trollius-2.2.post1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/0b/31/356ae13ad4df58f963e9954d55118f6cffdb3a903c1547973ad7bc347fb9/trollius-2.2.post1.tar.gz|trollius-2.2.post1
|
||||
ujson-2.0.3-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/50/d7/dce3fc97329639bba9c8b3cdadaa51ae2757c9402d4b43ac5feb8b624792/ujson-2.0.3.tar.gz|ujson-2.0.3
|
||||
unicodecsv-0.14.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/6f/a4/691ab63b17505a26096608cc309960b5a6bdf39e4ba1a793d5f9b1a53270/unicodecsv-0.14.1.tar.gz|unicodecsv-0.14.1
|
||||
uWSGI-2.0.17.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/a2/c9/a2d5737f63cd9df4317a4acc15d1ddf4952e28398601d8d7d706c16381e0/uwsgi-2.0.17.1.tar.gz|uwsgi-2.0.17.1
|
||||
voluptuous-0.11.7-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/24/3b/fe531688c0d9e057fccc0bc9430c0a3d4b90e0d2f015326e659c2944e328/voluptuous-0.11.7.tar.gz|voluptuous-0.11.7
|
||||
warlock-1.3.3-py2.py3-none-any.whl|tar|https://files.pythonhosted.org/packages/c2/36/178b26a338cd6d30523246da4721b1114306f588deb813f3f503052825ee/warlock-1.3.3.tar.gz|warlock-1.3.3
|
||||
weakrefmethod-1.0.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/99/82/73a21e3eab9a1ff76d12375f7301fba5c6325b9598eed0ae5b0cf5243656/weakrefmethod-1.0.3.tar.gz|weakrefmethod-1.0.3
|
||||
websockify-0.9.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/c4/5b/16ec1e9f4fc536846d95a01a77d97da12f8042ca5cf83cdf3dd0442e881c/websockify-0.9.0.tar.gz|websockify-0.9.0
|
||||
whereto-0.4.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/80/83/371a699ce90257608592dadca400a7ecd9a2db6137d78f6f433c7c5e3197/whereto-0.4.0.tar.gz|whereto-0.4.0
|
||||
wrapt-1.12.1-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/82/f7/e43cefbe88c5fd371f4cf0cf5eb3feccd07515af9fd6cf7dbf1d1793a797/wrapt-1.12.1.tar.gz|wrapt-1.12.1|fix_setup
|
||||
ws4py-0.5.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/53/20/4019a739b2eefe9282d3822ef6a225250af964b117356971bd55e274193c/ws4py-0.5.1.tar.gz|ws4py-0.5.1
|
||||
WSME-0.10.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/e6/79/8aca55e7f3f21549dba59c276fc990b8d9bbde071fb17e1a968254d1df36/WSME-0.10.0-py3-none-any.whl
|
||||
xattr-0.9.7-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/c1/74/1ff659d6deb1d2d6babb9483171edfa330264ae2cbf005035bb7a77b07d2/xattr-0.9.7.tar.gz|xattr-0.9.7
|
||||
XStatic-1.0.2-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/36/78/c0ffaf14216517a14d3daa67ff24fbb60b4703e95ce1059a48fd508e6b8c/XStatic-1.0.2.tar.gz|XStatic-1.0.2
|
||||
XStatic_Angular_FileUpload-12.0.4.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/4d/fd/c3051915d2f12e8fa11f59c01162ce85e38eca15d9ec73a3d7b271b49744/XStatic-Angular-FileUpload-12.0.4.0.tar.gz|XStatic-Angular-FileUpload-12.0.4.0
|
||||
XStatic_Angular_lrdragndrop-1.0.2.4-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/80/ea/ffdde05892eabe468f22403f75299cf5d991f0af4f1400bebbf3af04bc9a/XStatic_Angular_lrdragndrop-1.0.2.4-py2.py3-none-any.whl
|
||||
XStatic_Angular_Schema_Form-0.8.13.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/57/71/ceea2c0a72e2ee2d316d6ab1c06b21faa9f5cbc4b36a4127d7847b7079c5/XStatic-Angular-Schema-Form-0.8.13.0.tar.gz|XStatic-Angular-Schema-Form-0.8.13.0
|
||||
XStatic_Bootstrap_Datepicker-1.4.0.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/3e/ab/806279e234318feb71c392b51d3a5c537c96e123b8e53c7bdeadf987b174/XStatic_Bootstrap_Datepicker-1.4.0.0-py3-none-any.whl
|
||||
XStatic_Hogan-2.0.0.3-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/6d/a3/822ce8570757a5b258c39f71f357b2276365f0e6d91094e37d706da5bee4/XStatic_Hogan-2.0.0.3-py3-none-any.whl
|
||||
XStatic_Jasmine-2.4.1.2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/05/43/ceac7def3b6eaf82b6f593e3db2b03a9693a7b002b569e664e382aecddbc/XStatic_Jasmine-2.4.1.2-py2.py3-none-any.whl
|
||||
XStatic_jQuery-1.12.4.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/67/f1/c18c14fc4aab386e4aba587c5d10c268de222c75bf5e271b6f68a2ea6e77/XStatic-jQuery-1.12.4.1.tar.gz|XStatic-jQuery-1.12.4.1
|
||||
XStatic_JQuery_Migrate-1.2.1.2-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/07/25/a1b3d6ecec8a889132951935cd1daec7b3a3f91bf08bdfb670b7ee5c3785/XStatic_JQuery_Migrate-1.2.1.2-py3-none-any.whl
|
||||
XStatic_JQuery.quicksearch-2.0.3.2-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/41/cf/24665d03c2c5963f0ad476b2af16a59af377735ab89d48d97e178409faf5/XStatic_JQuery.quicksearch-2.0.3.2-py3-none-any.whl
|
||||
XStatic_JQuery.TableSorter-2.14.5.2-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/38/af/f36c9ef0c5c1e12caca2d9f126573cdd7b97bc8d922fabe903964d078181/XStatic_JQuery.TableSorter-2.14.5.2-py3-none-any.whl
|
||||
XStatic_jquery_ui-1.12.1.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/e6/5a/883b22dad1d3e01708312d71c5bc63d543d66cef9b448c1cf85379d64fb3/XStatic-jquery-ui-1.12.1.1.tar.gz|XStatic-jquery-ui-1.12.1.1
|
||||
XStatic_mdi-1.6.50.2-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/73/49/13b9f7ce9fbcc7fabe086b7ac1b056118cbd4c9abf185e01cc4a54631136/XStatic_mdi-1.6.50.2-py2.py3-none-any.whl
|
||||
XStatic_objectpath-1.2.1.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/23/6c/56de25d9d3be430e7de2fcf4baac10279dad78d7b16cbda339cf014c2fe5/XStatic-objectpath-1.2.1.0.tar.gz|XStatic-objectpath-1.2.1.0
|
||||
XStatic_Rickshaw-1.5.1.0-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/23/cc/20380c36f60a424e655c005ce8be9329cbf41c58c5aa3db773485d1d0dcd/XStatic_Rickshaw-1.5.1.0-py3-none-any.whl
|
||||
XStatic_Spin-1.2.5.3-py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/ba/27/c678a4ca0e0a14f5a9edf4c97a89a6c493446b1a00aee78ea03e79333097/XStatic_Spin-1.2.5.3-py3-none-any.whl
|
||||
XStatic_term.js-0.0.7.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/63/7a/7bfec29f5f28fdda7170ebbbb2204aeb1d33d6050f3476a807590de06434/XStatic-term.js-0.0.7.0.tar.gz|XStatic-term.js-0.0.7.0
|
||||
XStatic_tv4-1.2.7.0-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/2b/26/b07115af27b339c861b8c9a775a621524b421c898e26e015880dfb888c49/XStatic-tv4-1.2.7.0.tar.gz|XStatic-tv4-1.2.7.0
|
||||
XStatic_Font_Awesome-4.7.0.0-py2.py3-none-any.whl|pypi|https://files.pythonhosted.org/packages/b4/ca/24685f91f744cde936294c033685cb4bb3302430f005cc834d86d75b9640/XStatic_Font_Awesome-4.7.0.0-py2.py3-none-any.whl
|
||||
xvfbwrapper-0.2.9-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/57/b6/4920eabda9b49630dea58745e79f9919aba6408d460afe758bf6e9b21a04/xvfbwrapper-0.2.9.tar.gz|xvfbwrapper-0.2.9
|
||||
yappi-1.2.3-cp39-cp39-linux_x86_64.whl|tar|https://files.pythonhosted.org/packages/37/dc/86bbe1822cdc6dbf46c644061bd24217f6a0f056f00162a3697c9bea7575/yappi-1.2.3.tar.gz|yappi-1.2.3
|
||||
yaql-1.1.3-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/77/89/cfee017cf4f2d6f5e7159bbf13fe4131c7dbf20d675b78c9928ae9aa9df8/yaql-1.1.3.tar.gz|yaql-1.1.3
|
||||
zVMCloudConnector-1.4.1-py3-none-any.whl|tar|https://files.pythonhosted.org/packages/11/92/9f704de9759816e7b9897b9fb41285b421498b4642551b6fbcccd2850008/zVMCloudConnector-1.4.1.tar.gz|zVMCloudConnector-1.4.1
|
@ -14,8 +14,8 @@ if [ -z "${MY_WORKSPACE}" -o -z "${MY_REPO}" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SUPPORTED_OS_ARGS=('centos')
|
||||
OS=centos
|
||||
SUPPORTED_OS_ARGS=('centos' 'debian')
|
||||
OS=
|
||||
BUILD_STREAM=stable
|
||||
|
||||
function usage {
|
||||
@ -69,6 +69,14 @@ while true; do
|
||||
done
|
||||
|
||||
# Validate the OS option
|
||||
if [ -z "$OS" ] ; then
|
||||
OS="$(ID= && source /etc/os-release 2>/dev/null && echo $ID || true)"
|
||||
if ! [ -n "$OS" ]; then
|
||||
echo "Unable to determine OS" >&2
|
||||
echo "Re-run with \"--os\" option" >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
VALID_OS=1
|
||||
for supported_os in ${SUPPORTED_OS_ARGS[@]}; do
|
||||
if [ "$OS" = "${supported_os}" ]; then
|
||||
@ -85,6 +93,7 @@ fi
|
||||
source ${MY_REPO}/build-tools/git-utils.sh
|
||||
|
||||
# For backward compatibility. Old repo location or new?
|
||||
if [ "${OS}" = "centos" ]; then
|
||||
CENTOS_REPO=${MY_REPO}/centos-repo
|
||||
if [ ! -d ${CENTOS_REPO} ]; then
|
||||
CENTOS_REPO=${MY_REPO}/cgcs-centos-repo
|
||||
@ -93,12 +102,18 @@ if [ ! -d ${CENTOS_REPO} ]; then
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
function get_wheels_files {
|
||||
find ${GIT_LIST} -maxdepth 1 -name "${OS}_${BUILD_STREAM}_wheels.inc"
|
||||
}
|
||||
|
||||
function get_lower_layer_wheels_files {
|
||||
# FIXME: debian: these are in repomgr pod, can't get to them easily
|
||||
if [[ "${OS}" != "centos" ]] ; then
|
||||
echo "$OS: lower layer wheels not supported!" >&2
|
||||
return 1
|
||||
fi
|
||||
find ${CENTOS_REPO}/layer_wheels_inc -maxdepth 1 -name "*_${OS}_${BUILD_STREAM}_wheels.inc"
|
||||
}
|
||||
|
||||
@ -114,6 +129,18 @@ function find_wheel_rpm {
|
||||
done | head -n 1
|
||||
}
|
||||
|
||||
function find_wheel_deb {
|
||||
local wheel="$1"
|
||||
local repo=
|
||||
# FIXME: debian: we should also scan non-stx RPMs, but they are in repomgr
|
||||
# pod and we can't easily get to them.
|
||||
for repo in ${MY_WORKSPACE}/std ; do
|
||||
if [ -d $repo ]; then
|
||||
find $repo -name "${wheel}_[^-]*-[^-]*[.][^.]*[.]deb"
|
||||
fi
|
||||
done | head -n 1
|
||||
}
|
||||
|
||||
declare -a WHEELS_FILES=($(get_wheels_files) $(get_lower_layer_wheels_files))
|
||||
if [ ${#WHEELS_FILES[@]} -eq 0 ]; then
|
||||
echo "Could not find ${OS} wheels.inc files" >&2
|
||||
@ -121,6 +148,7 @@ if [ ${#WHEELS_FILES[@]} -eq 0 ]; then
|
||||
fi
|
||||
|
||||
BUILD_OUTPUT_PATH=${MY_WORKSPACE}/std/build-wheels-${OS}-${BUILD_STREAM}/stx
|
||||
echo "BUILD_OUTPUT_PATH: $BUILD_OUTPUT_PATH" >&2
|
||||
if [ -d ${BUILD_OUTPUT_PATH} ]; then
|
||||
# Wipe out the existing dir to ensure there are no stale files
|
||||
rm -rf ${BUILD_OUTPUT_PATH}
|
||||
@ -151,6 +179,22 @@ for wheel in $(sed -e 's/#.*//' ${WHEELS_FILES[@]} | sort -u); do
|
||||
FAILED+=($wheel)
|
||||
fi
|
||||
|
||||
;;
|
||||
debian)
|
||||
wheelfile="$(find_wheel_deb ${wheel})"
|
||||
if [ ! -e "${wheelfile}" ]; then
|
||||
echo "Could not find ${wheel}" >&2
|
||||
FAILED+=($wheel)
|
||||
continue
|
||||
fi
|
||||
|
||||
echo Extracting ${wheelfile}
|
||||
ar p ${wheelfile} data.tar.xz | tar -xJ
|
||||
if [ ${PIPESTATUS[0]} -ne 0 -o ${PIPESTATUS[1]} -ne 0 ]; then
|
||||
echo "Failed to extract content of ${wheelfile}" >&2
|
||||
FAILED+=($wheel)
|
||||
fi
|
||||
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
Loading…
Reference in New Issue
Block a user