build and install translation files
This commit is contained in:
5
Makefile
5
Makefile
@@ -1,12 +1,13 @@
|
|||||||
.PHONY: build clean addon-dev addon-debug addon-rc addon-rel debug dev preview rc rel check-docker-compose install
|
.PHONY: build babel clean addon-dev addon-debug addon-rc addon-rel debug dev preview rc rel check-docker-compose install
|
||||||
|
|
||||||
debug dev preview rc rel:
|
babel debug dev preview rc rel:
|
||||||
$(MAKE) -C app $@
|
$(MAKE) -C app $@
|
||||||
|
|
||||||
clean build:
|
clean build:
|
||||||
$(MAKE) -C ha_addons $@
|
$(MAKE) -C ha_addons $@
|
||||||
|
|
||||||
addon-dev addon-debug addon-rc addon-rel:
|
addon-dev addon-debug addon-rc addon-rel:
|
||||||
|
$(MAKE) -C app babel
|
||||||
$(MAKE) -C ha_addons $(patsubst addon-%,%,$@)
|
$(MAKE) -C ha_addons $(patsubst addon-%,%,$@)
|
||||||
|
|
||||||
check-docker-compose:
|
check-docker-compose:
|
||||||
|
|||||||
24
app/Makefile
24
app/Makefile
@@ -6,10 +6,16 @@ IMAGE = tsun-gen3-proxy
|
|||||||
|
|
||||||
|
|
||||||
# Folders
|
# Folders
|
||||||
SRC=.
|
APP=.
|
||||||
|
SRC=$(APP)/src
|
||||||
|
# Folders for Babel translation
|
||||||
|
BABEL_INPUT_JINJA=$(SRC)/web/templates
|
||||||
|
BABEL_INPUT= $(foreach dir,$(BABEL_INPUT_JINJA),$(wildcard $(dir)/*.html)) \
|
||||||
|
|
||||||
|
BABEL_TRANSLATIONS=$(APP)/translations
|
||||||
|
|
||||||
export BUILD_DATE := ${shell date -Iminutes}
|
export BUILD_DATE := ${shell date -Iminutes}
|
||||||
VERSION := $(shell cat $(SRC)/.version)
|
VERSION := $(shell cat $(APP)/.version)
|
||||||
export MAJOR := $(shell echo $(VERSION) | cut -f1 -d.)
|
export MAJOR := $(shell echo $(VERSION) | cut -f1 -d.)
|
||||||
|
|
||||||
PUBLIC_URL := $(shell echo $(PUBLIC_CONTAINER_REGISTRY) | cut -f1 -d/)
|
PUBLIC_URL := $(shell echo $(PUBLIC_CONTAINER_REGISTRY) | cut -f1 -d/)
|
||||||
@@ -39,5 +45,17 @@ preview rel:
|
|||||||
export IMAGE=$(PUBLIC_CONTAINER_REGISTRY)$(IMAGE) && \
|
export IMAGE=$(PUBLIC_CONTAINER_REGISTRY)$(IMAGE) && \
|
||||||
docker buildx bake -f docker-bake.hcl $@
|
docker buildx bake -f docker-bake.hcl $@
|
||||||
|
|
||||||
|
babel: $(BABEL_TRANSLATIONS)/de/LC_MESSAGES/messages.mo $(BABEL_TRANSLATIONS)/de/LC_MESSAGES/messages.po $(BABEL_TRANSLATIONS)/messages.pot
|
||||||
|
|
||||||
.PHONY: debug dev preview rc rel
|
$(BABEL_TRANSLATIONS)/%.pot : $(SRC)/.babel.cfg $(BABEL_INPUT)
|
||||||
|
@mkdir -p $(@D)
|
||||||
|
@pybabel extract -F $< --project=$(IMAGE) --version=$(VERSION) -o $@ $(SRC)
|
||||||
|
|
||||||
|
$(BABEL_TRANSLATIONS)/%/LC_MESSAGES/messages.po : $(BABEL_TRANSLATIONS)/messages.pot
|
||||||
|
@mkdir -p $(@D)
|
||||||
|
@pybabel update --init-missing -i $< -d $(BABEL_TRANSLATIONS) -l $*
|
||||||
|
|
||||||
|
$(BABEL_TRANSLATIONS)/%/LC_MESSAGES/messages.mo : $(BABEL_TRANSLATIONS)/%/LC_MESSAGES/messages.po
|
||||||
|
@pybabel compile -d $(BABEL_TRANSLATIONS) -l $*
|
||||||
|
|
||||||
|
.PHONY: babel debug dev preview rc rel
|
||||||
|
|||||||
@@ -12,11 +12,14 @@ IMAGE = tsun-gen3-addon
|
|||||||
SRC=../app
|
SRC=../app
|
||||||
SRC_PROXY=$(SRC)/src
|
SRC_PROXY=$(SRC)/src
|
||||||
CNF_PROXY=$(SRC)/config
|
CNF_PROXY=$(SRC)/config
|
||||||
|
TRANSLATION_PROXY=$(SRC)/translations
|
||||||
|
|
||||||
# Target folders for building the local add-on and the docker container
|
# Target folders for building the local add-on and the docker container
|
||||||
ADDON_PATH = ha_addon
|
ADDON_PATH = ha_addon
|
||||||
DST=$(ADDON_PATH)/rootfs
|
DST=$(ADDON_PATH)/rootfs
|
||||||
DST_PROXY=$(DST)/home/proxy
|
DST_PROXY=$(DST)/home/proxy
|
||||||
|
DST_TRANSLATION=$(DST)/home/translations
|
||||||
|
|
||||||
|
|
||||||
# base director of the add-on repro for installing the add-on git repros
|
# base director of the add-on repro for installing the add-on git repros
|
||||||
INST_BASE=../../ha-addons
|
INST_BASE=../../ha-addons
|
||||||
@@ -92,12 +95,14 @@ SRC_FILES := $(wildcard $(SRC_PROXY)/*.py)\
|
|||||||
$(wildcard $(SRC_PROXY)/web/static/images/*)
|
$(wildcard $(SRC_PROXY)/web/static/images/*)
|
||||||
|
|
||||||
CNF_FILES := $(wildcard $(CNF_PROXY)/*.toml)
|
CNF_FILES := $(wildcard $(CNF_PROXY)/*.toml)
|
||||||
|
MO_FILES := $(wildcard $(TRANSLATION_PROXY)/de/LC_MESSAGES/*.mo)
|
||||||
|
|
||||||
# determine destination files
|
# determine destination files
|
||||||
TARGET_FILES = $(SRC_FILES:$(SRC_PROXY)/%=$(DST_PROXY)/%)
|
TARGET_FILES = $(SRC_FILES:$(SRC_PROXY)/%=$(DST_PROXY)/%)
|
||||||
CONFIG_FILES = $(CNF_FILES:$(CNF_PROXY)/%=$(DST_PROXY)/%)
|
CONFIG_FILES = $(CNF_FILES:$(CNF_PROXY)/%=$(DST_PROXY)/%)
|
||||||
|
TRANSLATION_FILES = $(MO_FILES:$(TRANSLATION_PROXY)/%=$(DST_TRANSLATION)/%)
|
||||||
|
|
||||||
rootfs: $(TARGET_FILES) $(CONFIG_FILES) $(DST)/requirements.txt
|
rootfs: $(TARGET_FILES) $(CONFIG_FILES) $(TRANSLATION_FILES) $(DST)/requirements.txt
|
||||||
|
|
||||||
$(CONFIG_FILES): $(DST_PROXY)/% : $(CNF_PROXY)/%
|
$(CONFIG_FILES): $(DST_PROXY)/% : $(CNF_PROXY)/%
|
||||||
@echo Copy $< to $@
|
@echo Copy $< to $@
|
||||||
@@ -109,6 +114,11 @@ $(TARGET_FILES): $(DST_PROXY)/% : $(SRC_PROXY)/%
|
|||||||
@mkdir -p $(@D)
|
@mkdir -p $(@D)
|
||||||
@cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
|
$(TRANSLATION_FILES): $(DST_TRANSLATION)/% : $(TRANSLATION_PROXY)/%
|
||||||
|
@echo Copy $< to $@
|
||||||
|
@mkdir -p $(@D)
|
||||||
|
@cp $< $@
|
||||||
|
|
||||||
$(DST)/requirements.txt : $(SRC)/requirements.txt
|
$(DST)/requirements.txt : $(SRC)/requirements.txt
|
||||||
@echo Copy $< to $@
|
@echo Copy $< to $@
|
||||||
@cp $< $@
|
@cp $< $@
|
||||||
|
|||||||
Reference in New Issue
Block a user