This repository has been archived by the owner on Aug 8, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[android] android nitpick script, verify submodule pins
(cherry picked from commit e598146)
- Loading branch information
1 parent
8a1cf7f
commit d38c65b
Showing
5 changed files
with
77 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
apply from: "${rootDir}/gradle/dependencies.gradle" | ||
|
||
def MAPBOX_JAVA_DIR = 'mapbox-java' | ||
def MAPBOX_JAVA_TAG_PREFIX = 'v' | ||
|
||
def MAPBOX_TELEMETRY_DIR = 'mapbox-events-android' | ||
def MAPBOX_TELEMETRY_TAG_PREFIX = 'telem-' | ||
|
||
def MAPBOX_GESTURES_DIR = 'mapbox-gestures-android' | ||
def MAPBOX_GESTURES_TAG_PREFIX = 'v' | ||
|
||
task verifyVendorSubmodulePins { | ||
doLast { | ||
println "Verify vendor submodule pins" | ||
verifyVendorSubmodulePin(MAPBOX_JAVA_DIR, MAPBOX_JAVA_TAG_PREFIX, versions.mapboxServices) | ||
verifyVendorSubmodulePin(MAPBOX_TELEMETRY_DIR, MAPBOX_TELEMETRY_TAG_PREFIX, versions.mapboxTelemetry) | ||
verifyVendorSubmodulePin(MAPBOX_GESTURES_DIR, MAPBOX_GESTURES_TAG_PREFIX, versions.mapboxGestures) | ||
} | ||
} | ||
|
||
task androidNitpick { | ||
doLast { | ||
println "Running android nitpick script" | ||
verifyVendorSubmodulePins | ||
} | ||
} | ||
|
||
private def verifyVendorSubmodulePin(def dir, def prefix, def version) { | ||
def output = new ByteArrayOutputStream() | ||
exec { | ||
workingDir "${rootDir}/vendor/${dir}" | ||
commandLine "git", "rev-list", "-n", "1", "tags/${prefix + version}" | ||
standardOutput = output | ||
} | ||
def expectedCommit = output.toString().trim() | ||
output.reset() | ||
|
||
exec { | ||
workingDir "${rootDir}/vendor/${dir}" | ||
commandLine "git", "rev-parse", "HEAD" | ||
standardOutput = output | ||
} | ||
def actualCommit = output.toString().trim() | ||
|
||
if (actualCommit != expectedCommit) { | ||
throw new IllegalStateException("${dir} vendor repository is not checked out on the consumed binary's tag.\n" + | ||
"Expected commit: " + expectedCommit + "(${prefix + version} tag).\n" + | ||
"Actual commit: " + actualCommit + ".\n" + | ||
"If you've updated the version in the dependencies.gradle file, make sure to bump the submodule pin in the platform/android/vendor/ directory to match the release tag.\n" + | ||
"If you've bumped the pin, make sure to verify the version tag prefix in the android-nitpick.gradle file.") | ||
} | ||
output.close() | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
task updateVendorSubmodules { | ||
doLast { | ||
"git submodule update --init --recursive vendor".execute() | ||
} | ||
} |