mirror of
https://github.com/ChristianLight/tutor.git
synced 2025-01-11 09:35:06 +00:00
48ca6eb4b0
When we were changing unit titles in the CMS, the changes were taking a long time to be reflected in the LMS. That's because the cache key that corresponds to the course structure was not being updated. It was the responsibility of an asynchronous LMS celery worker to update this cache entry. However, this was impossible in most cases because tasks triggered in the CMS were only processed by CMS workers. That is, unless we are using a custom celery router: https://celery.readthedocs.io/en/latest/userguide/routing.html#routers This is what edx-platform does in the devstack: certain CMS tasks are forwarded both to CMS and to LMS workers. This is achieved by defining the ALTERNATE_WORKER_QUEUES="lms" django setting in the CMS. Adding this setting to Tutor solves the problem in production. However, in development mode Open edX runs without workers (`CELERY_ALWAYS_EAGER=True`). This means that the course structure will not be automatically updated when running `tutor dev` commands, which is a shame. The alternative is to define the "block_structure.invalidate_cache_on_publish" waffle switch. This can be done from the UI (in /admin/waffle/switch/add/) or by running: tutor dev run lms ./manage.py lms waffle_switch block_structure.invalidate_cache_on_publish on --create However, this flag seems to slow down access to the LMS for the first user who tries to access the course after it has been updated. Close #302 |
||
---|---|---|
.github/ISSUE_TEMPLATE | ||
bin | ||
docs | ||
requirements | ||
tests | ||
tutor | ||
.gitignore | ||
.gitlab-ci.yml | ||
.travis.yml | ||
CHANGELOG.md | ||
CONTRIBUTING.rst | ||
Dockerfile | ||
LICENSE.txt | ||
Makefile | ||
MANIFEST.in | ||
README.rst | ||
setup.py | ||
tutor.spec |
.. _readme_intro_start: Tutor: the docker-based Open edX distribution designed for peace of mind ======================================================================== | .. image:: https://overhang.io/static/img/tutor-logo.svg :alt: Tutor logo :width: 500px :align: center | .. image:: https://img.shields.io/travis/overhangio/tutor.svg?label=Release%20build&style=flat-square :alt: Release build status :target: https://travis-ci.org/overhangio/tutor .. image:: https://img.shields.io/badge/docs-current-blue.svg?style=flat-square :alt: Documentation :target: https://docs.tutor.overhang.io .. image:: https://img.shields.io/github/issues/overhangio/tutor.svg?style=flat-square :alt: GitHub issues :target: https://github.com/overhangio/tutor/issues .. image:: https://img.shields.io/github/issues-closed/overhangio/tutor.svg?colorB=brightgreen&style=flat-square :alt: GitHub closed issues :target: https://github.com/overhangio/tutor/issues?q=is%3Aclosed .. image:: https://img.shields.io/github/license/overhangio/tutor.svg?style=flat-square :alt: AGPL License :target: https://www.gnu.org/licenses/agpl-3.0.en.html **Tutor** is a docker-based `Open edX <https://openedx.org>`_ distribution, both for production and local development. The goal of Tutor is to make it easy to deploy, customize, upgrade and scale Open edX. Tutor is reliable, fast, extensible, and it is already used by dozens of Open edX platforms around the world. Do you need professional assistance setting up or managing your Open edX platform? Overhang.IO offers online support as part of its `Long Term Support (LTS) offering <https://overhang.io/tutor/lts>`__. Features -------- * 100% `open source <https://github.com/overhangio/tutor>`__ * Runs entirely on Docker * World-famous 1-click `installation and upgrades <https://docs.tutor.overhang.io/install.html>`_ * Extensible architecture with `plugins <https://docs.tutor.overhang.io/plugins.html>`_ * Works with `Kubernetes <https://docs.tutor.overhang.io/k8s.html>`_ * No technical skill required with the `1-click Tutor AWS image <https://docs.tutor.overhang.io/install.html#cloud-deployment>`_ * Professional support and premium plugins available with `Tutor Long Term Support (LTS) <https://overhang.io/tutor/lts>`__ .. _readme_intro_end: .. image:: ./docs/img/quickstart.gif :alt: Tutor local quickstart :target: https://terminalizer.com/view/91b0bfdd557 Quickstart ---------- 1. Install the `latest stable release <https://github.com/overhangio/tutor/releases>`_ of Tutor 2. Run ``tutor local quickstart`` 3. You're done! Documentation ------------- Extensive documentation is available online: https://docs.tutor.overhang.io/ .. _readme_support_start: Support ------- To get community support, go to the official discussion forums: https://discuss.overhang.io. For official support, please subscribe to a Long Term Support (LTS) license at https://overhang.io/tutor/lts. .. _readme_support_end: .. _readme_contributing_start: Contributing ------------ We are very much open to new ideas and features for Tutor. If you have an improvement idea, feel free to first discuss it on the `Tutor forums <https://discuss.overhang.io>`_. If you are not quite familiar with Open edX or if you need technical advice, the forums are a great place to start, too. Did you find an issue with Tutor? Please first make sure that it's related to Tutor, and not an upstream issue with Open edX. Then, `open an issue on Github <https://github.com/overhangio/tutor/issues/new/choose>`_. `Pull requests <https://github.com/overhangio/tutor/pulls>`_ will be happily examined, too! .. _readme_contributing_end: