-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
33 changed files
with
558 additions
and
320 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
# vim:set ft=dockerfile: | ||
FROM debian:jessie | ||
|
||
# See https://github.com/docker-library/python/blob/master/3.5/Dockerfile | ||
|
||
# ensure local python is preferred over distribution python | ||
ENV PATH /usr/local/bin:$PATH | ||
|
||
# http://bugs.python.org/issue19846 | ||
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK. | ||
ENV LANG C.UTF-8 | ||
|
||
# runtime dependencies | ||
RUN apt-get update && apt-get install -y --no-install-recommends \ | ||
ca-certificates \ | ||
wget \ | ||
autoconf \ | ||
automake \ | ||
bzip2 \ | ||
file \ | ||
g++ \ | ||
gcc \ | ||
libssl-dev \ | ||
libtool \ | ||
make \ | ||
patch \ | ||
xz-utils \ | ||
tcl \ | ||
tk \ | ||
&& rm -rf /var/lib/apt/lists/* | ||
|
||
ENV GPG_KEY 97FC712E4C024BBEA48A61ED3A5CA953F73C700D | ||
ENV PYTHON_VERSION 3.5.3 | ||
|
||
# if this is called "PIP_VERSION", pip explodes with "ValueError: invalid truth value '<VERSION>'" | ||
ENV PYTHON_PIP_VERSION 9.0.1 | ||
|
||
RUN set -ex \ | ||
&& buildDeps=' \ | ||
tcl-dev \ | ||
tk-dev \ | ||
' \ | ||
&& apt-get update && apt-get install -y $buildDeps --no-install-recommends && rm -rf /var/lib/apt/lists/* \ | ||
\ | ||
&& wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz" \ | ||
&& wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc" \ | ||
&& export GNUPGHOME="$(mktemp -d)" \ | ||
&& gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$GPG_KEY" \ | ||
&& gpg --batch --verify python.tar.xz.asc python.tar.xz \ | ||
&& rm -r "$GNUPGHOME" python.tar.xz.asc \ | ||
&& mkdir -p /usr/src/python \ | ||
&& tar -xJC /usr/src/python --strip-components=1 -f python.tar.xz \ | ||
&& rm python.tar.xz \ | ||
\ | ||
&& cd /usr/src/python \ | ||
&& ./configure \ | ||
--enable-loadable-sqlite-extensions \ | ||
--enable-shared \ | ||
&& make -j$(nproc) \ | ||
&& make install \ | ||
&& ldconfig \ | ||
\ | ||
# explicit path to "pip3" to ensure distribution-provided "pip3" cannot interfere | ||
&& if [ ! -e /usr/local/bin/pip3 ]; then : \ | ||
&& wget -O /tmp/get-pip.py 'https://bootstrap.pypa.io/get-pip.py' \ | ||
&& python3 /tmp/get-pip.py "pip==$PYTHON_PIP_VERSION" \ | ||
&& rm /tmp/get-pip.py \ | ||
; fi \ | ||
# we use "--force-reinstall" for the case where the version of pip we're trying to install is the same as the version bundled with Python | ||
# ("Requirement already up-to-date: pip==8.1.2 in /usr/local/lib/python3.6/site-packages") | ||
# https://github.com/docker-library/python/pull/143#issuecomment-241032683 | ||
&& pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ | ||
# then we use "pip list" to ensure we don't have more than one pip version installed | ||
# https://github.com/docker-library/python/pull/100 | ||
&& [ "$(pip list |tac|tac| awk -F '[ ()]+' '$1 == "pip" { print $2; exit }')" = "$PYTHON_PIP_VERSION" ] \ | ||
\ | ||
&& find /usr/local -depth \ | ||
\( \ | ||
\( -type d -a -name test -o -name tests \) \ | ||
-o \ | ||
\( -type f -a -name '*.pyc' -o -name '*.pyo' \) \ | ||
\) -exec rm -rf '{}' + \ | ||
&& apt-get purge -y --auto-remove $buildDeps \ | ||
&& rm -rf /usr/src/python ~/.cache | ||
|
||
# make some useful symlinks that are expected to exist | ||
RUN cd /usr/local/bin \ | ||
&& { [ -e easy_install ] || ln -s easy_install-* easy_install; } \ | ||
&& ln -s idle3 idle \ | ||
&& ln -s pydoc3 pydoc \ | ||
&& ln -s python3 python \ | ||
&& ln -s python3-config python-config | ||
|
||
ADD . /opt/B2HANDLE | ||
|
||
WORKDIR /opt/B2HANDLE | ||
|
||
RUN python setup.py install |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,4 @@ | ||
include README.md | ||
include b2handle/tests/resources/*PUBLIC.json | ||
include b2handle/tests/testcredentials/*_PUBLIC.json | ||
include b2handle/tests/testcredentials/fake_certs_and_keys/*.pem |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,11 @@ | ||
# | ||
# The version as used in setup.py and docs/source/conf.py | ||
__version__ = "1.0.3" | ||
__version__ = "1.1.0" | ||
|
||
# The version as used in setup.py and docs/source/conf.py. | ||
|
||
# IMPORTANT | ||
# Please put no comment above the __version__ variable, | ||
# as they would be printed in the help(b2handle) output! | ||
# (The first comment - empty or not - would be appended to | ||
# the package name, the next non-empty comment would be | ||
# printed as description). | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
import sys | ||
from six import string_types | ||
''' | ||
This module provides some helper functions to ease porting the codebase | ||
to Python 3.5.. | ||
''' | ||
def check_response_content_type(response): | ||
if isinstance(response.content, string_types): | ||
return True | ||
|
||
def decoded_response(response): | ||
if (check_response_content_type(response)): | ||
return response.content | ||
return response.content.decode('utf-8') | ||
|
||
def set_encoding_variable(): | ||
if sys.version_info > (3, 0): | ||
encoding_value = 'unicode' | ||
else: | ||
encoding_value = 'utf-8' | ||
return encoding_value |
Oops, something went wrong.