I’m working on BB-9938, which requires developing on the edx-ora2 codebase. However, I’m struggling to figure it out with Tutor. edx-ora2 has instructions for developing with the docker devstack, but I can’t find any guide for working with a Tutor devstack.
What I’ve tried so far is along the lines of:
- set up a Tutor master devstack
git clone git@github.com:openedx/edx-ora2tutor mounts add ./edx-ora2- Rebuild the openedx-dev image with tutor and launch the devstack.
This all works fine, and I can immediately see changes I make to the edx-ora2 python code.
However, the difficulty begins when I want to edit the javascript…
I tried installing dependencies and building on my host machine (my workstation), but even with the expected python and node versions, I’m hitting errors building the bundle:
ERROR in ./node_modules/@openedx/paragon/dist/Card/fallback-default.png
Module build failed (from ./node_modules/image-webpack-loader/index.js):
Error: spawn /home/samuel/proj/opencraft/devstack-master/edx-ora2/node_modules/optipng-bin/vendor/optipng ENOENT
Then I tried from within the lms docker container:
host $ tutor dev exec lms bash
lms $ cd /mnt/edx-ora2
lms $ make install
This succeeds, but then the lms fails to run, with the following error:
lms-1 | xmlsec.InternalError: (-1, 'lxml & xmlsec libxml2 library version mismatch')
Next I’ll try only installing the javascript dependencies in the container and see how that goes. But it all feels a little messy, and that still leaves the question of where/how should I run the various tests.
Does anyone have any recommendations? I’m interested to hear your workflows. ![]()
It might be worth contributing back to the edx-ora2 developer guide with updated instructions for Tutor devstacks too. ![]()