mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-19 09:16:29 +00:00
update-component-sha: Accept easier to cut-n-paste --image arguments.
Signed-off-by: Ian Campbell <ijc@docker.com>
This commit is contained in:
parent
a87a07c8e9
commit
5380c7a18d
@ -23,6 +23,9 @@ Replace by image: $0 --image <IMAGE> <NEW>
|
||||
Example: $0 --image linuxkit/foo abcdef567899
|
||||
Will tag all instances of linuxkit/foo with abcdef567899
|
||||
|
||||
$0 --image <IMAGE>:<NEW> is accepted as a convenient shortcut for cutting
|
||||
and pasting e.g.the output of linuxkit pkg show-tag
|
||||
|
||||
By default, for convenience, if no mode is given (--image or --hash), the first method (--hash) is assumed.
|
||||
Thus the following are equivalent:
|
||||
$0 <OLD> <NEW>
|
||||
@ -33,28 +36,39 @@ EOF
|
||||
|
||||
|
||||
# backwards compatibility
|
||||
if [ $# -eq 2 ]; then
|
||||
if [ $# -eq 2 -a -n "${1%--*}" ]; then
|
||||
set -- "--hash" "$1" "$2"
|
||||
fi
|
||||
|
||||
# sufficient arguments
|
||||
if [ $# -ne 3 ] ; then
|
||||
if [ $# -lt 2 -o $# -gt 3 ] ; then
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# which mode?
|
||||
case "$1" in
|
||||
--hash)
|
||||
if [ $# -ne 3 ] ; then
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
old=$2
|
||||
new=$3
|
||||
|
||||
git grep -w -l "\b$old\b" | xargs sed -i.bak -e "s,$old,$new,g"
|
||||
;;
|
||||
--image)
|
||||
image=$2
|
||||
hash=$3
|
||||
case $# in
|
||||
2)
|
||||
image=${2%:*}
|
||||
hash=${2#*:}
|
||||
;;
|
||||
3)
|
||||
image=$2
|
||||
hash=$3
|
||||
;;
|
||||
esac
|
||||
git grep -E -l "\b$image:" | xargs sed -i.bak -e "s,$image:[[:xdigit:]]"'\{40\}'",$image:$hash,g"
|
||||
;;
|
||||
*)
|
||||
|
Loading…
Reference in New Issue
Block a user