Package: jupyter-openbis-extension
Jupyter-OpenBIS-ExtensionRequirementsThe jupyter-openbis-extension needs at leastPython 3.3in order to run. The Jupyter notebook server starts this extension during startup and must therefore run under the same Python version. The kernel can be anything (Python 2.7, Julia, R, Perl...)This extension has been successfully tested with Safari 12.0.3, Chrome 72.0 and Firefox 66.0. There is a known incompatibility before Firefox 61.0b13 with Tornado > 6.x (the webserver used by Jupyter). If you encounter such incompatibilities, try to downgrade to Tornado 5.1.1. However, Tornado 5.1.1 will not work with Jupyter Lab 3.Install the extensionIf you haven't done yet: download the latest jupyter-openbis-extension from pip. It will automatically install the various dependencies, e.g. Pandas and NumPy.pip install --upgrade jupyter-openbis-extensionCreate a configuration fileThis step is not really necessary, as you can define openBIS connections within the Jupyter notebook. However, if you need to connect to the same openBIS connections many times, this will become convenient.
Create a fileopenbis-connections.yaml. It should contain connection information to your server(s), for example:connections:
    - name                : TEST local openBIS instance
      url                 : https://localhost:8443
      verify_certificates : false
      username            : username
      password            : password
    - name                : PRODUCTION openBIS instance
      url                 : https://openbis.example.com
      verify_certificates : true
      username            : usernameNote  1: You do not need neither username nor password. With the current version, you are able to enter username and password directly from within a Jupyter notebook.Note 2: Place this file in any of these directories (on Mac OS X):/Users/your_username/jupyter-openbis-extension/notebooks
/Users/your_username/.jupyter
/Users/your_username/.pyenv/versions/3.6.0/etc/jupyter  # or wherever your jupyter installation is located
/usr/local/etc/jupyter
/etc/jupyterThese directories can be found by invoking$ jupyter --pathsTheconfigsection from the output lists the directories where youropenbis-connections.yamlfile should be placed.install Jupyter extension manuallyIn most cases, a simplepip install --upgrade jupyter-openbis-extensionwill do. However, in some cases you need to issue the following commands to get the extension running correctly:$ jupyter serverextension enable --py jupyter-openbis-extension
$ jupyter nbextension install --py jupyter-openbis-extension --user
$ jupyter nbextension enable --py jupyter-openbis-extension --userIf you want to install the extension globally, use--systeminstead of--user.Launching Jupyter notebookNow you are ready to launch Jupyter notebook:$ jupyter notebook --no-browserObserve the terminal. It should tell you which server(s) have been registered.  If you provided a password, it will try to connect:$ jupyter notebook
Registered: https://localhost:8443
Successfully connected to: https://localhost:8443
Registered: https://openbis.example.comCongratulations!You can retry non-successful connections later, directly from the GUI. Copy the the URL given in the output and paste it in your browser. You might also just start Jupyter without the--no-browseroption.Uninstall Jupyter extension$ jupyter serverextension disable --py jupyter-openbis-extension
$ jupyter nbextension disable --py jupyter-openbis-extension --user
$ jupyter nbextension uninstall --py jupyter-openbis-extension --userThis should remove the registrations in the paths listed by the$ jupyter --pathscommand.Development with VagrantIf you want to use a predefined development environment, follow these steps:Install latest version of VirtualBox (https://www.virtualbox.org)Install latest version of Vagrant (https://www.vagrantup.com/downloads.html)vagrant plugin install vagrant-vbguest vagrant-notify-forwarder vagrant-disksizecd vagrantvagrant upAfter the setup is complete, you'll haveJupyter with openBIS extension running athttp://localhost:8888.openBIS running athttps://localhost:8122/openbis/, with credentials admin/password.Object /DEFAULT/DEFAULT with a lot of datasets for testing.Hint: Jupyter creates no log file. Everything is printed onto the console. In order to see this output do the following:vagrant sshscreen -rYou can escape from the screen by typing ^A followed by ^D.clone repository and install extension for development$ git clone git@sissource.ethz.ch:sispub/jupyter-openbis-extension.git
$ cd jupyter-openbis-extension
$ virtualenv venv
$ source venv/bin/activate
(venv) $ pip install -e .The-eis a shortcut for--editable. This means, it will only establish a link to your source folder instead of copying the files. When you do any modifications on the jupyter server extension (the Python files) you need to restart Jupyter notebook in order to see the changes.If you make modifications on the UI (the Javascript files) you only need to reload the page in order the see the effect.How to extend Jupyter Notebooks is describedhere. To distribute Jupyter Extensions, read thisdocumentationcarefully.