updateLibraryHash.sh 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/bin/bash
  2. #
  3. # Nextcloud Android client application
  4. #
  5. # @author Tobias Kaminsky
  6. # Copyright (C) 2024 Tobias Kaminsky
  7. # Copyright (C) 2024 Nextcloud GmbH
  8. #
  9. # This program is free software: you can redistribute it and/or modify
  10. # it under the terms of the GNU Affero General Public License as published by
  11. # the Free Software Foundation, either version 3 of the License, or
  12. # (at your option) any later version.
  13. #
  14. # This program is distributed in the hope that it will be useful,
  15. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. # GNU Affero General Public License for more details.
  18. #
  19. # You should have received a copy of the GNU Affero General Public License
  20. # along with this program. If not, see <https://www.gnu.org/licenses/>.
  21. #
  22. latestCommit=$(curl -s https://api.github.com/repos/nextcloud/android-library/commits/master | jq .sha | sed s'/\"//g')
  23. currentCommit=$(grep "androidLibraryVersion" build.gradle | cut -f2 -d'"')
  24. git fetch
  25. git checkout master
  26. git pull
  27. [[ $latestCommit == "$currentCommit" ]] && exit # nothing to do
  28. git fetch
  29. git checkout -B update-library-"$(date +%F)" origin/master
  30. sed -i s"#androidLibraryVersion\ =.*#androidLibraryVersion =\"$latestCommit\"#" build.gradle
  31. ./gradlew --console=plain --dependency-verification lenient -q --write-verification-metadata sha256,pgp help
  32. git add build.gradle
  33. git add gradle/verification-metadata.xml
  34. git commit -m "Update library"
  35. gh pr create --title "Update library $(date +%F)" --body "Update library to latest commit"