Package: cookiecutter-openedx-plugin
Cookiecutter Open edX PluginAnOpen edX Pluginthat implements customizations for deployment toKubernetes. Implements the following:Hooks for openedx Django Signals for 'user_logged_in', 'user_logged_out', 'register_user', 'course_enrollment_created', 'certificate_created' and more. Demonstrates both the legacy, and the newer methodology for subscribing to and listening for the signals.Scaffolding for waffle flag setup, including Django model initializations. These are currently only used to enable Django Signals.Acustom badges backendthat is compatible withdjango-storages backend for Amazon S3Getting StartedInstall using TutorSeeInstalling extra xblocks and requirementstutorconfigsave# to ensure that tutor's root folder system has been created# OPTION 1: install as a PyPi packageecho"cookiecutter-openedx-plugin>=0.1.3">>"$(tutorconfigprintroot)/env/build/openedx/requirements/private.txt"# OPTION 2: install as an editable requirementecho"-e git+https://github.com/cookiecutter-openedx/cookiecutter-openedx-plugin.git">>"$(tutorconfigprintroot)/env/build/openedx/requirements/private.txt"cat"$(tutorconfigprintroot)/env/build/openedx/requirements/private.txt"tutorimagesbuildopenedx
tutorlocalquickstartInstall using Cookiecutter Github Actions WorkflowAdd the following to yourCookiecutter Github Actions Build workflow-name:Add cookiecutter-openedx-pluginuses:openedx-actions/tutor-plugin-build-openedx-add-requirementwith:pip-package:cookiecutter-openedx-pluginpip-package-version:"0.1.3"DocumentationDocumentation is available here:DocumentationSupportTo get community support, go to the official Open edX discussion forum:https://discuss.openedx.org.ContributingWe welcome contributions! cookiecutter-openedx-plugin is part of thecookiecutter-openedxproject. Pull requests are welcome in all repos belonging to this organization. You can also contactLawrence McDanieldirectly.Getting Started With Local developmentUse the same virtual environment that you use for edx-platformEnsure that your Python interpreter to 3.8xinstall black:https://pypi.org/project/black/install flake8:https://flake8.pycqa.org/en/latest/install flake8-coding:https://pypi.org/project/flake8-coding/# Run these from within your edx-platform virtual environmentpython3-mvenvvenvsourcevenv/bin/activatecd/path/to/edx-platform
pipinstall-rrequirements/edx/base.txt
pipinstall-rrequirements/edx/coverage.txt
pipinstall-rrequirements/edx/development.txt
pipinstall-rrequirements/edx/pip-tools.txt
pipinstall-rrequirements/edx/testing.txt
pipinstall-rrequirements/edx/doc.txt
pipinstall-rrequirements/edx/paver.txt

pipinstallpre-commitblackflake8
pre-commitinstallLocal development good practicesrunblackon modified code before committing.runflake8 . --count --select=E9,F63,F7,F82 --show-source --statisticsrunflake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statisticsrunpre-commit run --all-filesbefore pushing. see:https://pre-commit.com/edx-platform dependenciesTo avoid freaky version conflicts in prod it's a good idea to install all of the edx-platform requirements to your local dev virtual environment.requirements/edx/base.txtrequirements/edx/develop.txt,requirements/edx/testing.txtAt a minimum this will give you the full benefit of your IDE's linter.