summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLyndon Brown <jnqnfe@gmail.com>2020-05-04 01:34:05 +0100
committerLyndon Brown <jnqnfe@gmail.com>2020-05-04 13:26:19 +0100
commit943c8fb5feb27cd60fd335f6e9e77524127f0f17 (patch)
treef0cdc5e267fd9e4cb8fcdace8faf3cd6c54127ca
parent7acd1f488f3b9d4348449a27d9412488dc8e1657 (diff)
downloadvyos-live-build-943c8fb5feb27cd60fd335f6e9e77524127f0f17.tar.gz
vyos-live-build-943c8fb5feb27cd60fd335f6e9e77524127f0f17.zip
extend config validation to all build components
while `lb build` ran the config validation check, spotting invalid configs and stopping with an error, the major build stages if executed directly did not, nor did the component stages. here we move execution of the validation function into the common init function, with an exported variable used to indicate that validation has been performed. thus validation is performed no matter what part of the build system you execute, but only once. Gbp-Dch: Short
-rwxr-xr-xfunctions/init.sh6
-rwxr-xr-xscripts/build/build3
2 files changed, 6 insertions, 3 deletions
diff --git a/functions/init.sh b/functions/init.sh
index 708e3d275..0182f413d 100755
--- a/functions/init.sh
+++ b/functions/init.sh
@@ -25,6 +25,12 @@ Init_config_data ()
Read_conffiles $(Common_conffiles)
Prepare_config
+ # Validating config
+ if [ "${CONFIG_VALIDATED}" != "true" ]; then
+ Validate_config
+ export CONFIG_VALIDATED="true"
+ fi
+
# Apt v2.0.1 introduced color support, but it needs to be explicitly enabled.
# This is done here so that the injection of the option does not get stored in the config file.
if [ "${_COLOR_OUT}" = "true" ] && [ "${_COLOR_ERR}" = "true" ]; then
diff --git a/scripts/build/build b/scripts/build/build
index dcc489618..f908fc91f 100755
--- a/scripts/build/build
+++ b/scripts/build/build
@@ -48,9 +48,6 @@ fi
# Processing arguments and configuration files
Init_config_data "${@}"
-# Validating config
-Validate_config
-
Echo_message "live-build ${LIVE_BUILD_VERSION}"
Echo_message "Building for a ${LB_MODE}/${LB_DISTRIBUTION_BINARY}/${LB_ARCHITECTURE} system"