forked from ungleich-public/cdist
implement dependency handling at the object level
Signed-off-by: Steven Armstrong <steven@icarus.ethz.ch>
This commit is contained in:
parent
cd1a1347c9
commit
4ee5d74c9f
5 changed files with 93 additions and 84 deletions
|
|
@ -32,31 +32,16 @@ if [ ! -d "$(__cdist_object_dir "$object")" ]; then
|
|||
__cdist_exit_err "Object $object is missing."
|
||||
fi
|
||||
|
||||
finished="$(__cdist_object_code_finished "$object")"
|
||||
require="$(__cdist_object_require "$object")"
|
||||
|
||||
code="$(__cdist_object_code "$object")-${__cdist_gencode_type}"
|
||||
|
||||
# Do nothing if our work has been done
|
||||
if [ -f "$finished" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Checking code-${__cdist_gencode_type} for $object ..."
|
||||
|
||||
if [ -f "$require" ]; then
|
||||
while read requirement; do
|
||||
echo "Requiring dependency $requirement for $object ..."
|
||||
cdist-code-run "$requirement" "$__cdist_gencode_type"
|
||||
done < "$require"
|
||||
fi
|
||||
|
||||
if [ -e "$code" ]; then
|
||||
if [ -f "$code" ]; then
|
||||
if [ -x "$code" ]; then
|
||||
echo "Executing code-${__cdist_gencode_type} for $object ..."
|
||||
"$code"
|
||||
touch "$finished"
|
||||
else
|
||||
__cdist_exit_err "$code exists, but is not executable."
|
||||
fi
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue