File: configuration.sh

package info (click to toggle)
open-infrastructure-system-build 20161101-lts2-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 2,028 kB
  • ctags: 82
  • sloc: sh: 8,825; makefile: 128
file content (38 lines) | stat: -rwxr-xr-x 949 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/sh

## live-build(7) - System Build Scripts
## Copyright (C) 2006-2015 Daniel Baumann <mail@daniel-baumann.ch>
##
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
## This is free software, and you are welcome to redistribute it
## under certain conditions; see COPYING for details.


Get_configuration ()
{
	_CONFIGURATION_FILE="${1}"
	_FIELD_NAME="${2}"

	if [ -e "${_CONFIGURATION_FILE}" ]
	then
		_FIELD_BODY="$(grep ^${_FIELD_NAME}: ${_CONFIGURATION_FILE} | awk '{ $1=""; print $0 }' | sed -e 's|^ ||')"
	fi

	echo ${_FIELD_BODY}
}

Set_configuration ()
{
	_CONFIGURATION_FILE="${1}"
	_FIELD_NAME="${2}"
	_FIELD_BODY="${3}"

	if grep -qs "^${_FIELD_NAME}:" "${_CONFIGURATION_FILE}"
	then
		# Update configuration
		sed -i -e "s|^${_FIELD_NAME}:.*$|${_FIELD_NAME}: ${_FIELD_BODY}|" "${_CONFIGURATION_FILE}"
	else
		# Append configuration
		echo "${_FIELD_NAME}: ${_FIELD_BODY}" >> "${_CONFIGURATION_FILE}"
	fi
}