USF-IMARS / python-tech-workgroup

IMaRS python technical working group
2 stars 0 forks source link

how to install gpt/seadas/snap on binder? #20

Open 7yl4r opened 3 years ago

7yl4r commented 3 years ago

Can we install the requirements for /opt/snap_6_0/bin/gpt using just the binder config files (ref).

We need to be able to use:

7yl4r commented 3 years ago

hopefully the apt-get "Unable to locate package netcdf-dbg" issue does not show up with these other packages we want to install. Since ncdump isn't critical I suggest we do without it for now and try adding other apt-get packages to the apt.txt to see if they work.

7yl4r commented 3 years ago

We have decided to use GPT from SEADAS.

Seadas has several sets of installation instructions and none of them are particularly pretty:

One complication here is that seadas includes several parts. I think the only part we need is OCSSW - the java-based GUI application is not needed. I think GPT is included as part of OCSSW.

The GPT source code is certainly published somewhere else too, but I wasn't able to easily find the link.


I have previously installed seadas in an automated way using puppet. We should be able to leverage a lot of what I learned from that and apply it here.

I did this install two ways and I don't recall which was better:

I will take a look at these and make an attempt at porting this puppet code into a docker configuration... hopefully before our meeting next week.

7yl4r commented 3 years ago

Although the script looks good I have run into a problem which I am about to hack around messily: The ocssw installer will not install to a directory within an existing git repository.

jovyan@jupyter-usf-2dimars-2dl2-2dprocessing-2d2n6677hv:~$ ./postBuild 
mkdir: cannot create directory ‘/home/jovyan/ocssw_install’: File exists
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 34537  100 34537    0     0  75739      0 --:--:-- --:--:-- --:--:-- 75739
aborting - /home/jovyan/ocssw_install is a development git repository.

Since binder builds the whole home directory from a git repo and the user has no permissions outside of that dir the best workaround I can think of is to un-git-ify the home directory. I don't know what effects this might have on binder & jupyter notebook. It is possible that it will be fine. If things work for a while without :fire: then we can call this closed.

7yl4r commented 2 years ago

Now that ocssw is installing properly we are able to do the basic headless processing provided by seadas. Unfortunately, GPT is not included in there. GPT is installed as part of seadas and as a part of BEAM. GPT is evidently a name given for a wrapper around GPF (older BEAM java code here, newer SNAP GPT wrapper java here).

There may be a way to install and use the "Graph processing framework" without dealing with the full (and unwieldy) seadas installation process. Alternatively: we could try installing SNAP (BEAM's successor). SNAP CLI installation is discussed here. Actual instructions on how to install SNAP are... surprisingly hard to find... somewhere I'm sure. 😆