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

build: move collectstatic ignore patterns into configuration #31934

Merged
merged 2 commits into from
Apr 21, 2023

Commits on Apr 20, 2023

  1. build: move collectstatic ignore patterns into configuration

    Django provides the `collectstatic` management command, which collects static
    assets into the STATIC_ROOT so that they can be served by some system external
    to Django (like nginx or caddy), as is usually desired in production environments.
    
    edx-platform contains several types of files that we don't want to be collected
    into the STATIC_ROOT. Previously, these files had to be supplied to the manageme
    nt command using the `--ignore` option:
    
        ./manage.py lms collectstatic --ignore geoip --ignore sass ...etc
        ./manage.py cms collectstatic --ignore geoip --ignore sass ...etc
    
    This yields a long, hard-to-remember command. Paver wrapped the command in its
    big `paver update_assets` task, but that task also builds assets, which is totally
    overkill when you're just trying to collect them.
    
    Fortunately, `collectstatic`'s default ignore patterns can be configured by
    defining a custom AppConfig class. We define such an config
    (`EdxPlatformStaticFilesConfig`) for LMS and CMS. Now, devs can collect LMS and
    CMS assets with just:
    
        ./manage.py lms collectstatic
        ./manage.py cms collectstatic
    
    Further reading on collecstatic and --ignore:
    https://docs.djangoproject.com/en/3.2/ref/contrib/staticfiles/#customizing-the-i
    gnored-pattern-list
    
    Further reading on eschewing Paver:
    https://github.com/openedx/edx-platform/blob/master/docs/decisions/0017-reimplem
    ent-asset-processing.rst
    
    Closes: openedx#31658
    kdmccormick committed Apr 20, 2023
    Configuration menu
    Copy the full SHA
    d35df76 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f84cd84 View commit details
    Browse the repository at this point in the history