@@ -30,7 +30,7 @@ buildscript {
30
30
google()
31
31
}
32
32
dependencies {
33
- classpath ' com.android.tools.build:gradle:7.2.1 '
33
+ classpath ' com.android.tools.build:gradle:7.2.2 '
34
34
classpath " org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version "
35
35
36
36
// NOTE: Do not place your application dependencies here; they belong
@@ -86,7 +86,7 @@ task clean(type: Delete) {
86
86
task cleanAllModules () {
87
87
logger. info(" Running clean for all modules" )
88
88
dependsOn(' :android-sdk:clean' , ' :event-handler:clean' ,
89
- ' :user-profile:clean' , ' :shared:clean' , ' :datafile-handler:clean' )
89
+ ' :user-profile:clean' , ' :shared:clean' , ' :datafile-handler:clean' , ' :odp:clean ' )
90
90
}
91
91
92
92
task testAllModules () {
@@ -100,20 +100,21 @@ task testAllModulesTravis () {
100
100
' :event-handler:connectedAndroidTest' , ' :event-handler:test' ,
101
101
' :datafile-handler:connectedAndroidTest' , ' :datafile-handler:test' ,
102
102
' :user-profile:connectedAndroidTest' ,
103
- ' :shared:connectedAndroidTest' )
103
+ ' :shared:connectedAndroidTest' ,
104
+ ' :odp:connectedAndroidTest' , ' :odp:test'
105
+ )
104
106
}
105
107
106
108
// Publish to MavenCentral
107
109
108
110
task ship () {
109
- dependsOn(' :android-sdk:ship' , ' :shared:ship' , ' :event-handler:ship' , ' :user-profile:ship' , ' :datafile-handler:ship' )
111
+ dependsOn(' :android-sdk:ship' , ' :shared:ship' , ' :event-handler:ship' , ' :user-profile:ship' , ' :datafile-handler:ship' , ' :odp:ship ' )
110
112
}
111
113
112
114
def publishedProjects = subprojects. findAll { it. name != ' test-app' }
113
115
configure(publishedProjects) {
114
116
apply plugin : ' com.android.library'
115
117
apply plugin : ' kotlin-android'
116
- apply plugin : ' kotlin-android-extensions'
117
118
apply plugin : ' maven-publish'
118
119
apply plugin : ' signing'
119
120
@@ -140,13 +141,17 @@ configure(publishedProjects) {
140
141
artifactName = ' android-sdk-user-profile'
141
142
docTitle = ' Optimizely X Android SDK: User Profile'
142
143
break
144
+ case ' odp' :
145
+ artifactName = ' android-sdk-odp'
146
+ docTitle = ' Optimizely X Android SDK: ODP'
147
+ break
143
148
default :
144
149
return
145
150
}
146
151
147
152
android. libraryVariants. all { variant ->
148
153
task(" ${ variant.name} Javadoc" , type : Javadoc , dependsOn : " assemble${ variant.name.capitalize()} " ) {
149
- source = variant. javaCompile . source
154
+ source = variant. javaCompileProvider . get() . source
150
155
151
156
title = docTitle
152
157
@@ -178,11 +183,20 @@ configure(publishedProjects) {
178
183
android. libraryVariants. all { variant ->
179
184
task(" ${ variant.name} SourcesJar" , type : Jar ) {
180
185
classifier = ' sources'
181
- from variant. javaCompile . source
186
+ from variant. javaCompileProvider . get() . source
182
187
}
183
188
project. artifacts. add(" archives" , tasks[" ${ variant.name} SourcesJar" ]);
184
189
}
185
190
191
+ android {
192
+ publishing {
193
+ singleVariant(" release" ) {
194
+ withSourcesJar()
195
+ withJavadocJar()
196
+ }
197
+ }
198
+ }
199
+
186
200
afterEvaluate {
187
201
publishing {
188
202
publications {
@@ -196,8 +210,6 @@ configure(publishedProjects) {
196
210
pom. description = ' The Android SDK for Optimizely Full Stack (feature flag management for product development teams)'
197
211
198
212
from components. release
199
- artifact releaseSourcesJar
200
- artifact releaseJavadocJar
201
213
}
202
214
}
203
215
repositories {
@@ -232,11 +244,12 @@ configure(publishedProjects) {
232
244
}
233
245
}
234
246
235
- project(' :android-sdk' ). ship. shouldRunAfter = [' :android-sdk:clean' , ' :datafile-handler:ship' , ' :event-handler:ship' , ' :user-profile:ship' ]
247
+ project(' :android-sdk' ). ship. shouldRunAfter = [' :android-sdk:clean' , ' :datafile-handler:ship' , ' :event-handler:ship' , ' :user-profile:ship' , ' :odp:ship ' ]
236
248
project(' :datafile-handler' ). ship. shouldRunAfter = [' :datafile-handler:clean' , ' :shared:ship' ]
237
249
project(' :event-handler' ). ship. shouldRunAfter = [' :event-handler:clean' , ' :shared:ship' ]
238
250
project(' :shared' ). ship. shouldRunAfter = [' :shared:clean' ]
239
251
project(' :user-profile' ). ship. shouldRunAfter = [' :user-profile:clean' , ' :shared:ship' ]
252
+ project(' :odp' ). ship. shouldRunAfter = [' :odp:clean' , ' :shared:ship' ]
240
253
241
254
// standard POM format required by MavenCentral
242
255
0 commit comments