srirampc commented on issue #33:
URL: 
https://github.com/apache/airavata-cerebrum/issues/33#issuecomment-4734195015

   @girip 
   
   For the v1 model, in addition to cerebrum, there is additional code, data 
files, and package 
   dependencies specific to building and running the model.
   The additional files/dependencies are not necessary for other notebooks 
   (say for example, the Sonata Editor notebook).
   The requisite code and data files are present in examples/v1 directory and 
the user is
   expected to install this dependencies via the examples/environment.yaml file 
(as noted in the examples/README.md).
   If the user clones the repository, and runs the notebooks in the examples/v1 
directory, 
   it pickups the code in the sub-directories. 
   This is basically how BMTK tutorial notebooks work -- separate the 
functionality from the examples with examples as notebook.
   
   This is the reason why if the user runs the code as it is outside notebook, 
they fail. 
   
   In order to make this available at command line, we can consider the 
following options:
   
   1. Include the code of v1 along with cerebrum: We (Me and Dimuthu) 
considered this but this
   makes cerebrum depend upon NEST and BMTK,  increasing the dependency 
footprint of cerebrum for those who are not interested in V1. So, by default, 
these dependencies 
   are not added.
   
   2. Create an additional pip package containing the v1 code and data: 
Advantage is that the user need not setup the environment and  can install by 
just using pip install, but the disadvantages are (1) the developer has to 
build this package every time when there is a release.  (2) the data file paths 
have to be handled properly as they will be in site-packages path, and either  
the user need to figure out how mange the output files (or) additional code is 
required to copy the data files from packages to the current directory where 
the user intends to run the model.
   
   3. Keep the v1 model as a downloadable as a set of files in github/relases: 
Advantage is that (1) all the code and data are in  the same location, (2) the 
user decides in which directory they want to keep the model and its files;
   Disadvantage is that user still have to install other additional 
dependencies.
   
   4. Use the github repo itself: Provide instructions to clone the github 
repository,
    install the dependencies, and request the user to run in the code only in 
the examples/v1 directory.
   
   What are your thoughts ? (The above is also applicable for the issue #34)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to