only bump version for changed modules.

pull/139/head
Muhammad Atif Ali 1 year ago
parent 51d217cc00
commit 9d798b5ba8

@ -23,7 +23,7 @@ jobs:
run: echo "TAG=$(git describe --tags --abbrev=0 | sed 's/^v//')" >> $GITHUB_OUTPUT run: echo "TAG=$(git describe --tags --abbrev=0 | sed 's/^v//')" >> $GITHUB_OUTPUT
- name: Run update script - name: Run update script
run: ./update-readme.sh run: ./update-version.sh
- name: Create Pull Request - name: Create Pull Request
id: create-pr id: create-pr

@ -6,9 +6,23 @@
set -euo pipefail set -euo pipefail
current_tag=$(git describe --tags --abbrev=0)
previous_tag=$(git describe --tags --abbrev=0 $current_tag^)
changed_files=$(git diff --name-only "$previous_tag" "$current_tag")
changed_dirs=()
for file in $changed_files; do
dir=$(dirname "$file")
changed_dirs+=("$dir")
done
changed_dirs=($(printf "%s\n" "${changed_dirs[@]}" | sort -u))
LATEST_TAG=$(git describe --abbrev=0 --tags | sed 's/^v//') || exit $? LATEST_TAG=$(git describe --abbrev=0 --tags | sed 's/^v//') || exit $?
find . -name README.md | while read -r file; do for dir in "${changed_dirs[@]}"; do
if [[ -f "$dir/README.md" ]]; then
echo "Bumping version in $dir/README.md"
file="$dir/README.md"
tmpfile=$(mktemp /tmp/tempfile.XXXXXX) tmpfile=$(mktemp /tmp/tempfile.XXXXXX)
awk -v tag="$LATEST_TAG" '{ awk -v tag="$LATEST_TAG" '{
if ($1 == "version" && $2 == "=") { if ($1 == "version" && $2 == "=") {
@ -18,4 +32,5 @@ find . -name README.md | while read -r file; do
print print
} }
}' "$file" > "$tmpfile" && mv "$tmpfile" "$file" }' "$file" > "$tmpfile" && mv "$tmpfile" "$file"
fi
done done
Loading…
Cancel
Save