geodynamics / aspect

A parallel, extensible finite element code to simulate convection in both 2D and 3D models.
https://aspect.geodynamics.org/
Other
227 stars 237 forks source link

Central location for a virtual machine #1840

Open bangerth opened 7 years ago

bangerth commented 7 years ago

Is there a central place where we keep the virtual machine updated? The website refers to http://www.math.clemson.edu/~heister/dealvm/ but that doesn't allow any of us to update the VM whenever we run a tutorial.

@tjhei: If there is no such place, can I just give you a link to the version I used for the latest tutorial in Beijing?

tjhei commented 7 years ago

Is there a central place where we keep the virtual machine updated?

I have instructions on how it is built and all source code at https://github.com/tjhei/dealii-vm

that doesn't allow any of us to update the VM

  1. download the VM
  2. install whatever you want into it
  3. export the VM
  4. profit.

If there is no such place, can I just give you a link to the version I used for the latest tutorial in Beijing?

What do you want me to do with that link? Wouldn't it more sense to put the files of the tutorial somewhere (for example the CIG wiki)?

bangerth commented 7 years ago

I was thinking that everyone who runs a tutorial can/should update the VM somehow. For example, the current VM uses ASPECT 1.5, but I didn't want people to use input files that are not going to work any more with the next release, so I updated the VM I handed out to the current dev version. I also put the input files for the tutorial into it. But there is no way right now for me to push these changes upstream to your VM. So the next person running a tutorial would have to do these steps again from scratch.

tjhei commented 7 years ago

I also put the input files for the tutorial into it. But there is no way right now for me to push these changes upstream to your VM.

We could include a specific repo of tutorial material inside the VM, but realistically, this will change every time a tutorial is given.

So the next person running a tutorial would have to do these steps again from scratch.

Sorry, I don't quite understand. I would assume that every single tutorial that is given would require slightly modified examples, additional slides, etc..

One suggestion: Create a github repo (or include it in the repo I linked above) that contains files to be included. Also add a ./update_tutorial_info.sh that does a git pull. That way you could avoid generating a new VM for a tutorial. At that point you could also tell people to type in git clone <some-url>, though. Was that what you were thinking?

bangerth commented 7 years ago

On 07/10/2017 09:32 AM, Timo Heister wrote:

So the next person running a tutorial would have to do these steps
again from scratch.

Sorry, I don't quite understand. I would assume that every single tutorial that is given would require slightly modified examples, additional slides, etc..

I think that they rather build on each other, with small modifications. At least we will reuse the input files, and I suspect that none of us is interested in going back in ASPECT versions compared to the previous tutorial.

One suggestion: Create a github repo (or include it in the repo I linked above) that contains files to be included. Also add a |./update_tutorial_info.sh| that does a |git pull|. That way you could avoid generating a new VM for a tutorial. At that point you could also tell people to type in |git clone |, though. Was that what you were thinking?

That would work. But it requires user interaction at the beginning of the tutorial, as well as bandwidth and, importantly, if it includes updating source files, compiling a lot of stuff.

It would definitely be easier if there was a way to just update the centrally stored VM, rather than the one every user has.