Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 1 | #!/bin/bash |
Jeff Sharkey | 5b47199 | 2018-09-11 10:36:57 -0600 | [diff] [blame] | 2 | LOCAL_DIR="$( dirname "${BASH_SOURCE}" )" |
Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 3 | |
Anton Hansson | 2f51277 | 2022-01-13 15:25:06 +0000 | [diff] [blame^] | 4 | if git log -n 1 --format='%D' HEAD@{upstream} | grep -q aosp/; then |
Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 5 | # Change appears to be in AOSP |
| 6 | exit 0 |
Seth Moore | 627b9ca | 2021-05-24 13:43:35 -0700 | [diff] [blame] | 7 | elif git log -n 1 --format='%B' $1 | grep -q -E "^Ignore-AOSP-First: .+" ; then |
| 8 | # Change is explicitly marked as ok to skip AOSP |
| 9 | exit 0 |
Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 10 | else |
Christopher Ferris | 9fbe8a8 | 2021-05-18 13:49:08 -0700 | [diff] [blame] | 11 | # Change appears to be non-AOSP. |
| 12 | |
| 13 | # If this is a cherry-pick, then allow it. |
| 14 | cherrypick=0 |
| 15 | while read -r line ; do |
| 16 | if [[ $line =~ cherry\ picked\ from ]] ; then |
| 17 | (( cherrypick++ )) |
| 18 | fi |
| 19 | done < <(git show $1) |
| 20 | if (( cherrypick != 0 )); then |
| 21 | # This is a cherry-pick, so allow it. |
| 22 | exit 0 |
| 23 | fi |
| 24 | |
| 25 | # See if any files are affected. |
Jeff Sharkey | 5b47199 | 2018-09-11 10:36:57 -0600 | [diff] [blame] | 26 | count=0 |
| 27 | while read -r file ; do |
| 28 | if (( count == 0 )); then |
| 29 | echo |
| 30 | fi |
Alan Stokes | 293096a | 2020-07-28 18:19:20 +0100 | [diff] [blame] | 31 | echo -e "\033[0;31;47mThe source of truth for '$file' is in AOSP.\033[0m" |
Jeff Sharkey | 5b47199 | 2018-09-11 10:36:57 -0600 | [diff] [blame] | 32 | (( count++ )) |
| 33 | done < <(git show --name-only --pretty=format: $1 | grep -- "$2") |
| 34 | if (( count != 0 )); then |
Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 35 | echo |
Jeff Sharkey | 5b47199 | 2018-09-11 10:36:57 -0600 | [diff] [blame] | 36 | echo "If your change contains no confidential details (such as security fixes), please" |
| 37 | echo "upload and merge this change at https://android-review.googlesource.com/." |
Martin Stjernholm | f1ca127 | 2021-08-31 16:49:11 +0100 | [diff] [blame] | 38 | echo "Else add a tag 'Ignore-AOSP-First:' with the reason to bypass AOSP." |
Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 39 | echo |
Jeff Sharkey | aaaf1b7 | 2018-12-03 10:56:56 -0700 | [diff] [blame] | 40 | exit 1 |
Jeff Sharkey | 5b47199 | 2018-09-11 10:36:57 -0600 | [diff] [blame] | 41 | fi |
Jeff Sharkey | 0a9c731 | 2018-08-23 22:01:53 -0600 | [diff] [blame] | 42 | fi |