docs: add ADR: "Reimplement edx-platform static asset processing" - #31790
Conversation
davidjoy
left a comment
There was a problem hiding this comment.
This seems like a great step forward toward more standards-based/vanilla asset processing... where I consider bash much more of a 'standard' than paver. 😂
One small comment on a command name, but otherwise in general this feels like we'll be in a better place after this work is done.
jmbowman
left a comment
There was a problem hiding this comment.
Looks pretty good, just a few suggestions.
kdmccormick
left a comment
There was a problem hiding this comment.
Question for reviewers:
feanil
left a comment
There was a problem hiding this comment.
The general approach looks good to me. I made a few suggestions for details that I think should be made, but I don't need to look at it again before it merges unless there are major changes to the approach.
Co-authored-by: Feanil Patel <feanil@tcril.org>
|
EdX Release Notice: This PR has been deployed to the staging environment in preparation for a release to production. |
|
EdX Release Notice: This PR has been deployed to the production environment. |
Follow-up from: #31790 (comment) Part of DEPR: #31895
…32717) During the review of ADR 17 [1], Régis pointed out [2] that the shell script which replaces Paver's `process_npm_assets` could be automatically invoked as an NPM post-install hook, ensuring that the step is seamlessly executed whenever `npm install` is run. I had avoided using that suggestion, as I worried that it would make it harder to move node_modules out of the edx-platform directory in Tutor's openedx image. Since then, two things have changed. Firstly, Tutor v16's new persistent mounts interface [3] has lessened the importance of moving node_modules. Secondly, I have realized that using a post-install hook would not preclude us from modifying the underlying script (scripts/copy-node-modules.sh) to look in an alternative location for node_modules, should that end up being something we want to do. This commit modifies the ADR based on those findings, stubs out Paver's `process_npm_assets`, and adds the suggested post-install hook and replacement Bash script. References: 1. https://github.com/openedx/edx-platform/blob/master/docs/decisions/0017-reimplement-asset-processing.rst 2. #31790 (comment) 3. https://github.com/overhangio/tutor/blob/master/CHANGELOG.md#v1600-2023-06-14 Part of: #31604
See included ADR for details. Link to latest rendered version of ADR.
Parent issue for all work related to implementing this ADR:
Draft PR of a working build.sh implementation, for reference:
Key reviewers: