Revert "MT#4141 Speed up 'build' runs by loading YAML files only once"

This reverts commit 335d53c95c.
mr3.2.1
Alexander Lutay 13 years ago committed by Michael Prokop
parent 8dcef64535
commit 9206aa868a

@ -7,13 +7,9 @@
set -e
set -u
usage() {
echo "Usage: /usr/share/ngcp-ngcpcfg/helper/build_config [--reuse <file>] <input_file>" >&2
if [ "${#:-}" -ne 1 ] ; then
echo "Usage: /usr/share/ngcp-ngcpcfg/helper/build_config <input_file>" >&2
exit 1
}
if [ "${#:-}" -lt 1 ] ; then
usage
fi
# support for testsuite, assume defaults if unset
@ -25,20 +21,6 @@ HELPER="${HELPER:-/usr/share/ngcp-ngcpcfg/helper/}"
# main script
if [ -n "${1:-}" ] ; then
case "$1" in
*--reuse*)
shift
if [ -z "${1:-}" ] ; then
usage
else
TT_WRAPER_ARGS="--reuse $1"
shift
fi
;;
esac
fi
input_file="$1" # like /etc/ngcp-config/templates/etc/mysql/my.cnf.tt2
# calculate output file {{{
x=${input_file##${NGCPCTL_MAIN}/templates/} # drop leading /etc/ngcp-config
@ -76,8 +58,8 @@ umask 0077
TT_WRAPPER="${HELPER}/tt2-wrapper"
log_debug "Output file ${output_file} based on ${input_file}"
log_debug "Executing: $TT_WRAPPER ${TT_WRAPER_ARGS:-} ${input_file} ${host_conf:-} ${local_conf:-} $NGCPCTL_CONFIG ${NETWORK_CONFIG:-} ${EXTRA_CONFIG_FILES:-} $CONSTANTS_CONFIG > ${output_file}"
if "$TT_WRAPPER" ${TT_WRAPER_ARGS:-} "${input_file}" ${host_conf:-} ${local_conf:-} "$NGCPCTL_CONFIG" "${NETWORK_CONFIG:-}" ${EXTRA_CONFIG_FILES:-} "$CONSTANTS_CONFIG" > "${output_file}" 2>/dev/null ; then
log_debug "Executing: $TT_WRAPPER ${input_file} ${host_conf:-} ${local_conf:-} $NGCPCTL_CONFIG ${NETWORK_CONFIG:-} ${EXTRA_CONFIG_FILES:-} $CONSTANTS_CONFIG > ${output_file}"
if "$TT_WRAPPER" "${input_file}" ${host_conf:-} ${local_conf:-} "$NGCPCTL_CONFIG" "${NETWORK_CONFIG:-}" ${EXTRA_CONFIG_FILES:-} "$CONSTANTS_CONFIG" > "${output_file}" 2>/dev/null ; then
log_info "Generating ${output_file}: OK"
RC=0
else

@ -5,39 +5,16 @@
use strict;
use warnings;
use Getopt::Long;
use Hash::Merge qw(merge);
use Storable;
use Template;
use YAML qw/LoadFile/;
my $help;
my $reuse;
GetOptions(
'help' => \$help,
'reuse=s' => \$reuse,
) or die "Usage: $0 [--reuse <file>] <template> <config.yml> [<another.yml>]";
use Template;
use Hash::Merge qw(merge);
my $tt = Template->new({ ABSOLUTE => 1, RELATIVE => 1, EVAL_PERL => 1 });
my $template = shift(@ARGV) or die "Usage: $0 [--reuse <file>] <template> <config.yml> [<another.yml>]";
my $template = shift(@ARGV);
my $config = {};
if ($reuse) {
if (-e $reuse) {
$config = retrieve($reuse);
} else {
foreach my $file (@ARGV) {
$config = merge($config, LoadFile($file) || die $!);
}
store($config, $reuse);
}
} else {
foreach my $file (@ARGV) {
$config = merge($config, LoadFile($file) || die $!);
}
foreach my $file (@ARGV) {
$config = merge($config, LoadFile($file) || die $!);
}
# NOTE: we can't rely on "$tt->process($template, $config)" because the config

@ -24,13 +24,6 @@ if [ -n "${1:-}" ] ; then
esac
fi
if [ -n "${NO_REUSE:-}" ] ; then
log_info "Not using --reuse feature of tt2-wrapper as requested via NO_REUSE"
else
tmpfile=$(mktemp --dry-run --tmpdir=/tmp/ ngcpcfgreuse.XXXXXX)
BUILD_CONFIG_ARGS="--reuse ${tmpfile}"
fi
# make sure encoding is OK
for f in ${NGCPCTL_CONFIG:-} ${HOST_CONFIG:-} ${LOCAL_CONFIG:-} ${NETWORK_CONFIG:-} ${EXTRA_CONFIG_FILES:-} ${CONSTANTS_CONFIG:-} ; do
if [ -r "$f" ] && ! file "$f" | grep -qe "UTF-8" -qe "ASCII" ; then
@ -61,8 +54,8 @@ done
build_config_files() {
for file in $(generate_template_list $*) ; do
log_debug "${HELPER}/build_config ${BUILD_CONFIG_ARGS:-} $file"
"${HELPER}/build_config" ${BUILD_CONFIG_ARGS:-} "${file}"
log_debug "${HELPER}/build_config $file"
"${HELPER}/build_config" "${file}"
RC=$(($RC + $?))
done
}
@ -143,14 +136,6 @@ else
fi
fi
if [ -z "${NO_REUSE:-}" ] ; then
if [ -n "${DEBUG:-}" ] ; then
log_debug "Not removing temporary rerun file ${tmpfile} since we are in debug mode"
else
rm -f "${tmpfile}"
fi
fi
exit "$RC"
## END OF FILE #################################################################

Loading…
Cancel
Save