54 lines
1.0 KiB
Bash
Executable File
54 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env zsh
|
|
|
|
source .utils
|
|
|
|
TAG_COUNT=5
|
|
MINOR_VERSION="v1."
|
|
|
|
print_usage() {
|
|
orange "kind-list-images - List latest images for use with Kind nodes"
|
|
echo " "
|
|
underline "Usage:"
|
|
echo "kind-list-images [minor-version]"
|
|
echo " "
|
|
echo " "
|
|
underline "Options:"
|
|
echo "-h, --help show this help text"
|
|
echo "-n, --last-n-minors return the last n minor versions (default: ${TAG_COUNT})"
|
|
}
|
|
|
|
|
|
while test $# -gt 0; do
|
|
case "$1" in
|
|
-n|--last-n-minors)
|
|
shift
|
|
TAG_COUNT=$1
|
|
shift
|
|
;;
|
|
-h|--help)
|
|
print_usage
|
|
exit 0
|
|
;;
|
|
*)
|
|
MINOR_VERSION=$1
|
|
shift
|
|
;;
|
|
esac
|
|
done
|
|
|
|
|
|
TAGS=( $(crane ls kindest/node | sort | grep 'v1.' | grep -vE 'alpha|beta' | grep ${MINOR_VERSION}) )
|
|
|
|
declare -A latestMinor
|
|
|
|
for TAG in "${TAGS[@]}"; do
|
|
MINOR="${TAG%.*}"
|
|
latestMinor[$MINOR]=$TAG
|
|
done
|
|
|
|
RETURN_TAGS=( $(echo $latestMinor | tr ' ' '\n' | sort -r | head -n ${TAG_COUNT}) )
|
|
|
|
for TAG in "${RETURN_TAGS[@]}"; do
|
|
echo " - kindest/node:$(blue $TAG)@$(crane digest kindest/node:$TAG)"
|
|
done
|