[mod] add make targets to manage the build files in the /searx/static directory

The idea is to avoid conflict when there are differents branches with changes are made on the static files.
A solution is to ask the administrators to build the files from the sources, but it requires to install the npm dependencies.
So the solution in this commit keep the sources and the build files in the same git repository.

In one branch, the modification of the source (*.less, *.js) are commited without the built files.
The built files are commited in a uniq commit, with a commit message "Static build"
In case of merge or rebase, this commit can be dropped.

New make targets:
* static.build.commit.drop:
    drop the last "Static build".
    The command checks that there are only build files in the commit.
* static.build.commit :
    call "make static.build.commit.drop"
    call "make themes.all"
    commit the files
* static.git.restore.staged:
    git restore --staged <build files>
* static.git.restore:
    git restore <build files>

Related to https://github.com/searxng/searxng/issues/137
This commit is contained in:
Alexandre Flament
2021-06-23 12:48:31 +02:00
committed by Markus Heiser
parent 4b60c557a9
commit 0606cde105
2 changed files with 158 additions and 0 deletions

View File

@@ -3,6 +3,7 @@
.DEFAULT_GOAL=help
export MTOOLS=./manage
export MSTATIC=./utils/manage_static.sh
include utils/makefile.include
@@ -89,6 +90,12 @@ PHONY += $(MANAGE)
$(MANAGE):
$(Q)$(MTOOLS) $@
MANAGE_STATIC += static.build.commit.drop static.build.commit static.git.restore.staged static.git.restore
$(MANAGE_STATIC):
$(Q)$(MSTATIC) $@
# deprecated
PHONY += docs docs-clean docs-live docker themes