32 lines
875 B
Bash
Executable file
32 lines
875 B
Bash
Executable file
#!/bin/bash
|
|
set -e
|
|
if [ -z "$1" ]; then
|
|
cat << EOF
|
|
Usages:
|
|
$0 NEW_BAZEL_FILE
|
|
Search for BUILD targets with these names in the git repo
|
|
$0 NEW_BAZEL_FILE FIXUP_BAZEL_FILE
|
|
Find instances of the BUILD targets in the to-be-fixed-file
|
|
$0 NEW_BAZEL_FILE FIXUP_BAZEL_FILE PREFIX
|
|
Find instances of that BUILD target with an old prefix (eg: '//:')
|
|
$0 NEW_BAZEL_FILE FIXUP_BAZEL_FILE PREFIX NEW_PREFIX
|
|
Apply the NEW_PREFIX (eg, a package move) in place of the PREFIX in the FIXUP file.
|
|
EOF
|
|
exit
|
|
fi
|
|
INCOMING_SET=$(grep "name" $1 | cut -d '"' -f 2)
|
|
TO_CHANGE=$2
|
|
PREVIOUS_PATH=$3
|
|
NEW_PATH=$4
|
|
|
|
for TARGET in $INCOMING_SET; do
|
|
if [ -n "$TO_CHANGE" ]; then
|
|
grep ${PREVIOUS_PATH}${TARGET} $TO_CHANGE
|
|
if [ -n "$NEW_PATH" ]; then
|
|
sed -i "s^${PREVIOUS_PATH}${TARGET}^${NEW_PATH}${TARGET}^g" $TO_CHANGE
|
|
fi
|
|
else
|
|
git grep ${TARGET}
|
|
fi
|
|
|
|
done
|