1+ /*
2+ * Test command
3+ * gradlew packar -PtargetSdk=android-23 -PminSdk=17 -PbuildToolsVersion=23.0.2 -PsupportVersion=23.0.1 -PcompileSdk=android-23
4+ * To run:
5+ * gradlew packar
6+ *
7+ * Options:
8+ * -PtargetSdk=[target_sdk]
9+ * -PminSdk=[target_sdk]
10+ * -PbuildToolsVersion=[build_tools_version]
11+ * -PsupportVersion=[support_version]
12+ * -PcompileSdk=[compile_sdk_version]
13+ */
14+
115import groovy.json.JsonSlurper //used to parse package.json
216import groovy.json.JsonBuilder
317import groovy.json.JsonOutput
@@ -9,6 +23,14 @@ def pVersion = "no package version was provided by build.gradle build"
923def arVersion = " no commit sha was provided by build.gradle build"
1024def commitVersionFile = " commit.txt"
1125
26+ def compileSdkVer = " " ;
27+ def buildToolsVer = " " ;
28+ def minSdkVer = " " ;
29+ def targetSdkVer = " " ;
30+ def supportVer = " " ;
31+
32+ def envVars = new LinkedList<String > ()
33+
1234task checkEnvironmentVariables {
1335 if (" $System . env . JAVA_HOME " == " " || " $System . env . JAVA_HOME " == " null" ) {
1436 throw new GradleException (" Set JAVA_HOME to point to the correct Jdk location\n " );
@@ -25,6 +47,27 @@ task checkEnvironmentVariables {
2547 if (project. hasProperty(" metadataGen" ) && ! file(" ../android-metadata-generator/dist/tns-android-metadata-generator-0.0.1.tgz" ). exists()) {
2648 throw new GradleException (" android-metadata-generator build output not found and no metadataGen option specified. Build android-metadata-generator first.\n " );
2749 }
50+
51+ if (project. hasProperty(" compileSdk" )) {
52+ compileSdkVer = " -PcompileSdk=$compileSdk "
53+ envVars. add(compileSdkVer)
54+ }
55+ if (project. hasProperty(" buildToolsVersion" )) {
56+ buildToolsVer = " -PbuildToolsVersion=$buildToolsVersion "
57+ envVars. add(buildToolsVer)
58+ }
59+ if (project. hasProperty(" minSdk" )) {
60+ minSdkVer = " -PminSdk=$minSdk "
61+ envVars. add(minSdkVer)
62+ }
63+ if (project. hasProperty(" targetSdk" )) {
64+ targetSdkVer = " -PtargetSdk=$targetSdk "
65+ envVars. add(targetSdkVer)
66+ }
67+ if (project. hasProperty(" supportVersion" )) {
68+ supportVer = " -PsupportVersion=$supportVersion "
69+ envVars. add(supportVer)
70+ }
2871}
2972
3073task checkAndroidCommand (type :Exec ) {
@@ -136,13 +179,23 @@ task deleteCommitFile (type: Delete) {
136179task generateRuntime (type : Exec ) {
137180 doFirst{
138181 workingDir " $rootDir /src"
139-
140- // command gradle buildar -PpackageVersion=[from_package.json] -PgitCommitVersion=[from_some_sys_variable]
182+
183+ // command gradlew buildar -PpackageVersion=[from_package.json] -PgitCommitVersion=[from_some_sys_variable]
141184 if (isWinOs) {
142- commandLine " cmd" , " /c" , " gradle" , " buildar" , " -PpackageVersion=${ pVersion} " , " -PgitCommitVersion=${ arVersion} "
185+ envVars. addFirst(" -PgitCommitVersion=${ arVersion} " );
186+ envVars. addFirst(" -PpackageVersion=${ pVersion} " );
187+ envVars. addFirst(" buildar" );
188+ envVars. addFirst(" gradlew" );
189+ envVars. addFirst(" /c" );
190+ envVars. addFirst(" cmd" );
191+ commandLine envVars. toArray()
143192 }
144193 else {
145- commandLine " gradle" , " buildar" , " -PpackageVersion=${ pVersion} " , " -PgitCommitVersion=${ arVersion} "
194+ envVars. addFirst(" -PgitCommitVersion=${ arVersion} " );
195+ envVars. addFirst(" -PpackageVersion=${ pVersion} " );
196+ envVars. addFirst(" buildar" );
197+ envVars. addFirst(" ./gradlew" );
198+ commandLine envVars. toArray();
146199 }
147200 }
148201}
@@ -156,10 +209,10 @@ task generateMetadataGeneratorJar (type: Exec) {
156209 workingDir " $rootDir /android-metadata-generator"
157210
158211 if (isWinOs) {
159- commandLine " cmd" , " /c" , " gradle " , " jarmg"
212+ commandLine " cmd" , " /c" , " gradlew " , " jarmg"
160213 }
161214 else {
162- commandLine " gradle " , " jarmg"
215+ commandLine " ./gradlew " , " jarmg"
163216 }
164217}
165218
0 commit comments