Skip to content

Commit 96af5c8

Browse files
committed
fix tox
Signed-off-by: Chris Snow <[email protected]>
1 parent be471c6 commit 96af5c8

File tree

3 files changed

+38
-8
lines changed

3 files changed

+38
-8
lines changed

Dockerfile

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,42 @@ FROM theiaide/theia-full:next
33
COPY requirements.txt /tmp
44

55
RUN sudo apt-get update \
6-
&& sudo apt-get install -y software-properties-common \
7-
&& sudo add-apt-repository -y ppa:deadsnakes/ppa \
6+
# && sudo apt-get install -y software-properties-common \
7+
# && sudo add-apt-repository -y ppa:deadsnakes/ppa \
88
&& sudo apt-get update \
9-
&& sudo apt-get install -y python3.5 python3.6 python3.7 python3.8 python3.9 tox python3-sphinx python-pip python3-pip python3.9-distutils vim
9+
&& sudo apt-get install -y python-pip python3-pip python3-sphinx vim
10+
# && sudo apt-get install -y python3.5 python3.6 python3.7 python3.8 python3.9 python3.9-distutils
11+
12+
RUN sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \
13+
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \
14+
libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
15+
16+
RUN git clone https://github.com/pyenv/pyenv.git /home/theia/.pyenv
17+
RUN git clone https://github.com/momo-lab/xxenv-latest.git /home/theia/.pyenv/plugins/xxenv-latest
18+
RUN echo 'export PYENV_ROOT="/home/theia/.pyenv"' >> /home/theia/.bashrc
19+
RUN echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> /home/theia/.bashrc
20+
RUN echo 'if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init -)"; fi' >> /home/theia/.bashrc
21+
22+
RUN /home/theia/.pyenv/bin/pyenv latest install 2.7
23+
RUN /home/theia/.pyenv/bin/pyenv latest install 3.5
24+
RUN /home/theia/.pyenv/bin/pyenv latest install 3.6
25+
RUN /home/theia/.pyenv/bin/pyenv latest install 3.7
26+
RUN /home/theia/.pyenv/bin/pyenv latest install 3.8
27+
RUN /home/theia/.pyenv/bin/pyenv install 3.9-dev
28+
RUN /home/theia/.pyenv/bin/pyenv local $(/home/theia/.pyenv/bin/pyenv versions --bare)
29+
RUN /home/theia/.pyenv/bin/pyenv versions
1030

1131
# FIXME: Python 3.9 returns errors with pip
1232
RUN echo "Installing python modules" \
13-
&& for v in 2 3 3.5 3.6 3.7 3.8; do python${v} -m pip install -U ipython pylint pytest mock nose flake8-docstrings flake8-per-file-ignores==0.8.1 isort; done \
14-
&& for v in 3 3.5 3.6 3.7 3.8; do python${v} -m pip install -U black; done \
15-
&& sudo ln -s /home/theia/.local/bin//black /bin/ \
16-
&& for v in 2 3 3.5 3.6 3.7 3.8; do python${v} -m pip install -r /tmp/requirements.txt; done
33+
&& PYENV_PATHS=$(ls -1 /home/theia/.pyenv/versions/*/bin/python?.?) \
34+
&& PYENV_3PATHS=$(ls -1 /home/theia/.pyenv/versions/*/bin/python3.?) \
35+
&& for v in ${PYENV_PATHS}; do ${v} -m pip install --upgrade pip; done \
36+
&& for v in ${PYENV_PATHS}; do ${v} -m pip install -U tox-pyenv ipython pylint pytest mock nose flake8-docstrings isort; done \
37+
&& for v in ${PYENV_3PATHS}; do ${v} -m pip install -U black; done \
38+
&& sudo ln -f -s /home/theia/.local/bin/black /bin/ \
39+
&& for v in ${PYENV_PATHS}; do ${v} -m pip install -r /tmp/requirements.txt; done
1740

1841
RUN echo 'PATH=$PATH:/home/theia/.local/bin/' >> /home/theia/.bashrc
1942

2043
ENV PYTHONPATH=/home/project:$PYTHONPATH
44+

pre_push_verifications.sh

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,12 @@ flake8 --docstring-convention numpy bin/ hpecp/
1313

1414
flake8 --ignore=D,E501 tests/cli_test.py # don't verify documentation in tests
1515

16-
tox -e py35 -- tests/
16+
if [[] -d /home/theia/ ]];
17+
then
18+
# ensure pyenvs are avaialble
19+
/home/theia/.pyenv/bin/pyenv local $(/home/theia/.pyenv/bin/pyenv versions --bare)
20+
fi
21+
tox --recreate -- tests/
1722

1823
echo "********** FIXME: tox should test py27 as well **********"
1924

tox.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
[tox]
77
envlist = py27, py35, py36, py37, py38
8+
skip_missing_interpreters = True
89

910
[gh-actions]
1011
python =

0 commit comments

Comments
 (0)