luci.mk: add simple cache buster
Append a ?v=version string to any media or resource URL that has a .js or .css extension. Also substitute placeholders in the form <%# xxxPKG_VERSION %> where xxx is replaced verbatim and PKG_VERSION with the actual version, e.g. <%# ?x=PKG_VERSION %> will result in "?x=git-16.237.30043-f885853". Signed-off-by: Jo-Philipp Wich <jo@mein.io>
This commit is contained in:
parent
87ae1242b8
commit
d7d97723fe
1 changed files with 9 additions and 0 deletions
9
luci.mk
9
luci.mk
|
@ -155,12 +155,21 @@ define SrcDiet
|
|||
done
|
||||
endef
|
||||
|
||||
define SubstituteVersion
|
||||
$(FIND) $(1) -type f -name '*.htm' | while read src; do \
|
||||
$(SED) 's/<%# *\([^ ]*\)PKG_VERSION *%>/\1$(PKG_VERSION)/g' \
|
||||
-e 's/"\(<%= *\(media\|resource\) *%>[^"]*\.\(js\|css\)\)"/"\1?v=$(PKG_VERSION)"/g' \
|
||||
"$$$$src"; \
|
||||
done
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)/install
|
||||
if [ -d $(PKG_BUILD_DIR)/luasrc ]; then \
|
||||
$(INSTALL_DIR) $(1)$(LUCI_LIBRARYDIR); \
|
||||
cp -pR $(PKG_BUILD_DIR)/luasrc/* $(1)$(LUCI_LIBRARYDIR)/; \
|
||||
$(FIND) $(1)$(LUCI_LIBRARYDIR)/ -type f -name '*.luadoc' | $(XARGS) rm; \
|
||||
$(if $(CONFIG_LUCI_SRCDIET),$(call SrcDiet,$(1)$(LUCI_LIBRARYDIR)/),true); \
|
||||
$(call SubstituteVersion,$(1)$(LUCI_LIBRARYDIR)/); \
|
||||
else true; fi
|
||||
if [ -d $(PKG_BUILD_DIR)/htdocs ]; then \
|
||||
$(INSTALL_DIR) $(1)$(HTDOCS); \
|
||||
|
|
Loading…
Reference in a new issue