6
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-09-23 01:49:01 +00:00
tutor/docs/reference/patches.rst
Régis Behmo 71ed7a8618 feat: refactor hooks API for simplification
The hooks API had several issues which are summarized in this comment:
https://github.com/openedx/wg-developer-experience/issues/125#issuecomment-1313553526

1. "consts" was a bad name
2. "hooks.filters" and "hooks.Filters" could easily be confused
3. docs made it difficult to understand that plugin developers should use the catalog

To address these issues, we:

1. move "consts.py" to "catalog.py"
2. Remove "hooks.actions", "hooks.filters", "hooks.contexts" from the API.
3. re-organize the docs and give better usage examples in the catalog.

This change is a partial fix for https://github.com/openedx/wg-developer-experience/issues/125
2023-01-31 10:17:58 +01:00

355 lines
8.1 KiB
ReStructuredText

.. _patches:
======================
Template patch catalog
======================
This is the list of all patches used across Tutor (outside of any plugin). Alternatively, you can search for patches in Tutor templates by grepping the source code::
git clone https://github.com/overhangio/tutor
cd tutor
git grep "{{ patch" -- tutor/templates
See also `this GitHub search <https://github.com/search?utf8=✓&q={{+patch+repo%3Aoverhangio%2Ftutor+path%3A%2Ftutor%2Ftemplates&type=Code&ref=advsearch&l=&l= 8>`__.
.. patch:: caddyfile
``caddyfile``
=============
File: ``apps/caddy/Caddyfile``
Add here Caddy directives to redirect traffic from the outside to your service containers. You should make use of the "proxy" snippet that simplifies configuration and automatically configures logging. Also, make sure to use the ``$default_site_port`` environment variable to make sure that your service will be accessible both when HTTPS is enabled or disabled. For instance::
{{ MYPLUGIN_HOST }}{$default_site_port} {
import proxy "myservice:8000"
}
See the `Caddy reference documentation <https://caddyserver.com/docs/caddyfile>`__ for more information.
.. patch:: caddyfile-cms
``caddyfile-cms``
=================
File: ``apps/caddy/Caddyfile``
.. patch:: caddyfile-global
``caddyfile-global``
====================
File: ``apps/caddy/Caddyfile``
.. patch:: caddyfile-lms
``caddyfile-lms``
=================
File: ``apps/caddy/Caddyfile``
.. patch:: cms-env
``cms-env``
===========
File: ``apps/openedx/config/cms.env.yml``
.. patch:: cms-env-features
``cms-env-features``
====================
File: ``apps/openedx/config/cms.env.yml``
.. patch:: common-env-features
``common-env-features``
=======================
Files: ``apps/openedx/config/cms.env.yml``, ``apps/openedx/config/lms.env.yml``
.. patch:: dev-docker-compose-jobs-services
``dev-docker-compose-jobs-services``
====================================
File: ``dev/docker-compose.jobs.yml``
.. patch:: k8s-deployments
``k8s-deployments``
===================
File: ``k8s/deployments.yml``
.. patch:: k8s-jobs
``k8s-jobs``
============
File: ``k8s/jobs.yml``
.. patch:: k8s-override
``k8s-override``
================
File: ``k8s/override.yml``
Any Kubernetes resource definition in this patch will override the resource defined by Tutor, provided that their names match. See :ref:`Customizing Kubernetes resources <customizing_kubernetes_sources>` for an example.
.. patch:: k8s-services
``k8s-services``
================
File: ``k8s/services.yml``
.. patch:: k8s-volumes
``k8s-volumes``
===============
File: ``k8s/volumes.yml``
.. patch:: kustomization
``kustomization``
=================
File: ``kustomization.yml``
.. patch:: kustomization-commonlabels
``kustomization-commonlabels``
==============================
File: ``kustomization.yml``
.. patch:: kustomization-configmapgenerator
``kustomization-configmapgenerator``
====================================
File: ``kustomization.yml``
.. patch:: kustomization-patches-strategic-merge
``kustomization-patches-strategic-merge``
=========================================
File: ``kustomization.yml``
This can be used to add more Kustomization patches that make use of the `strategic merge mechanism <https://kubernetes.io/docs/tasks/manage-kubernetes-objects/kustomization/#customizing>`__.
.. patch:: kustomization-resources
``kustomization-resources``
===========================
File: ``kustomization.yml``
.. patch:: lms-env
``lms-env``
===========
File: ``apps/openedx/config/lms.env.yml``
.. patch:: lms-env-features
``lms-env-features``
====================
File: ``apps/openedx/config/lms.env.yml``
.. patch:: local-docker-compose-caddy-aliases
``local-docker-compose-caddy-aliases``
======================================
File: ``local/docker-compose.prod.yml``
.. patch:: local-docker-compose-cms-dependencies
``local-docker-compose-cms-dependencies``
=========================================
File: ``local/docker-compose.yml``
.. patch:: local-docker-compose-dev-services
``local-docker-compose-dev-services``
=====================================
File: ``dev/docker-compose.yml``
.. patch:: local-docker-compose-jobs-services
``local-docker-compose-jobs-services``
======================================
File: ``local/docker-compose.jobs.yml``
.. patch:: local-docker-compose-lms-dependencies
``local-docker-compose-lms-dependencies``
=========================================
File: ``local/docker-compose.yml``
.. patch:: local-docker-compose-prod-services
``local-docker-compose-prod-services``
======================================
File: ``local/docker-compose.prod.yml``
.. patch:: local-docker-compose-services
``local-docker-compose-services``
=================================
File: ``local/docker-compose.yml``
.. patch:: openedx-auth
``openedx-auth``
================
File: ``apps/openedx/config/partials/auth.yml``
.. patch:: openedx-cms-common-settings
``openedx-cms-common-settings``
===============================
File: ``apps/openedx/settings/partials/common_cms.py``
.. patch:: openedx-cms-development-settings
``openedx-cms-development-settings``
====================================
File: ``apps/openedx/settings/cms/development.py``
.. patch:: openedx-cms-production-settings
``openedx-cms-production-settings``
===================================
File: ``apps/openedx/settings/cms/production.py``
.. patch:: openedx-common-assets-settings
``openedx-common-assets-settings``
==================================
File: ``build/openedx/settings/partials/assets.py``
.. patch:: openedx-common-i18n-settings
``openedx-common-i18n-settings``
================================
File: ``build/openedx/settings/partials/i18n.py``
.. patch:: openedx-common-settings
``openedx-common-settings``
===========================
File: ``apps/openedx/settings/partials/common_all.py``
.. patch:: openedx-dev-dockerfile-post-python-requirements
``openedx-dev-dockerfile-post-python-requirements``
===================================================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-development-settings
``openedx-development-settings``
================================
Files: ``apps/openedx/settings/cms/development.py``, ``apps/openedx/settings/lms/development.py``
.. patch:: openedx-dockerfile
``openedx-dockerfile``
======================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-dockerfile-final
``openedx-dockerfile-final``
============================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-dockerfile-git-patches-default
``openedx-dockerfile-git-patches-default``
==========================================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-dockerfile-minimal
``openedx-dockerfile-minimal``
==============================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-dockerfile-post-git-checkout
``openedx-dockerfile-post-git-checkout``
========================================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-dockerfile-post-python-requirements
``openedx-dockerfile-post-python-requirements``
===============================================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-dockerfile-pre-assets
``openedx-dockerfile-pre-assets``
=================================
File: ``build/openedx/Dockerfile``
.. patch:: openedx-lms-common-settings
``openedx-lms-common-settings``
===============================
File: ``apps/openedx/settings/partials/common_lms.py``
Python-formatted LMS settings used both in production and development.
.. patch:: openedx-lms-development-settings
``openedx-lms-development-settings``
====================================
File: ``apps/openedx/settings/lms/development.py``
Python-formatted LMS settings in development. Values defined here override the values from :patch:`openedx-lms-common-settings` or :patch:`openedx-lms-production-settings`.
.. patch:: openedx-lms-production-settings
``openedx-lms-production-settings``
===================================
File: ``apps/openedx/settings/lms/production.py``
Python-formatted LMS settings in production. Values defined here override the values from :patch:`openedx-lms-common-settings`.