Developing NOMAD on macOS


I’m trying to add SOAP descriptors to NOMAD and as a first step I’ve been trying to get an Oasis working on my macbook. I’ve followed the Developing NOMAD instructions but had to make a few changes

  • Removed mdtraj==1.9.6 from requirements.txt as it wouldn’t build
  • changed version to mongoengine==0.24.2 in requirements.txt as it wouldn’t build with error “use_2to3” is invalid. I’m guessing this might cause me problems later on but I’m ignoring it for now!

Then, when I run

nomad dev units > gui/src/units.js

I end up with a very different gui/src/units.js than the one I find in the gitlab and if I try to run the gui with

yarn start
(I also needed export NODE_OPTIONS=--openssl-legacy-provider )

I get an errror

Failed to compile. ./src/components/archive/ArchiveBrowser.js Attempted import error: 'Quantity' is not exported from '../../units' (imported as 'Q').

If I just copy gui/src/units.js directly from the gitlab the gui compiles and launches fine.

But then if I click on “Explore” I see the error “Cannot reach NOMAD, please try again later.” and I also can’t login (using credentials I know work).

If I inspect the page I see this but it doesn’t mean much to me! Any idea what’s going on?

If it helps, I’m running the infrastructure using
docker-compose up -d mongo elastic rabbitmq

and I’m launching the app and worker separately using

nomad admin run app
nomad admin run worker

I’m particularly unclear on

  1. what should go in nomad.yaml?
  2. Do I need to be running any services other than those listed above?
  3. Are there any settings etc. that need to be set? Atm I’ve done nothing other than follow the Developing NOMAD instructions up to and including “Running NOMAD”

Thanks for any help with this!

Thanks for using NOMAD and for your report. A few comments that might help:

  • you are referring to old documentation (please let is know where you found the link). What branch are you using? For the develop branch (or v1.1.x tag) that you should be to be using, please use the documentation of our “beta” installation: Getting started - NOMAD Documentation
  • the nomad dev units > gui/src/units.js should have been nomad dev units > gui/src/unitsData.js. This could explain the units related JS errors.
  • running app and worker is enough
  • you are running ops/docker-compose/infrasturcture correctly
  • I am not sure where the COORS errors come from. The API should include the right access-control-allow-origin in all responses. Could you verify this via the network tab in the chrome’s dev tools?

Hi Markus, thanks for the fast reply.

After following the correct instructions everything seems to be working! Thanks very much.

  • I was starting from the legacy version of the NOMAD page (saved in my favourites) and that’s how I ended up on the old documentation.