@@ -12,10 +12,11 @@ import kotlin.math.abs
1212allprojects {
1313 extra.set(" activePartition" , true )
1414
15- val shouldUseTaskPartitions = rootProject.hasProperty(" taskPartitionCount" ) && rootProject.hasProperty(" taskPartition" )
16- if (shouldUseTaskPartitions) {
17- val taskPartitionCount = rootProject.property(" taskPartitionCount" ) as String
18- val taskPartition = rootProject.property(" taskPartition" ) as String
15+ val taskPartitionCountProvider = rootProject.providers.gradleProperty(" taskPartitionCount" )
16+ val taskPartitionProvider = rootProject.providers.gradleProperty(" taskPartition" )
17+ if (taskPartitionCountProvider.isPresent && taskPartitionProvider.isPresent) {
18+ val taskPartitionCount = taskPartitionCountProvider.get()
19+ val taskPartition = taskPartitionProvider.get()
1920 val currentTaskPartition = abs(project.path.hashCode() % taskPartitionCount.toInt())
2021 extra.set(" activePartition" , currentTaskPartition == taskPartition.toInt())
2122 }
@@ -47,13 +48,10 @@ fun getChangedFiles(baseRef: String, newRef: String): List<File> {
4748// Initialize git change tracking
4849rootProject.extra.set(" useGitChanges" , false )
4950
50- if (rootProject.hasProperty(" gitBaseRef" )) {
51- val baseRef = rootProject.property(" gitBaseRef" ) as String
52- val newRef = if (rootProject.hasProperty(" gitNewRef" )) {
53- rootProject.property(" gitNewRef" ) as String
54- } else {
55- " HEAD"
56- }
51+ val gitBaseRefProvider = rootProject.providers.gradleProperty(" gitBaseRef" )
52+ if (gitBaseRefProvider.isPresent) {
53+ val baseRef = gitBaseRefProvider.get()
54+ val newRef = rootProject.providers.gradleProperty(" gitNewRef" ).orElse(" HEAD" ).get()
5755
5856 val changedFiles = getChangedFiles(baseRef, newRef)
5957 rootProject.extra.set(" changedFiles" , changedFiles)
@@ -124,9 +122,10 @@ if (rootProject.hasProperty("gitBaseRef")) {
124122}
125123
126124tasks.register(" runMuzzle" ) {
127- val muzzleSubprojects = subprojects.filter { p ->
128- val activePartition = p.extra.get(" activePartition" ) as Boolean
129- activePartition && p.plugins.hasPlugin(" java" ) && p.plugins.hasPlugin(" muzzle" )
130- }
131- dependsOn(muzzleSubprojects.map { p -> " ${p.path} :muzzle" })
125+ dependsOn(providers.provider {
126+ subprojects.filter { p ->
127+ val activePartition = p.extra.get(" activePartition" ) as Boolean
128+ activePartition && p.plugins.hasPlugin(" java" ) && p.plugins.hasPlugin(" muzzle" )
129+ }.map { p -> " ${p.path} :muzzle" }
130+ })
132131}
0 commit comments