@@ -19,101 +19,103 @@ apply plugin: 'maven'
19
19
apply plugin : ' signing'
20
20
21
21
22
- afterEvaluate { project ->
23
- String user = null
24
- String repo = null
25
- ' git remote -v' . execute(
null , project
. projectDir)
. getText()
. find(
' .*[email protected] /(.*?)/(.*?) .*?' ) {
26
- match ->
27
- user = match[1 ]
28
- repo = match[2 ]
29
- }
30
-
31
- String githubUrl = ' https://api.github.com/repos/' + user + ' /' + repo;
32
- if (System . getenv(). GITHUB_TOKEN )
33
- githubUrl + = ' ?access_token=' + System . getenv(). GITHUB_TOKEN
34
- def repoInfo = new groovy.json.JsonSlurper (). parseText(new URL (githubUrl). getText())
35
-
36
- def android_manifest
37
- try {
38
- android_manifest = new XmlParser (false , false ). parseText(new File (project. projectDir, ' AndroidManifest.xml' ). getText())
39
- }
40
- catch (e) {
41
- android_manifest = new XmlParser (false , false ). parseText(new File (project. projectDir, ' src/main/AndroidManifest.xml' ). getText())
42
- }
43
- def versionName = android_manifest. ' @android:versionName'
44
- def package_name = android_manifest. ' @package'
45
- def artifact_id = project. projectDir. getName(). toLowerCase()
46
- project. version = versionName
47
- project. group = package_name
48
-
49
- uploadArchives {
50
- repositories {
51
- mavenDeployer {
52
-
53
- beforeDeployment { MavenDeployment deployment -> signing. signPom(deployment) }
54
- pom. groupId = package_name
55
- pom. artifactId = artifact_id
56
- pom. version = versionName
57
-
58
- repository(url : " https://oss.sonatype.org/service/local/staging/deploy/maven2/" ) {
59
- authentication(userName : sonatypeUsername, password : sonatypePassword)
60
- }
61
-
62
- pom. project {
63
- name repo
64
- packaging ' jar'
65
- description repoInfo. description
66
- url repoInfo. html_url
67
-
68
- scm {
69
- url repoInfo. git_url
70
- connection repoInfo. git_url
71
- developerConnection repoInfo. ssh_url
72
- }
73
-
74
- licenses {
75
- license {
76
- name ' The Apache Software License, Version 2.0'
77
- url ' http://www.apache.org/licenses/LICENSE-2.0.txt'
78
- distribution ' repo'
79
- }
80
- }
81
-
82
- developers {
83
- developer {
84
- id user
85
- name user
86
- }
87
- }
88
- }
89
- }
90
- }
91
- }
92
-
93
- signing {
94
- sign configurations. archives
95
- }
96
-
97
- task androidJavadocs(type : Javadoc ) {
98
- source = android. sourceSets. main. java. srcDirs
99
- }
100
-
101
- task androidJavadocsJar(type : Jar ) {
102
- classifier = ' javadoc'
103
- baseName = artifact_id
104
- from androidJavadocs. destinationDir
105
- }
106
-
107
- task androidSourcesJar(type : Jar ) {
108
- classifier = ' sources'
109
- baseName = artifact_id
110
- from android. sourceSets. main. java. srcDirs
111
- }
112
-
113
- artifacts {
114
- // archives packageReleaseJar
115
- archives androidSourcesJar
116
- archives androidJavadocsJar
117
- }
118
- }
119
-
22
+ if (hasProperty(' sonatypeUsername' ) && hasProperty(' sonatypePassword' ) && hasProperty(' githubToken' )) {
23
+
24
+ afterEvaluate { project ->
25
+ String user = null
26
+ String repo = null
27
+ ' git remote -v' . execute(
null , project
. projectDir)
. getText()
. find(
' .*[email protected] /(.*?)/(.*?) .*?' ) {
28
+ match ->
29
+ user = match[1 ]
30
+ repo = match[2 ]
31
+ }
32
+
33
+ String githubUrl = ' https://api.github.com/repos/' + user + ' /' + repo
34
+ if (System . getenv(). GITHUB_TOKEN )
35
+ githubUrl + = ' ?access_token=' + System . getenv(). GITHUB_TOKEN
36
+ def repoInfo = new groovy.json.JsonSlurper (). parseText(new URL (githubUrl). getText())
37
+
38
+ def android_manifest
39
+ try {
40
+ android_manifest = new XmlParser (false , false ). parseText(new File (project. projectDir, ' AndroidManifest.xml' ). getText())
41
+ }
42
+ catch (e) {
43
+ android_manifest = new XmlParser (false , false ). parseText(new File (project. projectDir, ' src/main/AndroidManifest.xml' ). getText())
44
+ }
45
+ def versionName = android_manifest. ' @android:versionName'
46
+ def package_name = android_manifest. ' @package'
47
+ def artifact_id = project. projectDir. getName(). toLowerCase()
48
+ project. version = versionName
49
+ project. group = package_name
50
+
51
+ uploadArchives {
52
+ repositories {
53
+ mavenDeployer {
54
+
55
+ beforeDeployment { MavenDeployment deployment -> signing. signPom(deployment) }
56
+ pom. groupId = package_name
57
+ pom. artifactId = artifact_id
58
+ pom. version = versionName
59
+
60
+ repository(url : " https://oss.sonatype.org/service/local/staging/deploy/maven2/" ) {
61
+ authentication(userName : sonatypeUsername, password : sonatypePassword)
62
+ }
63
+
64
+ pom. project {
65
+ name repo
66
+ packaging ' jar'
67
+ description repoInfo. description
68
+ url repoInfo. html_url
69
+
70
+ scm {
71
+ url repoInfo. git_url
72
+ connection repoInfo. git_url
73
+ developerConnection repoInfo. ssh_url
74
+ }
75
+
76
+ licenses {
77
+ license {
78
+ name ' The Apache Software License, Version 2.0'
79
+ url ' http://www.apache.org/licenses/LICENSE-2.0.txt'
80
+ distribution ' repo'
81
+ }
82
+ }
83
+
84
+ developers {
85
+ developer {
86
+ id user
87
+ name user
88
+ }
89
+ }
90
+ }
91
+ }
92
+ }
93
+ }
94
+
95
+ signing {
96
+ sign configurations. archives
97
+ }
98
+
99
+ task androidJavadocs(type : Javadoc ) {
100
+ source = android. sourceSets. main. java. srcDirs
101
+ }
102
+
103
+ task androidJavadocsJar(type : Jar ) {
104
+ classifier = ' javadoc'
105
+ baseName = artifact_id
106
+ from androidJavadocs. destinationDir
107
+ }
108
+
109
+ task androidSourcesJar(type : Jar ) {
110
+ classifier = ' sources'
111
+ baseName = artifact_id
112
+ from android. sourceSets. main. java. srcDirs
113
+ }
114
+
115
+ artifacts {
116
+ // archives packageReleaseJar
117
+ archives androidSourcesJar
118
+ archives androidJavadocsJar
119
+ }
120
+ }
121
+ }
0 commit comments