Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Get:5 http://archive.ubuntu.com/ubuntu artful/main amd64 libpython3.6-dev amd64 3.6.3-1ubuntu1 [2,483 kB]
- Get:6 http://archive.ubuntu.com/ubuntu artful/main amd64 libpython3-dev amd64 3.6.3-0ubuntu2 [6,914 B]
- Get:7 http://archive.ubuntu.com/ubuntu artful/main amd64 python2.7-dev amd64 2.7.14-2ubuntu2 [278 kB]
- Get:8 http://archive.ubuntu.com/ubuntu artful/main amd64 python-dev amd64 2.7.14-2ubuntu1 [1,176 B]
- Get:9 http://archive.ubuntu.com/ubuntu artful/universe amd64 python-pip-whl all 9.0.1-2 [1,379 kB]
- Get:10 http://archive.ubuntu.com/ubuntu artful/main amd64 python3.6-dev amd64 3.6.3-1ubuntu1 [519 kB]
- Get:11 http://archive.ubuntu.com/ubuntu artful/main amd64 python3-dev amd64 3.6.3-0ubuntu2 [1,206 B]
- Get:12 http://archive.ubuntu.com/ubuntu artful/main amd64 python3-pkg-resources all 36.2.7-2 [98.7 kB]
- Get:13 http://archive.ubuntu.com/ubuntu artful/universe amd64 python3.6-venv amd64 3.6.3-1ubuntu1 [5,886 B]
- Get:14 http://archive.ubuntu.com/ubuntu artful/universe amd64 python3-venv amd64 3.6.3-0ubuntu2 [1,114 B]
- Get:15 http://archive.ubuntu.com/ubuntu artful/universe amd64 python3-virtualenv all 15.1.0+ds-1 [43.2 kB]
- Get:16 http://archive.ubuntu.com/ubuntu artful/universe amd64 virtualenv all 15.1.0+ds-1 [4,376 B]
- debconf: delaying package configuration, since apt-utils is not installed
- Fetched 35.6 MB in 11s (3,211 kB/s)
- Selecting previously unselected package libpython2.7:amd64.
- (Reading database ... 37016 files and directories currently installed.)
- Preparing to unpack .../00-libpython2.7_2.7.14-2ubuntu2_amd64.deb ...
- Unpacking libpython2.7:amd64 (2.7.14-2ubuntu2) ...
- Selecting previously unselected package libpython2.7-dev:amd64.
- Preparing to unpack .../01-libpython2.7-dev_2.7.14-2ubuntu2_amd64.deb ...
- Unpacking libpython2.7-dev:amd64 (2.7.14-2ubuntu2) ...
- Selecting previously unselected package libpython-dev:amd64.
- Preparing to unpack .../02-libpython-dev_2.7.14-2ubuntu1_amd64.deb ...
- Unpacking libpython-dev:amd64 (2.7.14-2ubuntu1) ...
- Selecting previously unselected package libpython3.6:amd64.
- Preparing to unpack .../03-libpython3.6_3.6.3-1ubuntu1_amd64.deb ...
- Unpacking libpython3.6:amd64 (3.6.3-1ubuntu1) ...
- Selecting previously unselected package libpython3.6-dev:amd64.
- Preparing to unpack .../04-libpython3.6-dev_3.6.3-1ubuntu1_amd64.deb ...
- Unpacking libpython3.6-dev:amd64 (3.6.3-1ubuntu1) ...
- Selecting previously unselected package libpython3-dev:amd64.
- Preparing to unpack .../05-libpython3-dev_3.6.3-0ubuntu2_amd64.deb ...
- Unpacking libpython3-dev:amd64 (3.6.3-0ubuntu2) ...
- Selecting previously unselected package python2.7-dev.
- Preparing to unpack .../06-python2.7-dev_2.7.14-2ubuntu2_amd64.deb ...
- Unpacking python2.7-dev (2.7.14-2ubuntu2) ...
- Selecting previously unselected package python-dev.
- Preparing to unpack .../07-python-dev_2.7.14-2ubuntu1_amd64.deb ...
- Unpacking python-dev (2.7.14-2ubuntu1) ...
- Selecting previously unselected package python-pip-whl.
- Preparing to unpack .../08-python-pip-whl_9.0.1-2_all.deb ...
- Unpacking python-pip-whl (9.0.1-2) ...
- Selecting previously unselected package python3.6-dev.
- Preparing to unpack .../09-python3.6-dev_3.6.3-1ubuntu1_amd64.deb ...
- Unpacking python3.6-dev (3.6.3-1ubuntu1) ...
- Selecting previously unselected package python3-dev.
- Preparing to unpack .../10-python3-dev_3.6.3-0ubuntu2_amd64.deb ...
- Unpacking python3-dev (3.6.3-0ubuntu2) ...
- Selecting previously unselected package python3-pkg-resources.
- Preparing to unpack .../11-python3-pkg-resources_36.2.7-2_all.deb ...
- Unpacking python3-pkg-resources (36.2.7-2) ...
- Selecting previously unselected package python3.6-venv.
- Preparing to unpack .../12-python3.6-venv_3.6.3-1ubuntu1_amd64.deb ...
- Unpacking python3.6-venv (3.6.3-1ubuntu1) ...
- Selecting previously unselected package python3-venv.
- Preparing to unpack .../13-python3-venv_3.6.3-0ubuntu2_amd64.deb ...
- Unpacking python3-venv (3.6.3-0ubuntu2) ...
- Selecting previously unselected package python3-virtualenv.
- Preparing to unpack .../14-python3-virtualenv_15.1.0+ds-1_all.deb ...
- Unpacking python3-virtualenv (15.1.0+ds-1) ...
- Selecting previously unselected package virtualenv.
- Preparing to unpack .../15-virtualenv_15.1.0+ds-1_all.deb ...
- Unpacking virtualenv (15.1.0+ds-1) ...
- Setting up python-pip-whl (9.0.1-2) ...
- Setting up python3.6-venv (3.6.3-1ubuntu1) ...
- Setting up python3-pkg-resources (36.2.7-2) ...
- Processing triggers for libc-bin (2.26-0ubuntu2.1) ...
- Setting up python3-virtualenv (15.1.0+ds-1) ...
- Setting up libpython2.7:amd64 (2.7.14-2ubuntu2) ...
- Setting up libpython2.7-dev:amd64 (2.7.14-2ubuntu2) ...
- Setting up virtualenv (15.1.0+ds-1) ...
- Setting up python2.7-dev (2.7.14-2ubuntu2) ...
- Setting up libpython3.6:amd64 (3.6.3-1ubuntu1) ...
- Setting up python3-venv (3.6.3-0ubuntu2) ...
- Setting up libpython-dev:amd64 (2.7.14-2ubuntu1) ...
- Setting up python-dev (2.7.14-2ubuntu1) ...
- Setting up libpython3.6-dev:amd64 (3.6.3-1ubuntu1) ...
- Setting up python3.6-dev (3.6.3-1ubuntu1) ...
- Setting up libpython3-dev:amd64 (3.6.3-0ubuntu2) ...
- Setting up python3-dev (3.6.3-0ubuntu2) ...
- Processing triggers for libc-bin (2.26-0ubuntu2.1) ...
- Reading package lists...
- Building dependency tree...
- Reading state information...
- 0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
- Removing intermediate container f624a4c19432
- ---> 1efef8007ce3
- Step 16/40 : EXPOSE 8888
- ---> Running in 9e6217642b2d
- Removing intermediate container 9e6217642b2d
- ---> 748aeb048c2b
- Step 17/40 : ENV APP_BASE /srv
- ---> Running in edf04ae4b6c5
- Removing intermediate container edf04ae4b6c5
- ---> 511a9357368e
- Step 18/40 : ENV VENV_PATH ${APP_BASE}/venv
- ---> Running in c17d3b4780b5
- Removing intermediate container c17d3b4780b5
- ---> 4136f8f78984
- Step 19/40 : ENV NB_PYTHON_PREFIX ${VENV_PATH}
- ---> Running in 84af3928e2e3
- Removing intermediate container 84af3928e2e3
- ---> 0d107bccd8b9
- Step 20/40 : ENV VENV2_PATH ${APP_BASE}/venv2
- ---> Running in a1265f580811
- Removing intermediate container a1265f580811
- ---> bc365706beed
- Step 21/40 : ENV PATH ${VENV_PATH}/bin:${VENV2_PATH}/bin:${PATH}
- ---> Running in 8d1023b75e3f
- Removing intermediate container 8d1023b75e3f
- ---> 6a4541e7a241
- Step 22/40 : COPY python/requirements2.frozen.txt /tmp/requirements2.frozen.txt
- ---> 603fcc8fc997
- Step 23/40 : COPY python/requirements.frozen.txt /tmp/requirements.frozen.txt
- ---> a85d6f12bfa0
- Step 24/40 : RUN mkdir -p ${VENV_PATH} && chown -R ${NB_USER}:${NB_USER} ${VENV_PATH}
- ---> Running in 66cda6da6ce5
- Removing intermediate container 66cda6da6ce5
- ---> 7ac835f2418c
- Step 25/40 : USER ${NB_USER}
- ---> Running in c9273c8f28b9
- Removing intermediate container c9273c8f28b9
- ---> 249026e3dc82
- Step 26/40 : RUN python3 -m venv ${VENV_PATH}
- ---> Running in 5ec13707d700
- Removing intermediate container 5ec13707d700
- ---> cbd4d16c2f8d
- Step 27/40 : RUN pip install --no-cache-dir -r /tmp/requirements.frozen.txt && jupyter nbextension enable --py widgetsnbextension --sys-prefix && jupyter serverextension enable --py jupyterlab --sys-prefix && jupyter serverextension enable nteract_on_jupyter --sys-prefix
- ---> Running in 0cc4f89c9ab1
- Collecting bleach==2.1.3 (from -r /tmp/requirements.frozen.txt (line 3))
- Downloading bleach-2.1.3-py2.py3-none-any.whl
- Collecting decorator==4.2.1 (from -r /tmp/requirements.frozen.txt (line 4))
- Downloading decorator-4.2.1-py2.py3-none-any.whl
- Collecting entrypoints==0.2.3 (from -r /tmp/requirements.frozen.txt (line 5))
- Downloading entrypoints-0.2.3-py2.py3-none-any.whl
- Collecting html5lib==1.0.1 (from -r /tmp/requirements.frozen.txt (line 6))
- Downloading html5lib-1.0.1-py2.py3-none-any.whl (117kB)
- Collecting ipykernel==4.8.2 (from -r /tmp/requirements.frozen.txt (line 7))
- Downloading ipykernel-4.8.2-py3-none-any.whl (108kB)
- Collecting ipython-genutils==0.2.0 (from -r /tmp/requirements.frozen.txt (line 8))
- Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl
- Collecting ipython==6.2.1 (from -r /tmp/requirements.frozen.txt (line 9))
- Downloading ipython-6.2.1-py3-none-any.whl (745kB)
- Collecting ipywidgets==7.1.1 (from -r /tmp/requirements.frozen.txt (line 10))
- Downloading ipywidgets-7.1.1-py2.py3-none-any.whl (68kB)
- Collecting jedi==0.11.1 (from -r /tmp/requirements.frozen.txt (line 11))
- Downloading jedi-0.11.1-py2.py3-none-any.whl (250kB)
- Collecting Jinja2==2.10 (from -r /tmp/requirements.frozen.txt (line 12))
- Downloading Jinja2-2.10-py2.py3-none-any.whl (126kB)
- Collecting jsonschema==2.6.0 (from -r /tmp/requirements.frozen.txt (line 13))
- Downloading jsonschema-2.6.0-py2.py3-none-any.whl
- Collecting jupyter-client==5.2.3 (from -r /tmp/requirements.frozen.txt (line 14))
- Downloading jupyter_client-5.2.3-py2.py3-none-any.whl (89kB)
- Collecting jupyter-core==4.4.0 (from -r /tmp/requirements.frozen.txt (line 15))
- Downloading jupyter_core-4.4.0-py2.py3-none-any.whl (126kB)
- Collecting jupyterlab-launcher==0.10.5 (from -r /tmp/requirements.frozen.txt (line 16))
- Downloading jupyterlab_launcher-0.10.5-py2.py3-none-any.whl
- Collecting jupyterlab==0.31.5 (from -r /tmp/requirements.frozen.txt (line 17))
- Downloading jupyterlab-0.31.5-py2.py3-none-any.whl (13.0MB)
- Collecting MarkupSafe==1.0 (from -r /tmp/requirements.frozen.txt (line 18))
- Downloading MarkupSafe-1.0.tar.gz
- Collecting mistune==0.8.3 (from -r /tmp/requirements.frozen.txt (line 19))
- Downloading mistune-0.8.3-py2.py3-none-any.whl
- Collecting nbconvert==5.3.1 (from -r /tmp/requirements.frozen.txt (line 20))
- Downloading nbconvert-5.3.1-py2.py3-none-any.whl (387kB)
- Collecting nbformat==4.4.0 (from -r /tmp/requirements.frozen.txt (line 21))
- Downloading nbformat-4.4.0-py2.py3-none-any.whl (155kB)
- Collecting notebook==5.4.1 (from -r /tmp/requirements.frozen.txt (line 22))
- Downloading notebook-5.4.1-py2.py3-none-any.whl (8.0MB)
- Collecting nteract-on-jupyter==1.5.0 (from -r /tmp/requirements.frozen.txt (line 23))
- Downloading nteract_on_jupyter-1.5.0.tar.gz (1.4MB)
- Collecting pandocfilters==1.4.2 (from -r /tmp/requirements.frozen.txt (line 24))
- Downloading pandocfilters-1.4.2.tar.gz
- Collecting parso==0.1.1 (from -r /tmp/requirements.frozen.txt (line 25))
- Downloading parso-0.1.1-py2.py3-none-any.whl (91kB)
- Collecting pexpect==4.4.0 (from -r /tmp/requirements.frozen.txt (line 26))
- Downloading pexpect-4.4.0-py2.py3-none-any.whl (56kB)
- Collecting pickleshare==0.7.4 (from -r /tmp/requirements.frozen.txt (line 27))
- Downloading pickleshare-0.7.4-py2.py3-none-any.whl
- Collecting prompt-toolkit==1.0.15 (from -r /tmp/requirements.frozen.txt (line 28))
- Downloading prompt_toolkit-1.0.15-py3-none-any.whl (247kB)
- Collecting ptyprocess==0.5.2 (from -r /tmp/requirements.frozen.txt (line 29))
- Downloading ptyprocess-0.5.2-py2.py3-none-any.whl
- Collecting Pygments==2.2.0 (from -r /tmp/requirements.frozen.txt (line 30))
- Downloading Pygments-2.2.0-py2.py3-none-any.whl (841kB)
- Collecting python-dateutil==2.7.0 (from -r /tmp/requirements.frozen.txt (line 31))
- Downloading python_dateutil-2.7.0-py2.py3-none-any.whl (207kB)
- Collecting pyzmq==17.0.0 (from -r /tmp/requirements.frozen.txt (line 32))
- Downloading pyzmq-17.0.0-cp36-cp36m-manylinux1_x86_64.whl (3.1MB)
- Collecting Send2Trash==1.5.0 (from -r /tmp/requirements.frozen.txt (line 33))
- Downloading Send2Trash-1.5.0-py3-none-any.whl
- Collecting simplegeneric==0.8.1 (from -r /tmp/requirements.frozen.txt (line 34))
- Downloading simplegeneric-0.8.1.zip
- Collecting six==1.11.0 (from -r /tmp/requirements.frozen.txt (line 35))
- Downloading six-1.11.0-py2.py3-none-any.whl
- Collecting terminado==0.8.1 (from -r /tmp/requirements.frozen.txt (line 36))
- Downloading terminado-0.8.1-py2.py3-none-any.whl
- Collecting testpath==0.3.1 (from -r /tmp/requirements.frozen.txt (line 37))
- Downloading testpath-0.3.1-py2.py3-none-any.whl (161kB)
- Collecting tornado==4.5.3 (from -r /tmp/requirements.frozen.txt (line 38))
- Downloading tornado-4.5.3.tar.gz (484kB)
- Collecting traitlets==4.3.2 (from -r /tmp/requirements.frozen.txt (line 39))
- Downloading traitlets-4.3.2-py2.py3-none-any.whl (74kB)
- Collecting wcwidth==0.1.7 (from -r /tmp/requirements.frozen.txt (line 40))
- Downloading wcwidth-0.1.7-py2.py3-none-any.whl
- Collecting webencodings==0.5.1 (from -r /tmp/requirements.frozen.txt (line 41))
- Downloading webencodings-0.5.1-py2.py3-none-any.whl
- Collecting widgetsnbextension==3.1.4 (from -r /tmp/requirements.frozen.txt (line 42))
- Downloading widgetsnbextension-3.1.4-py2.py3-none-any.whl (2.2MB)
- Requirement already satisfied: setuptools>=18.5 in /srv/venv/lib/python3.6/site-packages (from ipython==6.2.1->-r /tmp/requirements.frozen.txt (line 9))
- Installing collected packages: six, webencodings, html5lib, bleach, decorator, entrypoints, ipython-genutils, traitlets, simplegeneric, pickleshare, Pygments, wcwidth, prompt-toolkit, parso, jedi, ptyprocess, pexpect, ipython, jupyter-core, python-dateutil, tornado, pyzmq, jupyter-client, ipykernel, jsonschema, nbformat, Send2Trash, terminado, MarkupSafe, Jinja2, mistune, testpath, pandocfilters, nbconvert, notebook, widgetsnbextension, ipywidgets, jupyterlab-launcher, jupyterlab, nteract-on-jupyter
- Running setup.py install for simplegeneric: started
- Running setup.py install for simplegeneric: finished with status 'done'
- Running setup.py install for tornado: started
- Running setup.py install for tornado: finished with status 'done'
- Running setup.py install for MarkupSafe: started
- Running setup.py install for MarkupSafe: finished with status 'done'
- Running setup.py install for pandocfilters: started
- Running setup.py install for pandocfilters: finished with status 'done'
- Running setup.py install for nteract-on-jupyter: started
- Running setup.py install for nteract-on-jupyter: finished with status 'done'
- Successfully installed Jinja2-2.10 MarkupSafe-1.0 Pygments-2.2.0 Send2Trash-1.5.0 bleach-2.1.3 decorator-4.2.1 entrypoints-0.2.3 html5lib-1.0.1 ipykernel-4.8.2 ipython-6.2.1 ipython-genutils-0.2.0 ipywidgets-7.1.1 jedi-0.11.1 jsonschema-2.6.0 jupyter-client-5.2.3 jupyter-core-4.4.0 jupyterlab-0.31.5 jupyterlab-launcher-0.10.5 mistune-0.8.3 nbconvert-5.3.1 nbformat-4.4.0 notebook-5.4.1 nteract-on-jupyter-1.5.0 pandocfilters-1.4.2 parso-0.1.1 pexpect-4.4.0 pickleshare-0.7.4 prompt-toolkit-1.0.15 ptyprocess-0.5.2 python-dateutil-2.7.0 pyzmq-17.0.0 simplegeneric-0.8.1 six-1.11.0 terminado-0.8.1 testpath-0.3.1 tornado-4.5.3 traitlets-4.3.2 wcwidth-0.1.7 webencodings-0.5.1 widgetsnbextension-3.1.4
- Enabling notebook extension jupyter-js-widgets/extension...
- - Validating: OK
- Enabling: jupyterlab
- - Writing config: /srv/venv/etc/jupyter
- - Validating...
- jupyterlab OK
- Enabling: nteract_on_jupyter
- - Writing config: /srv/venv/etc/jupyter
- - Validating...
- nteract_on_jupyter OK
- Removing intermediate container 0cc4f89c9ab1
- ---> b160db634041
- Step 28/40 : USER root
- ---> Running in 2de69e8b1738
- Removing intermediate container 2de69e8b1738
- ---> 17c992ebb7af
- Step 29/40 : RUN mkdir -p ${VENV2_PATH} && chown -R ${NB_USER}:${NB_USER} ${VENV2_PATH}
- ---> Running in 751c1d17ef6e
- Removing intermediate container 751c1d17ef6e
- ---> 87ded2d76e55
- Step 30/40 : USER ${NB_USER}
- ---> Running in 30c4fd38f548
- Removing intermediate container 30c4fd38f548
- ---> 95213e7435a1
- Step 31/40 : RUN virtualenv -p python2 ${VENV2_PATH}
- ---> Running in 7ad95334635b
- New python executable in /srv/venv2/bin/python2
- Also creating executable in /srv/venv2/bin/python
- Installing setuptools, pkg_resources, pip, wheel...done.
- Running virtualenv with interpreter /usr/bin/python2
- Removing intermediate container 7ad95334635b
- ---> 13b226347953
- Step 32/40 : RUN pip2 install --no-cache-dir -r /tmp/requirements2.frozen.txt && python2 -m ipykernel install --prefix=${NB_PYTHON_PREFIX}
- ---> Running in 9e52706e8527
- Collecting backports-abc==0.5 (from -r /tmp/requirements2.frozen.txt (line 3))
- Downloading backports_abc-0.5-py2.py3-none-any.whl
- Collecting backports.shutil-get-terminal-size==1.0.0 (from -r /tmp/requirements2.frozen.txt (line 4))
- Downloading backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl
- Collecting certifi==2018.1.18 (from -r /tmp/requirements2.frozen.txt (line 5))
- Downloading certifi-2018.1.18-py2.py3-none-any.whl (151kB)
- Collecting decorator==4.2.1 (from -r /tmp/requirements2.frozen.txt (line 6))
- Downloading decorator-4.2.1-py2.py3-none-any.whl
- Collecting enum34==1.1.6 (from -r /tmp/requirements2.frozen.txt (line 7))
- Downloading enum34-1.1.6-py2-none-any.whl
- Collecting ipykernel==4.8.2 (from -r /tmp/requirements2.frozen.txt (line 8))
- Downloading ipykernel-4.8.2-py2-none-any.whl (108kB)
- Collecting ipython-genutils==0.2.0 (from -r /tmp/requirements2.frozen.txt (line 9))
- Downloading ipython_genutils-0.2.0-py2.py3-none-any.whl
- Collecting ipython==5.5.0 (from -r /tmp/requirements2.frozen.txt (line 10))
- Downloading ipython-5.5.0-py2-none-any.whl (758kB)
- Collecting jupyter-client==5.2.3 (from -r /tmp/requirements2.frozen.txt (line 11))
- Downloading jupyter_client-5.2.3-py2.py3-none-any.whl (89kB)
- Collecting jupyter-core==4.4.0 (from -r /tmp/requirements2.frozen.txt (line 12))
- Downloading jupyter_core-4.4.0-py2.py3-none-any.whl (126kB)
- Collecting pathlib2==2.3.0 (from -r /tmp/requirements2.frozen.txt (line 13))
- Downloading pathlib2-2.3.0-py2.py3-none-any.whl
- Collecting pexpect==4.4.0 (from -r /tmp/requirements2.frozen.txt (line 14))
- Downloading pexpect-4.4.0-py2.py3-none-any.whl (56kB)
- Collecting pickleshare==0.7.4 (from -r /tmp/requirements2.frozen.txt (line 15))
- Downloading pickleshare-0.7.4-py2.py3-none-any.whl
- Collecting prompt-toolkit==1.0.15 (from -r /tmp/requirements2.frozen.txt (line 16))
- Downloading prompt_toolkit-1.0.15-py2-none-any.whl (247kB)
- Collecting ptyprocess==0.5.2 (from -r /tmp/requirements2.frozen.txt (line 17))
- Downloading ptyprocess-0.5.2-py2.py3-none-any.whl
- Collecting Pygments==2.2.0 (from -r /tmp/requirements2.frozen.txt (line 18))
- Downloading Pygments-2.2.0-py2.py3-none-any.whl (841kB)
- Collecting python-dateutil==2.7.0 (from -r /tmp/requirements2.frozen.txt (line 19))
- Downloading python_dateutil-2.7.0-py2.py3-none-any.whl (207kB)
- Collecting pyzmq==17.0.0 (from -r /tmp/requirements2.frozen.txt (line 20))
- Downloading pyzmq-17.0.0-cp27-cp27mu-manylinux1_x86_64.whl (3.0MB)
- Collecting scandir==1.7 (from -r /tmp/requirements2.frozen.txt (line 21))
- Downloading scandir-1.7.tar.gz
- Collecting simplegeneric==0.8.1 (from -r /tmp/requirements2.frozen.txt (line 22))
- Downloading simplegeneric-0.8.1.zip
- Collecting singledispatch==3.4.0.3 (from -r /tmp/requirements2.frozen.txt (line 23))
- Downloading singledispatch-3.4.0.3-py2.py3-none-any.whl
- Collecting six==1.11.0 (from -r /tmp/requirements2.frozen.txt (line 24))
- Downloading six-1.11.0-py2.py3-none-any.whl
- Collecting tornado==4.5.3 (from -r /tmp/requirements2.frozen.txt (line 25))
- Downloading tornado-4.5.3.tar.gz (484kB)
- Collecting traitlets==4.3.2 (from -r /tmp/requirements2.frozen.txt (line 26))
- Downloading traitlets-4.3.2-py2.py3-none-any.whl (74kB)
- Collecting wcwidth==0.1.7 (from -r /tmp/requirements2.frozen.txt (line 27))
- Downloading wcwidth-0.1.7-py2.py3-none-any.whl
- Requirement already satisfied: setuptools>=18.5 in /srv/venv2/lib/python2.7/site-packages (from ipython==5.5.0->-r /tmp/requirements2.frozen.txt (line 10))
- Installing collected packages: backports-abc, backports.shutil-get-terminal-size, certifi, decorator, enum34, six, ipython-genutils, traitlets, simplegeneric, scandir, pathlib2, pickleshare, ptyprocess, pexpect, Pygments, wcwidth, prompt-toolkit, ipython, pyzmq, python-dateutil, singledispatch, tornado, jupyter-core, jupyter-client, ipykernel
- Running setup.py install for simplegeneric: started
- Running setup.py install for simplegeneric: finished with status 'done'
- Running setup.py install for scandir: started
- Running setup.py install for scandir: finished with status 'done'
- Running setup.py install for tornado: started
- Running setup.py install for tornado: finished with status 'done'
- Successfully installed Pygments-2.2.0 backports-abc-0.5 backports.shutil-get-terminal-size-1.0.0 certifi-2018.1.18 decorator-4.2.1 enum34-1.1.6 ipykernel-4.8.2 ipython-5.5.0 ipython-genutils-0.2.0 jupyter-client-5.2.3 jupyter-core-4.4.0 pathlib2-2.3.0 pexpect-4.4.0 pickleshare-0.7.4 prompt-toolkit-1.0.15 ptyprocess-0.5.2 python-dateutil-2.7.0 pyzmq-17.0.0 scandir-1.7 simplegeneric-0.8.1 singledispatch-3.4.0.3 six-1.11.0 tornado-4.5.3 traitlets-4.3.2 wcwidth-0.1.7
- [InstallIPythonKernelSpecApp] WARNING | Installing to /srv/venv/share/jupyter/kernels, which is not in ['/home/willingc/.local/share/jupyter/kernels', '/srv/venv2/share/jupyter/kernels', '/usr/local/share/jupyter/kernels', '/usr/share/jupyter/kernels', u'/home/willingc/.ipython/kernels']. The kernelspec may not be found.
- Installed kernelspec python2 in /srv/venv/share/jupyter/kernels/python2
- Removing intermediate container 9e52706e8527
- ---> 5b0a729956ad
- Step 33/40 : USER root
- ---> Running in cee0d1416a64
- Removing intermediate container cee0d1416a64
- ---> a2d1abf3d27e
- Step 34/40 : COPY src/ ${HOME}
- ---> 4cf1e175a8fe
- Step 35/40 : RUN chown -R ${NB_USER}:${NB_USER} ${HOME}
- ---> Running in 38abebb20b67
- Removing intermediate container 38abebb20b67
- ---> d0595f1e2445
- Step 36/40 : USER ${NB_USER}
- ---> Running in 551f93451245
- Removing intermediate container 551f93451245
- ---> c9937b0e953b
- Step 37/40 : RUN pip2 install --no-cache-dir -r requirements.txt
- ---> Running in 345d119a8e7f
- Collecting numpy (from -r requirements.txt (line 1))
- Downloading numpy-1.14.2-cp27-cp27mu-manylinux1_x86_64.whl (12.1MB)
- Installing collected packages: numpy
- Successfully installed numpy-1.14.2
- Removing intermediate container 345d119a8e7f
- ---> ea7fa41a784a
- Step 38/40 : USER ${NB_USER}
- ---> Running in 191d6a49bd1b
- Removing intermediate container 191d6a49bd1b
- ---> 8d1563074764
- Step 39/40 : CMD ["jupyter", "notebook", "--ip", "0.0.0.0"]
- ---> Running in 3e166e8008a7
- Removing intermediate container 3e166e8008a7
- ---> e7b2bfd18cfd
- Step 40/40 : RUN echo "appendix" > /tmp/appendix
- ---> Running in 2c8a4d15ea9d
- Removing intermediate container 2c8a4d15ea9d
- ---> 067e3aeb2aad
- {"aux": {"ID": "sha256:067e3aeb2aadcd6b7130d6594da618599e9cacaead084af5a20478f4e3dda258"}}Successfully built 067e3aeb2aad
- Successfully tagged r2d-2fusers-2fwillingc-2fcode-2fjhub-2frepo2docker-2ftests-2fvenv-2fpy21521595361:latest
- sys.version_info(major=2, minor=7, micro=14, releaselevel='final', serial=0)
- PASSED
- tests/volumes.py::test_volume_abspath Using PythonBuildPack builder
- Step 1/30 : FROM buildpack-deps:artful
- ---> 766d0aa6a29e
- Step 2/30 : RUN apt-get update && apt-get install --yes --no-install-recommends locales && apt-get purge && apt-get clean && rm -rf /var/lib/apt/lists/*
- ---> Using cache
- ---> f08599fe08cd
- Step 3/30 : RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen
- ---> Using cache
- ---> 1132d0768a86
- Step 4/30 : ENV LC_ALL en_US.UTF-8
- ---> Using cache
- ---> 2a88d7ef4985
- Step 5/30 : ENV LANG en_US.UTF-8
- ---> Using cache
- ---> c5a8b2b2a0ba
- Step 6/30 : ENV LANGUAGE en_US.UTF-8
- ---> Using cache
- ---> 90613f2ca049
- Step 7/30 : ENV SHELL /bin/bash
- ---> Using cache
- ---> 6f01a1a70164
- Step 8/30 : ARG NB_USER
- ---> Using cache
- ---> 4adebc5295c1
- Step 9/30 : ARG NB_UID
- ---> Using cache
- ---> 88c3372b8834
- Step 10/30 : ENV USER ${NB_USER}
- ---> Using cache
- ---> a92c89999862
- Step 11/30 : ENV HOME /home/${NB_USER}
- ---> Using cache
- ---> 87389e565b56
- Step 12/30 : RUN adduser --disabled-password --gecos "Default user" --uid ${NB_UID} ${NB_USER}
- ---> Using cache
- ---> b30a4d002e99
- Step 13/30 : WORKDIR ${HOME}
- ---> Using cache
- ---> a56d5d5b2212
- Step 14/30 : RUN apt-get update && apt-get install --yes --no-install-recommends less npm unzip && apt-get purge && apt-get clean && rm -rf /var/lib/apt/lists/*
- ---> Using cache
- ---> 756ef9e80dde
- Step 15/30 : RUN apt-get update && apt-get install --yes python3 python3-dev python3-venv && apt-get purge && apt-get clean && rm -rf /var/lib/apt/lists/*
- ---> Using cache
- ---> 3c92a106698e
- Step 16/30 : EXPOSE 8888
- ---> Using cache
- ---> aaafb8afba2f
- Step 17/30 : ENV APP_BASE /srv
- ---> Using cache
- ---> 4917e5edc26a
- Step 18/30 : ENV VENV_PATH ${APP_BASE}/venv
- ---> Using cache
- ---> 31e78ba7ea2c
- Step 19/30 : ENV NB_PYTHON_PREFIX ${VENV_PATH}
- ---> Using cache
- ---> e9117c3653d4
- Step 20/30 : ENV PATH ${VENV_PATH}/bin:${PATH}
- ---> Using cache
- ---> 0d46c981e88a
- Step 21/30 : COPY python/requirements.frozen.txt /tmp/requirements.frozen.txt
- ---> Using cache
- ---> a216f1086654
- Step 22/30 : RUN mkdir -p ${VENV_PATH} && chown -R ${NB_USER}:${NB_USER} ${VENV_PATH}
- ---> Using cache
- ---> 4917f1f51cc0
- Step 23/30 : USER ${NB_USER}
- ---> Using cache
- ---> f2a745652e00
- Step 24/30 : RUN python3 -m venv ${VENV_PATH}
- ---> Using cache
- ---> ea740be5f74b
- Step 25/30 : RUN pip install --no-cache-dir -r /tmp/requirements.frozen.txt && jupyter nbextension enable --py widgetsnbextension --sys-prefix && jupyter serverextension enable --py jupyterlab --sys-prefix && jupyter serverextension enable nteract_on_jupyter --sys-prefix
- ---> Using cache
- ---> 33bfe42baf62
- Step 26/30 : USER root
- ---> Using cache
- ---> 69c5ad332afd
- Step 27/30 : COPY src/ ${HOME}
- ---> Using cache
- ---> bd62ede50a7b
- Step 28/30 : RUN chown -R ${NB_USER}:${NB_USER} ${HOME}
- ---> Using cache
- ---> 579b331c1d7e
- Step 29/30 : USER ${NB_USER}
- ---> Using cache
- ---> 6d2285300afb
- Step 30/30 : CMD ["jupyter", "notebook", "--ip", "0.0.0.0"]
- ---> Using cache
- ---> a7e87fdaa730
- {"aux": {"ID": "sha256:a7e87fdaa730f9cdc777071ac0a8116c77726adf2055b40b9c6e3d332f9a04e1"}}Successfully built a7e87fdaa730
- Successfully tagged r2d-2fvar-2ffolders-2f7l-2fwcc2bqsd5pd48ljr1qm63nym0000gn-2ft-2ftmpthrb6rsj1521595452:latest
- Traceback (most recent call last):
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/api/client.py", line 225, in _raise_for_status
- response.raise_for_status()
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/requests/models.py", line 935, in raise_for_status
- raise HTTPError(http_error_msg, response=self)
- requests.exceptions.HTTPError: 502 Server Error: Bad Gateway for url: http+docker://localhost/v1.37/containers/69290299a6f9800a499c0a64d8ebcbc8652eb76134372b1e9be3d5a737a193d3/start
- During handling of the above exception, another exception occurred:
- Traceback (most recent call last):
- File "/Users/willingc/code/jhub/repo2docker/bin/repo2docker", line 11, in <module>
- load_entry_point('jupyter-repo2docker', 'console_scripts', 'repo2docker')()
- File "/Users/willingc/code/jhub/repo2docker/repo2docker/__main__.py", line 7, in main
- f.start()
- File "/Users/willingc/code/jhub/repo2docker/repo2docker/app.py", line 636, in start
- self.run_image()
- File "/Users/willingc/code/jhub/repo2docker/repo2docker/app.py", line 542, in run_image
- environment=self.environment,
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/models/containers.py", line 762, in run
- container.start()
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/models/containers.py", line 364, in start
- return self.client.api.start(self.id, **kwargs)
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/utils/decorators.py", line 19, in wrapped
- return f(self, resource_id, *args, **kwargs)
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/api/container.py", line 1049, in start
- self._raise_for_status(res)
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/api/client.py", line 227, in _raise_for_status
- raise create_api_error_from_http_exception(e)
- File "/Users/willingc/code/jhub/repo2docker/lib/python3.6/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
- raise cls(e, response=response, explanation=explanation)
- docker.errors.APIError: 502 Server Error: Bad Gateway ("b'Mounts denied: \r\nThe path /var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpthrb6rsj\r\nis not shared from OS X and is not known to Docker.\r\nYou can configure shared paths from Docker -> Preferences... -> File Sharing.\r\nSee https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.\r\n.'")
- FAILED
- tests/volumes.py::test_volume_relpath Using PythonBuildPack builder
- Step 1/30 : FROM buildpack-deps:artful
- ---> 766d0aa6a29e
- Step 2/30 : RUN apt-get update && apt-get install --yes --no-install-recommends locales && apt-get purge && apt-get clean && rm -rf /var/lib/apt/lists/*
- ---> Using cache
- ---> f08599fe08cd
- Step 3/30 : RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && locale-gen
- ---> Using cache
- ---> 1132d0768a86
- Step 4/30 : ENV LC_ALL en_US.UTF-8
- ---> Using cache
- ---> 2a88d7ef4985
- Step 5/30 : ENV LANG en_US.UTF-8
- ---> Using cache
- ---> c5a8b2b2a0ba
- Step 6/30 : ENV LANGUAGE en_US.UTF-8
- ---> Using cache
- ---> 90613f2ca049
- Step 7/30 : ENV SHELL /bin/bash
- ---> Using cache
- ---> 6f01a1a70164
- Step 8/30 : ARG NB_USER
- ---> Using cache
- ---> 4adebc5295c1
- Step 9/30 : ARG NB_UID
- ---> Using cache
- ---> 88c3372b8834
- Step 10/30 : ENV USER ${NB_USER}
- ---> Using cache
- ---> a92c89999862
- Step 11/30 : ENV HOME /home/${NB_USER}
- ---> Using cache
- ---> 87389e565b56
- Step 12/30 : RUN adduser --disabled-password --gecos "Default user" --uid ${NB_UID} ${NB_USER}
- ---> Using cache
- ---> b30a4d002e99
- Step 13/30 : WORKDIR ${HOME}
- ---> Using cache
- ---> a56d5d5b2212
- Step 14/30 : RUN apt-get update && apt-get install --yes --no-install-recommends less npm unzip && apt-get purge && apt-get clean && rm -rf /var/lib/apt/lists/*
- ---> Using cache
- ---> 756ef9e80dde
- Step 15/30 : RUN apt-get update && apt-get install --yes python3 python3-dev python3-venv && apt-get purge && apt-get clean && rm -rf /var/lib/apt/lists/*
- ---> Using cache
- ---> 3c92a106698e
- Step 16/30 : EXPOSE 8888
- ---> Using cache
- ---> aaafb8afba2f
- Step 17/30 : ENV APP_BASE /srv
- ---> Using cache
- ---> 4917e5edc26a
- Step 18/30 : ENV VENV_PATH ${APP_BASE}/venv
- ---> Using cache
- ---> 31e78ba7ea2c
- Step 19/30 : ENV NB_PYTHON_PREFIX ${VENV_PATH}
- ---> Using cache
- ---> e9117c3653d4
- Step 20/30 : ENV PATH ${VENV_PATH}/bin:${PATH}
- ---> Using cache
- ---> 0d46c981e88a
- Step 21/30 : COPY python/requirements.frozen.txt /tmp/requirements.frozen.txt
- ---> Using cache
- ---> a216f1086654
- Step 22/30 : RUN mkdir -p ${VENV_PATH} && chown -R ${NB_USER}:${NB_USER} ${VENV_PATH}
- ---> Using cache
- ---> 4917f1f51cc0
- Step 23/30 : USER ${NB_USER}
- ---> Using cache
- ---> f2a745652e00
- Step 24/30 : RUN python3 -m venv ${VENV_PATH}
- ---> Using cache
- ---> ea740be5f74b
- Step 25/30 : RUN pip install --no-cache-dir -r /tmp/requirements.frozen.txt && jupyter nbextension enable --py widgetsnbextension --sys-prefix && jupyter serverextension enable --py jupyterlab --sys-prefix && jupyter serverextension enable nteract_on_jupyter --sys-prefix
- ---> Using cache
- ---> 33bfe42baf62
- Step 26/30 : USER root
- ---> Using cache
- ---> 69c5ad332afd
- Step 27/30 : COPY src/ ${HOME}
- ---> Using cache
- ---> bd62ede50a7b
- Step 28/30 : RUN chown -R ${NB_USER}:${NB_USER} ${HOME}
- ---> Using cache
- ---> 579b331c1d7e
- Step 29/30 : USER ${NB_USER}
- ---> Using cache
- ---> 6d2285300afb
- Step 30/30 : CMD ["jupyter", "notebook", "--ip", "0.0.0.0"]
- ---> Using cache
- ---> a7e87fdaa730
- {"aux": {"ID": "sha256:a7e87fdaa730f9cdc777071ac0a8116c77726adf2055b40b9c6e3d332f9a04e1"}}Successfully built a7e87fdaa730
- Successfully tagged r2d-2fvar-2ffolders-2f7l-2fwcc2bqsd5pd48ljr1qm63nym0000gn-2ft-2ftmpv77lzx631521595453:latest
- PASSED
- ====================================================== FAILURES =======================================================
- ______________________________________________________ test_env _______________________________________________________
- def test_env():
- """
- Validate that you can define environment variables
- """
- ts = str(time.time())
- with tempfile.TemporaryDirectory() as tmpdir:
- username = os.getlogin()
- subprocess.check_call([
- 'repo2docker',
- '-v', '{}:/home/{}'.format(tmpdir, username),
- '-e', 'FOO={}'.format(ts),
- '--env', 'BAR=baz',
- '--',
- tmpdir,
- '/bin/bash',
- > '-c', 'echo -n $FOO > ts && echo -n $BAR > bar'
- ])
- tests/env.py:24:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- popenargs = (['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmp6hraos6f:/home/willingc', '-e', 'FOO=1521593937.8736541', '--env', ...],)
- kwargs = {}, retcode = 1
- cmd = ['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmp6hraos6f:/home/willingc', '-e', 'FOO=1521593937.8736541', '--env', ...]
- def check_call(*popenargs, **kwargs):
- """Run command with arguments. Wait for command to complete. If
- the exit code was zero then return, otherwise raise
- CalledProcessError. The CalledProcessError object will have the
- return code in the returncode attribute.
- The arguments are the same as for the call function. Example:
- check_call(["ls", "-l"])
- """
- retcode = call(*popenargs, **kwargs)
- if retcode:
- cmd = kwargs.get("args")
- if cmd is None:
- cmd = popenargs[0]
- > raise CalledProcessError(retcode, cmd)
- E subprocess.CalledProcessError: Command '['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmp6hraos6f:/home/willingc', '-e', 'FOO=1521593937.8736541', '--env', 'BAR=baz', '--', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmp6hraos6f', '/bin/bash', '-c', 'echo -n $FOO > ts && echo -n $BAR > bar']' returned non-zero exit status 1.
- /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py:291: CalledProcessError
- __________________________________________ test_memlimit_nondockerfile_fail ___________________________________________
- def test_memlimit_nondockerfile_fail():
- """
- Test if memory limited builds are working for non dockerfile builds
- """
- basedir = os.path.dirname(__file__)
- > assert not does_build(
- os.path.join(basedir, 'memlimit/non-dockerfile'),
- 128,
- 256
- )
- E AssertionError: assert not True
- E + where True = does_build('/Users/willingc/code/jhub/repo2docker/tests/memlimit/non-dockerfile', 128, 256)
- E + where '/Users/willingc/code/jhub/repo2docker/tests/memlimit/non-dockerfile' = <function join at 0x101d1e6a8>('/Users/willingc/code/jhub/repo2docker/tests', 'memlimit/non-dockerfile')
- E + where <function join at 0x101d1e6a8> = <module 'posixpath' from '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/posixpath.py'>.join
- E + where <module 'posixpath' from '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/posixpath.py'> = os.path
- tests/memlimit.py:54: AssertionError
- ____________________________________________ test_memlimit_dockerfile_fail ____________________________________________
- def test_memlimit_dockerfile_fail():
- """
- Test if memory limited builds are working for dockerfile builds
- """
- basedir = os.path.dirname(__file__)
- > assert not does_build(
- os.path.join(basedir, 'memlimit/dockerfile'),
- 128,
- 256
- )
- E AssertionError: assert not True
- E + where True = does_build('/Users/willingc/code/jhub/repo2docker/tests/memlimit/dockerfile', 128, 256)
- E + where '/Users/willingc/code/jhub/repo2docker/tests/memlimit/dockerfile' = <function join at 0x101d1e6a8>('/Users/willingc/code/jhub/repo2docker/tests', 'memlimit/dockerfile')
- E + where <function join at 0x101d1e6a8> = <module 'posixpath' from '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/posixpath.py'>.join
- E + where <module 'posixpath' from '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/posixpath.py'> = os.path
- tests/memlimit.py:71: AssertionError
- ___________________________________________ test_all_port_mapping_response ____________________________________________
- def test_all_port_mapping_response():
- """
- Deploy container and test if all port expose works as expected
- """
- builddir = os.path.dirname(__file__)
- with tempfile.TemporaryDirectory() as tmpdir:
- username = os.getlogin()
- # Deploy a test container using r2d in a subprocess
- # Added the -v volumes to be able to poll for changes within the container from the
- # host (In this case container starting up)
- proc = subprocess.Popen(['repo2docker',
- "--image-name",
- "testallport:0.1",
- '-P',
- '-v', '{}:/home'.format(tmpdir),
- '--user-id', str(os.geteuid()),
- '--user-name', username,
- '.',
- '/bin/bash', '-c', 'echo \'hi\' > /home/ts && python -m http.server 52000'],
- cwd=builddir + "/../",
- stderr=subprocess.STDOUT)
- try:
- # Wait till docker builds image and starts up
- while not os.path.exists(os.path.join(tmpdir, 'ts')):
- if proc.poll() is not None:
- # Break loop on errors from the subprocess
- > raise Exception("Process running r2d exited")
- E Exception: Process running r2d exited
- tests/ports.py:95: Exception
- ____________________________________________ test_port_mapping_random_port ____________________________________________
- def test_port_mapping_random_port():
- """
- Test a simple random port bind
- """
- port = str(random.randint(50000, 51000))
- host = None
- > read_port_mapping_response(host, port)
- tests/ports.py:119:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- host = 'localhost', port = '50641', protocol = None
- def read_port_mapping_response(host, port, protocol = None):
- """
- Deploy container and test if port mappings work as expected
- Args:
- host: the host interface to bind to.
- port: the random host port to bind to
- protocol: the protocol to use valid values /tcp or /udp
- """
- builddir = os.path.dirname(__file__)
- port_protocol = '8000'
- if protocol:
- port_protocol += protocol
- host_port = port
- if host:
- host_port = host + ':' + port
- else:
- host = 'localhost'
- with tempfile.TemporaryDirectory() as tmpdir:
- username = os.getlogin()
- # Deploy a test container using r2d in a subprocess
- # Added the -v volumes to be able to poll for changes within the container from the
- # host (In this case container starting up)
- proc = subprocess.Popen(['repo2docker',
- '-p',
- host_port + ':' + port_protocol,
- '-v', '{}:/home'.format(tmpdir),
- '--user-id', str(os.geteuid()),
- '--user-name', username,
- '.',
- '/bin/bash', '-c', 'echo \'hi\' > /home/ts && python -m http.server 8000'],
- cwd=builddir + "/../",
- stderr=subprocess.STDOUT)
- try:
- # Wait till docker builds image and starts up
- while not os.path.exists(os.path.join(tmpdir, 'ts')):
- if proc.poll() is not None:
- # Break loop on errors from the subprocess
- > raise Exception("Process running r2d exited")
- E Exception: Process running r2d exited
- tests/ports.py:52: Exception
- _______________________________________ test_port_mapping_particular_interface ________________________________________
- def test_port_mapping_particular_interface():
- """
- Test if binding to a single interface is possible
- """
- port = str(random.randint(50000, 51000))
- host = '127.0.0.1'
- > read_port_mapping_response(host, port)
- tests/ports.py:128:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- host = '127.0.0.1', port = '50793', protocol = None
- def read_port_mapping_response(host, port, protocol = None):
- """
- Deploy container and test if port mappings work as expected
- Args:
- host: the host interface to bind to.
- port: the random host port to bind to
- protocol: the protocol to use valid values /tcp or /udp
- """
- builddir = os.path.dirname(__file__)
- port_protocol = '8000'
- if protocol:
- port_protocol += protocol
- host_port = port
- if host:
- host_port = host + ':' + port
- else:
- host = 'localhost'
- with tempfile.TemporaryDirectory() as tmpdir:
- username = os.getlogin()
- # Deploy a test container using r2d in a subprocess
- # Added the -v volumes to be able to poll for changes within the container from the
- # host (In this case container starting up)
- proc = subprocess.Popen(['repo2docker',
- '-p',
- host_port + ':' + port_protocol,
- '-v', '{}:/home'.format(tmpdir),
- '--user-id', str(os.geteuid()),
- '--user-name', username,
- '.',
- '/bin/bash', '-c', 'echo \'hi\' > /home/ts && python -m http.server 8000'],
- cwd=builddir + "/../",
- stderr=subprocess.STDOUT)
- try:
- # Wait till docker builds image and starts up
- while not os.path.exists(os.path.join(tmpdir, 'ts')):
- if proc.poll() is not None:
- # Break loop on errors from the subprocess
- > raise Exception("Process running r2d exited")
- E Exception: Process running r2d exited
- tests/ports.py:52: Exception
- _____________________________________________ test_port_mapping_protocol ______________________________________________
- def test_port_mapping_protocol():
- """
- Test if a particular protocol can be used
- """
- port = str(random.randint(50000, 51000))
- host = None
- > read_port_mapping_response(host, port, '/tcp')
- tests/ports.py:137:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- host = 'localhost', port = '50248', protocol = '/tcp'
- def read_port_mapping_response(host, port, protocol = None):
- """
- Deploy container and test if port mappings work as expected
- Args:
- host: the host interface to bind to.
- port: the random host port to bind to
- protocol: the protocol to use valid values /tcp or /udp
- """
- builddir = os.path.dirname(__file__)
- port_protocol = '8000'
- if protocol:
- port_protocol += protocol
- host_port = port
- if host:
- host_port = host + ':' + port
- else:
- host = 'localhost'
- with tempfile.TemporaryDirectory() as tmpdir:
- username = os.getlogin()
- # Deploy a test container using r2d in a subprocess
- # Added the -v volumes to be able to poll for changes within the container from the
- # host (In this case container starting up)
- proc = subprocess.Popen(['repo2docker',
- '-p',
- host_port + ':' + port_protocol,
- '-v', '{}:/home'.format(tmpdir),
- '--user-id', str(os.geteuid()),
- '--user-name', username,
- '.',
- '/bin/bash', '-c', 'echo \'hi\' > /home/ts && python -m http.server 8000'],
- cwd=builddir + "/../",
- stderr=subprocess.STDOUT)
- try:
- # Wait till docker builds image and starts up
- while not os.path.exists(os.path.join(tmpdir, 'ts')):
- if proc.poll() is not None:
- # Break loop on errors from the subprocess
- > raise Exception("Process running r2d exited")
- E Exception: Process running r2d exited
- tests/ports.py:52: Exception
- ______________________________________________________ test_user ______________________________________________________
- def test_user():
- """
- Validate user id and name setting
- """
- ts = str(time.time())
- # FIXME: Use arbitrary login here, We need it now since we wanna put things to volume.
- username = os.getlogin()
- userid = str(os.geteuid())
- with tempfile.TemporaryDirectory() as tmpdir:
- subprocess.check_call([
- 'repo2docker',
- '-v', '{}:/home/{}'.format(tmpdir, username),
- '--user-id', userid,
- '--user-name', username,
- tmpdir,
- '--',
- '/bin/bash',
- > '-c', 'id -u > id && pwd > pwd && whoami > name && echo -n $USER > env_user'.format(ts)
- ])
- tests/users.py:26:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- popenargs = (['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpsz83o3mw:/home/willingc', '--user-id', '501', '--user-name', ...],)
- kwargs = {}, retcode = 1
- cmd = ['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpsz83o3mw:/home/willingc', '--user-id', '501', '--user-name', ...]
- def check_call(*popenargs, **kwargs):
- """Run command with arguments. Wait for command to complete. If
- the exit code was zero then return, otherwise raise
- CalledProcessError. The CalledProcessError object will have the
- return code in the returncode attribute.
- The arguments are the same as for the call function. Example:
- check_call(["ls", "-l"])
- """
- retcode = call(*popenargs, **kwargs)
- if retcode:
- cmd = kwargs.get("args")
- if cmd is None:
- cmd = popenargs[0]
- > raise CalledProcessError(retcode, cmd)
- E subprocess.CalledProcessError: Command '['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpsz83o3mw:/home/willingc', '--user-id', '501', '--user-name', 'willingc', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpsz83o3mw', '--', '/bin/bash', '-c', 'id -u > id && pwd > pwd && whoami > name && echo -n $USER > env_user']' returned non-zero exit status 1.
- /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py:291: CalledProcessError
- _________________________________________________ test_volume_abspath _________________________________________________
- def test_volume_abspath():
- """
- Validate that you can bind mount a volume onto an absolute dir & write to it
- """
- ts = str(time.time())
- with tempfile.TemporaryDirectory() as tmpdir:
- username = os.getlogin()
- subprocess.check_call([
- 'repo2docker',
- '-v', '{}:/home/{}'.format(tmpdir, username),
- '--user-id', str(os.geteuid()),
- '--user-name', username,
- tmpdir,
- '--',
- '/bin/bash',
- > '-c', 'echo -n {} > ts'.format(ts)
- ])
- tests/volumes.py:24:
- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
- popenargs = (['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpthrb6rsj:/home/willingc', '--user-id', '501', '--user-name', ...],)
- kwargs = {}, retcode = 1
- cmd = ['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpthrb6rsj:/home/willingc', '--user-id', '501', '--user-name', ...]
- def check_call(*popenargs, **kwargs):
- """Run command with arguments. Wait for command to complete. If
- the exit code was zero then return, otherwise raise
- CalledProcessError. The CalledProcessError object will have the
- return code in the returncode attribute.
- The arguments are the same as for the call function. Example:
- check_call(["ls", "-l"])
- """
- retcode = call(*popenargs, **kwargs)
- if retcode:
- cmd = kwargs.get("args")
- if cmd is None:
- cmd = popenargs[0]
- > raise CalledProcessError(retcode, cmd)
- E subprocess.CalledProcessError: Command '['repo2docker', '-v', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpthrb6rsj:/home/willingc', '--user-id', '501', '--user-name', 'willingc', '/var/folders/7l/wcc2bqsd5pd48ljr1qm63nym0000gn/T/tmpthrb6rsj', '--', '/bin/bash', '-c', 'echo -n 1521595451.8576698 > ts']' returned non-zero exit status 1.
- /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py:291: CalledProcessError
- ======================================= 9 failed, 36 passed in 4660.89 seconds ========================================
- (repo2docker)
- willingc at Carols-MacBook-Pro in ~/code/jhub/repo2docker on tests-understand [!?$]
- $
Advertisement
Add Comment
Please, Sign In to add comment