|
@@ -33,13 +33,33 @@ mv latest.apk ~/apks/
|
|
|
/bin/ls -t ~/apks/*.apk | awk 'NR>6' | xargs rm -f
|
|
|
|
|
|
lastBuildTime=$(date --date="$(git log -1 --format=%ai $(git tag | grep dev | tail -n1))" +%s)
|
|
|
-changelog=$(git log --after=$lastBuildTime --pretty=oneline --abbrev-commit)
|
|
|
+# Show only the commit subject in the changelog and filter out:
|
|
|
+# * Merges
|
|
|
+# * Dependabot commits
|
|
|
+# * Commits touching only non-user-facing stuff like tests
|
|
|
+# * Version bump commits
|
|
|
+changelog=$(git log --no-merges --after=$lastBuildTime --invert-grep --author=dependabot --pretty='format:%s' -- ':!src/androidTest' ':!.*' ':!scripts/analysis' | grep -vE '^daily dev [[:digit:]]{8}$')
|
|
|
+# Make Transifex updates have a nicer description
|
|
|
+if echo "$changelog" | grep -q 'tx-robot'; then
|
|
|
+ changelog=$(echo "$changelog" | grep -v 'tx-robot')
|
|
|
+ # This is a funky bashism - preceding a single-quote string with $ lets you put escape chars in it
|
|
|
+ changelog="${changelog}"$'\nUpdate translations'
|
|
|
+fi
|
|
|
|
|
|
libraryCommit=$(curl https://api.github.com/repos/nextcloud/android-library/commits/master | jq .sha | sed s'/\"//g')
|
|
|
|
|
|
+# Check if the library was updated
|
|
|
+if ! grep -q libraryCommit build.gradle; then
|
|
|
+ changelog="${changelog}"$'\nUpdate Nextcloud Android library'
|
|
|
+fi
|
|
|
+
|
|
|
+# Collapse dependency updates into a single "Update dependencies" entry
|
|
|
+if git log --after=$lastBuildTime --pretty='format:%an' | grep -q dependabot; then
|
|
|
+ changelog="${changelog}"$'\nUpdate 3rd-party dependencies'
|
|
|
+fi
|
|
|
+
|
|
|
# changelog
|
|
|
echo "$changelog" > src/versionDev/fastlane/metadata/android/en-US/changelogs/$date.txt
|
|
|
-echo "library commit: $libraryCommit" >> src/versionDev/fastlane/metadata/android/en-US/changelogs/$date.txt
|
|
|
|
|
|
# build
|
|
|
sed -i s"# androidLibraryVersion.*#androidLibraryVersion =\"$libraryCommit\"#" build.gradle
|