Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is there a way to install https://github.com/ibleducation/jupyter-edx-grader-xblock? #84

Closed
roblhibbard opened this issue Nov 2, 2018 · 12 comments

Comments

@roblhibbard
Copy link

commented Nov 2, 2018

It looks like this is setup to install on a standard edX install. Just checking to see if it could be installed on this build.

thank you,

Robert

@regisb

This comment has been minimized.

Copy link
Collaborator

commented Nov 2, 2018

I am most certain it can. Have you tried it?

@regisb

This comment has been minimized.

Copy link
Collaborator

commented Nov 2, 2018

Duplicate of #36 (in a way)

@regisb regisb marked this as a duplicate of #36 Nov 2, 2018

@roblhibbard

This comment has been minimized.

Copy link
Author

commented Nov 2, 2018

I did try, but was not sure how to implement. I am new to docker and edX. I ran into issues here with the database migration.
`Database Migration
Run the following as a root user to create the necessary database models:

sudo su edxapp -s /bin/bash
cd ~/edx-platform
source ../venvs/edxapp/bin/activate
./manage.py cms migrate xblock_jupyter_graded --settings=aws`

could not find a work around for this.

thank you,

Robert

@regisb

This comment has been minimized.

Copy link
Collaborator

commented Nov 2, 2018

What you need to do is to build a new openedx image that contains the required XBlock. The easiest way to do so is to fork edx-platform. For instance, I'd fork it to https://github.com/regisb/edx-platform. In this repo, make changes to cms/urls.py, lms/urls.py, cms/envs/common.py, and lms/envs/common.py, as recommended in the xblock readme. Also, add git+https://github.com/ibleducation/jupyter-edx-grader-xblock.git to the requirements/edx:github.in file and run make upgrade.
Commit those changes and push to your repo.

Then, modify openedx-docker/openedx/Dockerfile to point to your own version of edx-platform. For instance, I'd replace https://github.com/edx/edx-platform with https://github.com/regisb/edx-platform.

Be careful which branch you push your changes to: the image is built from the open-release/hawthorn.2 tag, so you should modify this tag and set it to the sha1 of the git commit that contains your changes.

Then, build the docker image:

make build-openedx

Apply migrations:

make databases

And you can run it:

make run

I'm sorry there is no easier way to do this, for now. I've been thinking about alternative, simpler solutions but haven't found any yet.

@roblhibbard

This comment has been minimized.

Copy link
Author

commented Nov 2, 2018

thanks for the reply,
I will give that a go and let you know how it turns out.

@roblhibbard

This comment has been minimized.

Copy link
Author

commented Nov 2, 2018

One more quick question, do I need to be using a ubuntu version 16.04 to make upgrade the edx_platform I forked? I am using Ubuntu 18.04, I am getting an error.
Makefile:42: recipe for target 'upgrade' failed make: *** [upgrade] Error 1

@regisb

This comment has been minimized.

Copy link
Collaborator

commented Nov 5, 2018

Can you please post the complete error log? Otherwise it's difficult to understand the full issue. But I don'work with Ubuntu 18.04 and I believe I can run make upgrade with no problem.

@roblhibbard

This comment has been minimized.

Copy link
Author

commented Nov 6, 2018

sorry for the late reply,

after more research it looks like this xblock will not run on the Hawthorn version. I loaded ubuntu 16.04 and the Ginkgo version and it allowed it to install, but still seemed to cause some errors. Something with django version 1.9. So I have scrapped this plugin completely until a possible upgrade in the future. So I am loading this version back onto a ubuntu 16.04 server.

@regisb

This comment has been minimized.

Copy link
Collaborator

commented Nov 8, 2018

Ok, so I'll just close this issue. Thanks for investigating!

@regisb regisb closed this Nov 8, 2018

@regisb regisb added the wontfix label Nov 8, 2018

regisb added a commit that referenced this issue Nov 13, 2018

@roblhibbard

This comment has been minimized.

Copy link
Author

commented Jan 6, 2019

Hello again,

It looks like they have made this available for the Hawthorne. ibleducation/jupyter-edx-grader-xblock#8

Would I use the same method described above for this previous issue, to give this another try. I did use the private.txt to pull the git+https://github.com/ibleducation/jupyter-edx-grader-xblock.git, I will still need to add the other information to the following:

LMS/CMS Setup
In the following two files:

/edx/app/edxapp/edx-platform/lms/urls.py
/edx/app/edxapp/edx-platform/cms/urls.py
Add the following to the bottom of each file:

# Jupyter Graded XBlock Endpoints
urlpatterns += (
    url(r'^api/jupyter_graded/', include('xblock_jupyter_graded.rest.urls')),
)
In the following two files:

/edx/app/edxapp/edx-platform/lms/envs/common.py
/edx/app/edxapp/edx-platform/cms/envs/common.py
Add the following at the bottom of the INSTALLED_APPS section:

    # Jupyter Notebook Graded XBlock
    'xblock_jupyter_graded',

thank you,

Robert

@regisb

This comment has been minimized.

Copy link
Collaborator

commented Jan 6, 2019

Yes, this looks about right. Note that since you fork the edx-platform repository, you don't really need to modify the private.txt requirements file; instead, you can directly modify the edx-platform/requirements/ files. You decide :)

@roblhibbard

This comment has been minimized.

Copy link
Author

commented Jan 6, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.