Coder Social home page Coder Social logo

install's Issues

Introduce the Feel++ shell

@prudhomm commented on Sat Mar 31 2018

we need a script that hides all the gory docker/singularity details.
something like

feelppshell run -c [docker|singularity] <cmd>

without we would enter the docker|singularity shell.

This should be as simple as possible to run a Feel++ application. It would hide the details regarding mounting volumes, passing env variables.

Another feature would be that we wouldn't have to update the documentation each time we add some new docker|singularity features or environment variable to the command line

Here is what I propose:

  • run as --user=$(id -u) systematically
  • mount $home/feel to $home in docker
  • if necessary, install feel++ scripts to install, start and stop feel++ containers
  • default container is feelpp/feelpp-toolboxes
  • to install feel++ container do sh installFeelpp: it starts a container and call it after the latest release by default
  • to start using feel++ do sh startFeelpp : it exec the default feel++ container
  • to stop using feel++ do sh stopFeelpp : it stops and rm the default feel++ container

the implementation is in https://github.com/feelpp/install

/cc @feelpp/mso4sc


@gdolle commented on Sat Mar 31 2018

We should wait next meeting and discuss it before implementing that @prudhomm @vincentchabannes @celineCQ .
See also my point of view feelpp/book.feelpp.org#48 (comment)


@prudhomm commented on Sat Mar 31 2018

what is a Cloud link? in my mind, it is not very complicated what I propose. the objective is to simplify the command line. I fail to see currently what you are proposing.
if you look at the different tools (4fastsim, angiotk, ...) we develop, the docker command line can be quite/very long. Even I, I need to get reminded all the time of the command line. This is just good sense to simplify it.
Now, if you think you have something better to propose, feel free to discuss it here.


@gdolle commented on Sat Mar 31 2018

in my mind, it is not very complicated what I propose. the objective is to simplify the command line. I fail to see currently what you are proposing.

I give my thought there feelpp/book.feelpp.org#48 (comment)

PS: Note also that we had a feel++ shell env for cling already. It should rather be feelcontainer or feelppimg instead.


@prudhomm commented on Sat Mar 31 2018

sure things like aws/ecs are on the roadmap for us at some point. But how about that https://aws.amazon.com/fr/ecs/pricing/? I don't see students or us paying for that in the near future (maybe I missed something).
Again, I fail to see why it is complicated and the maintenance burden regarding the feelpp container or whatever. It is just an encapsulation of the docker/singularity Feel++ command lines.


@prudhomm commented on Sat Mar 31 2018

by the way @gdolle where is the code for the feel++ shell for cling?


@prudhomm commented on Sat Mar 31 2018

what I envision is the following steps for the beginner:

  • wget http://git.com/feelpp/feelpp/feelppsh
  • feelppsh run starts docker with feelpp/toolboxes by default and the user enters the container
    We could do something fancy like
  • feelppsh run -np 4 feelpp_toolbox_cfd_2d --config-file=<url> run the 2D cfd toolbox on 4 processors where <url> points to an example or benchmark directory on, say, Github using #1121

then we would have an option to select the underlying container system and have the possibility to store the selection


@gdolle commented on Sat Mar 31 2018

I said amazon as an example as you can get 1year 750h computation with AWS free tier (there's REDHat/openshift too for example).

My problem is trying to hide container system under a unique command in the documentation.
These container (long) commands are often machine/env specific (e.g gpu driver, mount point, usage), so in my opinion creating a script is not a solution (But maybe ok for students).
But as long as it's clear in the documentation which container system we use, where to find containers, where to find official container system documentation, and an easy way to retrieve the original command hidden, it's ok for me.

PS: Good question for cling. It's a cmake and there was a shell script, but @vincentchabannes did some change in cmake, I've to check.


@prudhomm commented on Mon Apr 23 2018

I have updated the description and provided an implementation that currently works nicely in linux (not mac or windows)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.