Compare commits

..

No commits in common. "94b77dee08f6dc7fe7eda33ec0889c8efac6d8d0" and "4d0d41ca7b0101eb1aec1283e170ab400e3c0e8d" have entirely different histories.

6 changed files with 42 additions and 9 deletions

View File

@ -20,11 +20,12 @@ dockerConfigSetupFileWithData()
tagsManagerUpdateUniversalTag "$full_file_path" "TIMEZONE_TAG" "$CFG_TIMEZONE"
tagsManagerUpdateUniversalTag "$full_file_path" "CATEGORY_TAG" "$app_category"
tagsManagerUpdateUniversalTag "$full_file_path" "TITLE_TAG" "$app_title"
# Root-path tags. The libreportal compose bind-mounts the host system's
# configs root and the live-app-data root into the WebUI container, and
# those paths get baked here so the deployed compose carries absolutes
# (`/libreportal-system/...`, `/libreportal-containers/...`) — anything
# left as `*_DATA` would make dockerComposeUp refuse to start.
# Root-path tags used by the libreportal compose to bind-mount the system's
# configs + live-data dirs into the WebUI container. Without these the
# CONFIGS_DIR_DATA / CONTAINERS_DIR_DATA placeholders survive into the
# deployed compose and dockerComposeUp refuses to start. (The orphan
# tagsProcessorStandardReplacements function carried these alone — wiring
# them in directly so they're always applied to every app's templating.)
tagsManagerUpdateUniversalTag "$full_file_path" "CONFIGS_DIR_TAG" "${configs_dir%/}"
tagsManagerUpdateUniversalTag "$full_file_path" "CONTAINERS_DIR_TAG" "${containers_dir%/}"
# Generic CFG_<APP>_<KEY> -> #LIBREPORTAL|<APP>_<KEY>_TAG| fill. Covers

View File

@ -0,0 +1,32 @@
#!/bin/bash
# Standard LibrePortal tag replacements for common configuration values
# Now uses universal tag manager instead of sed operations
tagsProcessorStandardReplacements()
{
local full_file_path="$1"
local domain_full="$2"
local host_setup="$3"
local domain_prefix="$4"
local public_ip_v4="$5"
local CFG_NETWORK_SUBNET="$6"
local CFG_TIMEZONE="$7"
local CFG_NETWORK_NAME="$8"
local CFG_NETWORK_MTU="$9"
local default_middleware="${10}"
echo "Applying standard LibrePortal tag replacements using universal tag manager"
# Use universal tag manager for all replacements - only update tags that exist
tagsManagerUpdateUniversalTag "$full_file_path" "DOMAINSUBNAME_TAG" "$host_setup"
tagsManagerUpdateUniversalTag "$full_file_path" "TIMEZONE_TAG" "$CFG_TIMEZONE"
tagsManagerUpdateUniversalTag "$full_file_path" "DOCKER_NETWORK_TAG" "$CFG_NETWORK_NAME"
# Host live-app-data root, passed into the WebUI container (only the
# libreportal compose carries this tag; "only update tags that exist").
tagsManagerUpdateUniversalTag "$full_file_path" "CONTAINERS_DIR_TAG" "${containers_dir%/}"
# Host system-tree configs root — absolute bind-mount source for the WebUI's
# configs/webui/* (the containers root is separate from the system tree now).
tagsManagerUpdateUniversalTag "$full_file_path" "CONFIGS_DIR_TAG" "${configs_dir%/}"
isSuccessful "Standard LibrePortal tag replacements applied using universal tag manager"
}

View File

@ -14,8 +14,6 @@ cli_scripts=(
"cli/commands/backup/cli_backup_header.sh"
"cli/commands/config/cli_config_commands.sh"
"cli/commands/config/cli_config_header.sh"
"cli/commands/debug/cli_debug_commands.sh"
"cli/commands/debug/cli_debug_header.sh"
"cli/commands/dockertype/cli_dockertype_commands.sh"
"cli/commands/dockertype/cli_dockertype_header.sh"
"cli/commands/firewall/cli_firewall_commands.sh"

View File

@ -47,6 +47,7 @@ config_scripts=(
"config/tags/processors/tags_processor_random_user.sh"
"config/tags/processors/tags_processor_socket_configuration.sh"
"config/tags/processors/tags_processor_speedtest_pass.sh"
"config/tags/processors/tags_processor_standard_replacements.sh"
"config/tags/processors/tags_processor_traefik_control.sh"
"config/tags/processors/tags_processor_trusted_domains.sh"
"config/utils/update_whitelist.sh"

View File

@ -28,7 +28,5 @@ source_scripts=(
"source/files/arrays/files_start.sh"
"source/files/arrays/files_update.sh"
"source/files/arrays/files_webui.sh"
"source/files/arrays/function_manifest.sh"
"source/files/generate_function_manifest.sh"
)

View File

@ -781,6 +781,7 @@ declare -gA LP_FN_MAP=(
[tagsProcessorRandomUserGeneration]="config/tags/processors/tags_processor_random_user.sh"
[tagsProcessorSocketConfiguration]="config/tags/processors/tags_processor_socket_configuration.sh"
[tagsProcessorSpeedtestPass]="config/tags/processors/tags_processor_speedtest_pass.sh"
[tagsProcessorStandardReplacements]="config/tags/processors/tags_processor_standard_replacements.sh"
[tagsProcessorTraefikControl]="config/tags/processors/tags_processor_traefik_control.sh"
[tagsProcessorTrustedDomains]="config/tags/processors/tags_processor_trusted_domains.sh"
[tailscaleInstallToContainer]="headscale/scripts/tailscale_install.sh"
@ -1643,6 +1644,7 @@ declare -gA LP_FN_ROOT=(
[tagsProcessorRandomUserGeneration]="scripts"
[tagsProcessorSocketConfiguration]="scripts"
[tagsProcessorSpeedtestPass]="scripts"
[tagsProcessorStandardReplacements]="scripts"
[tagsProcessorTraefikControl]="scripts"
[tagsProcessorTrustedDomains]="scripts"
[tailscaleInstallToContainer]="containers"
@ -2523,6 +2525,7 @@ tagsProcessorPortSubdomains() { source "${install_scripts_dir}network/traefik/tr
tagsProcessorRandomUserGeneration() { source "${install_scripts_dir}config/tags/processors/tags_processor_random_user.sh"; tagsProcessorRandomUserGeneration "$@"; }
tagsProcessorSocketConfiguration() { source "${install_scripts_dir}config/tags/processors/tags_processor_socket_configuration.sh"; tagsProcessorSocketConfiguration "$@"; }
tagsProcessorSpeedtestPass() { source "${install_scripts_dir}config/tags/processors/tags_processor_speedtest_pass.sh"; tagsProcessorSpeedtestPass "$@"; }
tagsProcessorStandardReplacements() { source "${install_scripts_dir}config/tags/processors/tags_processor_standard_replacements.sh"; tagsProcessorStandardReplacements "$@"; }
tagsProcessorTraefikControl() { source "${install_scripts_dir}config/tags/processors/tags_processor_traefik_control.sh"; tagsProcessorTraefikControl "$@"; }
tagsProcessorTrustedDomains() { source "${install_scripts_dir}config/tags/processors/tags_processor_trusted_domains.sh"; tagsProcessorTrustedDomains "$@"; }
tailscaleInstallToContainer() { source "${install_containers_dir}headscale/scripts/tailscale_install.sh"; tailscaleInstallToContainer "$@"; }