Merge 80ca4a993a
into 30fa6f08a4
This commit is contained in:
commit
2a9b8e9537
1 changed files with 19 additions and 0 deletions
19
yadm
19
yadm
|
@ -36,6 +36,7 @@ YADM_ENCRYPT="encrypt"
|
||||||
YADM_BOOTSTRAP="bootstrap"
|
YADM_BOOTSTRAP="bootstrap"
|
||||||
YADM_HOOKS="hooks"
|
YADM_HOOKS="hooks"
|
||||||
YADM_ALT="alt"
|
YADM_ALT="alt"
|
||||||
|
YADM_CHECK_CONDITION="check_condition"
|
||||||
|
|
||||||
# these are the default paths relative to YADM_DATA
|
# these are the default paths relative to YADM_DATA
|
||||||
YADM_REPO="repo.git"
|
YADM_REPO="repo.git"
|
||||||
|
@ -175,6 +176,7 @@ function score_file() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
score=0
|
score=0
|
||||||
|
declare -gA external_cache
|
||||||
IFS=',' read -ra fields <<< "$conditions"
|
IFS=',' read -ra fields <<< "$conditions"
|
||||||
for field in "${fields[@]}"; do
|
for field in "${fields[@]}"; do
|
||||||
label=${field%%.*}
|
label=${field%%.*}
|
||||||
|
@ -238,6 +240,22 @@ function score_file() {
|
||||||
score=0
|
score=0
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
elif [[ "$label" =~ ^(x|external)$ ]]; then
|
||||||
|
if [[ -z "${external_cache[x$value]:-}" ]]; then
|
||||||
|
if [[ -x "$YADM_CHECK_CONDITION" ]]; then
|
||||||
|
"$YADM_CHECK_CONDITION" "$value"
|
||||||
|
external_cache[x$value]=$?
|
||||||
|
else
|
||||||
|
debug "No program found to check condition for $src"
|
||||||
|
[ -n "$loud" ] && echo "No program found to check condition for $src"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [[ ${external_cache[x$value]:-1} -eq 0 ]]; then
|
||||||
|
score=$((score + 32))
|
||||||
|
else
|
||||||
|
score=0
|
||||||
|
return
|
||||||
|
fi
|
||||||
# templates
|
# templates
|
||||||
elif [[ "$label" =~ ^(t|template|yadm)$ ]]; then
|
elif [[ "$label" =~ ^(t|template|yadm)$ ]]; then
|
||||||
score=0
|
score=0
|
||||||
|
@ -1720,6 +1738,7 @@ function configure_paths() {
|
||||||
YADM_BOOTSTRAP="$YADM_DIR/$YADM_BOOTSTRAP"
|
YADM_BOOTSTRAP="$YADM_DIR/$YADM_BOOTSTRAP"
|
||||||
YADM_HOOKS="$YADM_DIR/$YADM_HOOKS"
|
YADM_HOOKS="$YADM_DIR/$YADM_HOOKS"
|
||||||
YADM_ALT="$YADM_DIR/$YADM_ALT"
|
YADM_ALT="$YADM_DIR/$YADM_ALT"
|
||||||
|
YADM_CHECK_CONDITION="$YADM_DIR/$YADM_CHECK_CONDITION"
|
||||||
|
|
||||||
# change paths to be relative to YADM_DATA
|
# change paths to be relative to YADM_DATA
|
||||||
YADM_REPO="$YADM_DATA/$YADM_REPO"
|
YADM_REPO="$YADM_DATA/$YADM_REPO"
|
||||||
|
|
Loading…
Reference in a new issue