mirror of
https://github.com/DaoCloud/public-image-mirror.git
synced 2025-09-07 05:46:59 +08:00
Support excluded tag
This commit is contained in:
@@ -21,16 +21,41 @@ for line in $(cat ./domain.txt); do
|
||||
DOMAIN_MAP["${key}"]="${val}"
|
||||
done
|
||||
|
||||
declare -A EXCLUDED_MAP=()
|
||||
|
||||
for line in $(cat not_sync.yaml | yq -j '.not_sync[] | .image_pattern , "=", (.tag_patterns[] | . , "|" ) , "\n"' | sed "s/|$//g"); do
|
||||
line="${line/ /}"
|
||||
if [[ "$line" == "" ]]; then
|
||||
continue
|
||||
fi
|
||||
key="${line%%=*}"
|
||||
val="${line##*=}"
|
||||
if [[ "${key}" == "" || "${val}" == "" ]]; then
|
||||
echo "Error: invalid line: ${line}"
|
||||
continue
|
||||
fi
|
||||
|
||||
EXCLUDED_MAP["${key}"]="${val}"
|
||||
done
|
||||
|
||||
for line in $(cat ./mirror.txt); do
|
||||
line="${line/ /}"
|
||||
if [[ "$line" == "" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
exclude=""
|
||||
for key in "${!EXCLUDED_MAP[@]}"; do
|
||||
if [[ "${line}" =~ ${key} ]]; then
|
||||
exclude+="${EXCLUDED_MAP[$key]}|"
|
||||
fi
|
||||
done
|
||||
exclude="${exclude%|}"
|
||||
|
||||
domain="${line%%/*}"
|
||||
new_image=$(echo "${line}" | sed "s/^${domain}/${DOMAIN_MAP["${domain}"]}/g")
|
||||
echo "Diff image ${line} ${new_image}"
|
||||
DEBUG=true INCREMENTAL=true ./scripts/diff-image.sh "${line}" "${new_image}" || {
|
||||
DEBUG=true INCREMENTAL=true EXCLUDED="${exclude}" ./scripts/diff-image.sh "${line}" "${new_image}" || {
|
||||
echo "Error: diff image ${line} ${new_image}"
|
||||
}
|
||||
done
|
||||
|
Reference in New Issue
Block a user