Skip to content

Commit d93de24

Browse files
committed
make bcv-gradle-plugin only use Gradle 7.6 deps
1 parent 98a3241 commit d93de24

File tree

3 files changed

+31
-16
lines changed

3 files changed

+31
-16
lines changed

buildSrc/src/main/kotlin/buildsrc/conventions/gradle-plugin-variants.gradle.kts

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,13 @@
11
package buildsrc.conventions
22

33
import org.gradle.api.attributes.plugin.GradlePluginApiVersion.GRADLE_PLUGIN_API_VERSION_ATTRIBUTE
4+
import buildsrc.utils.configurationNames
45

56
plugins {
67
id("buildsrc.conventions.base")
78
`java-gradle-plugin`
89
}
910

10-
fun SourceSet.configurationNames() =
11-
listOf(
12-
compileOnlyConfigurationName,
13-
compileOnlyApiConfigurationName,
14-
compileClasspathConfigurationName,
15-
annotationProcessorConfigurationName,
16-
apiConfigurationName,
17-
implementationConfigurationName,
18-
apiElementsConfigurationName,
19-
runtimeOnlyConfigurationName,
20-
runtimeClasspathConfigurationName,
21-
runtimeElementsConfigurationName,
22-
javadocElementsConfigurationName,
23-
sourcesElementsConfigurationName,
24-
)
25-
2611
configurations
2712
.matching { it.isCanBeConsumed && it.name in sourceSets.main.get().configurationNames() }
2813
.configureEach {

buildSrc/src/main/kotlin/buildsrc/utils/gradle.kt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import org.gradle.api.Project
44
import org.gradle.api.artifacts.Configuration
55
import org.gradle.api.component.AdhocComponentWithVariants
66
import org.gradle.api.file.RelativePath
7+
import org.gradle.api.tasks.SourceSet
78
import org.gradle.kotlin.dsl.get
89

910
/**
@@ -63,3 +64,20 @@ fun Project.skipTestFixturesPublications() {
6364
javaComponent.withVariantsFromConfiguration(configurations["testFixturesApiElements"]) { skip() }
6465
javaComponent.withVariantsFromConfiguration(configurations["testFixturesRuntimeElements"]) { skip() }
6566
}
67+
68+
/** Get all [Configuration] names for a [SourceSet] */
69+
fun SourceSet.configurationNames() =
70+
listOf(
71+
compileOnlyConfigurationName,
72+
compileOnlyApiConfigurationName,
73+
compileClasspathConfigurationName,
74+
annotationProcessorConfigurationName,
75+
apiConfigurationName,
76+
implementationConfigurationName,
77+
apiElementsConfigurationName,
78+
runtimeOnlyConfigurationName,
79+
runtimeClasspathConfigurationName,
80+
runtimeElementsConfigurationName,
81+
javadocElementsConfigurationName,
82+
sourcesElementsConfigurationName,
83+
)

modules/bcv-gradle-plugin/build.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,16 @@ gradlePlugin {
6363
}
6464
}
6565

66+
// Only consume Gradle dependencies that match the Gradle version we support
67+
configurations
68+
.matching { it.isCanBeConsumed && it.name in sourceSets.main.get().configurationNames() }
69+
.configureEach {
70+
attributes {
71+
attribute(
72+
GRADLE_PLUGIN_API_VERSION_ATTRIBUTE,
73+
objects.named(libs.versions.testGradleVersion.get())
74+
)
75+
}
76+
}
77+
6678
skipTestFixturesPublications()

0 commit comments

Comments
 (0)