Skip to content

Commit 92b0004

Browse files
authored
copy attribute of resolvable configurations from base source set to facet source set (#100)
fix high priority archrule violation to fix configuration cache
1 parent 1776e05 commit 92b0004

15 files changed

Lines changed: 536 additions & 227 deletions

.github/workflows/build.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,12 @@ jobs:
3131
21
3232
${{ matrix.java }}
3333
java-package: jdk
34-
# - name: Setup Gradle
35-
# uses: gradle/actions/setup-gradle@v5
36-
# with:
37-
# cache-overwrite-existing: true
34+
- name: Setup Gradle
35+
uses: gradle/actions/setup-gradle@v5
36+
with:
37+
cache-overwrite-existing: true
38+
build-scan-terms-of-use-url: 'https://gradle.com/terms-of-service'
39+
build-scan-terms-of-use-agree: 'yes'
3840
- name: Gradle build
3941
run: ./gradlew --stacktrace build
4042
env:

.github/workflows/release.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,12 @@ jobs:
3535
17
3636
21
3737
java-package: jdk
38-
# - name: Setup Gradle
39-
# uses: gradle/actions/setup-gradle@v5
40-
# with:
41-
# cache-overwrite-existing: true
38+
- name: Setup Gradle
39+
uses: gradle/actions/setup-gradle@v5
40+
with:
41+
cache-overwrite-existing: true
42+
build-scan-terms-of-use-url: 'https://gradle.com/terms-of-service'
43+
build-scan-terms-of-use-agree: 'yes'
4244
- name: Verify plugin publication
4345
if: (!contains(github.ref, '-rc.'))
4446
run: ./gradlew --stacktrace -Prelease.useLastTag=true final publishPlugin --validate-only -x check

build.gradle

Lines changed: 0 additions & 79 deletions
This file was deleted.

build.gradle.kts

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
import org.gradle.plugin.compatibility.compatibility
2+
3+
/*
4+
* Copyright 2014-2019 Netflix, Inc.
5+
*
6+
* Licensed under the Apache License, Version 2.0 (the "License");
7+
* you may not use this file except in compliance with the License.
8+
* You may obtain a copy of the License at
9+
*
10+
* http://www.apache.org/licenses/LICENSE-2.0
11+
*
12+
* Unless required by applicable law or agreed to in writing, software
13+
* distributed under the License is distributed on an "AS IS" BASIS,
14+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
* See the License for the specific language governing permissions and
16+
* limitations under the License.
17+
*/
18+
plugins {
19+
id("com.netflix.nebula.plugin-plugin")
20+
`kotlin-dsl`
21+
}
22+
23+
description = "Gradle plugin to setup a responsible Gradle project"
24+
25+
contacts {
26+
addPerson("nebula-plugins-oss@netflix.com") {
27+
moniker = "Nebula Plugins Maintainers"
28+
github = "nebula-plugins"
29+
}
30+
}
31+
32+
dependencies {
33+
implementation("com.netflix.nebula:nebula-gradle-interop:latest.release")
34+
implementation("com.netflix.nebula:nebula-publishing-plugin:latest.release")
35+
implementation("com.netflix.nebula:gradle-contacts-plugin:latest.release")
36+
implementation("com.netflix.nebula:gradle-dependency-lock-plugin:latest.release")
37+
implementation("com.netflix.nebula:gradle-info-plugin:latest.release")
38+
testImplementation("org.spockframework:spock-junit4:2.4-groovy-4.0")
39+
}
40+
41+
gradlePlugin {
42+
plugins {
43+
create("nebulaProject") {
44+
id = "com.netflix.nebula.project"
45+
displayName = "Nebula Project"
46+
description = project.description
47+
implementationClass = "nebula.plugin.responsible.NebulaResponsiblePlugin"
48+
tags.addAll("nebula", "project")
49+
}
50+
create("nebulaIntegTest") {
51+
id = "com.netflix.nebula.integtest"
52+
displayName = "Nebula Integration Test"
53+
description = "Adds source set and task for running integration tests separately from unit tests"
54+
implementationClass = "nebula.plugin.responsible.NebulaIntegTestPlugin"
55+
tags.addAll("nebula", "project")
56+
compatibility {
57+
features {
58+
configurationCache = true
59+
}
60+
}
61+
}
62+
create("nebulaFacet") {
63+
id = "com.netflix.nebula.facet"
64+
displayName = "Nebula Facet"
65+
description = "Reduce boilerplate for adding additional source sets"
66+
implementationClass = "nebula.plugin.responsible.NebulaFacetPlugin"
67+
tags.addAll("nebula", "project")
68+
}
69+
create("nebulaIntegTestStandalone") {
70+
id = "com.netflix.nebula.integtest-standalone"
71+
displayName = "Nebula Integration Test Standalone"
72+
description =
73+
"Adds source set and task for running integration tests separately from unit tests (standalone)"
74+
implementationClass = "nebula.plugin.responsible.NebulaIntegTestStandalonePlugin"
75+
tags.addAll("nebula", "project")
76+
}
77+
}
78+
}
79+
80+
java {
81+
toolchain {
82+
languageVersion = JavaLanguageVersion.of(17)
83+
}
84+
}
85+
testing {
86+
suites {
87+
named<JvmTestSuite>("test") {
88+
useJUnitJupiter()
89+
targets.all {
90+
testTask.configure {
91+
maxParallelForks = 4
92+
}
93+
}
94+
}
95+
}
96+
}
97+
tasks.wrapper {
98+
distributionType = Wrapper.DistributionType.ALL // ALL helps when debugging gradle plugins
99+
gradleVersion = "9.2.1"
100+
distributionSha256Sum = "72f44c9f8ebcb1af43838f45ee5c4aa9c5444898b3468ab3f4af7b6076c5bc3f"
101+
}

gradle.lockfile

Lines changed: 35 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,50 @@
11
# This is a Gradle generated file for dependency locking.
22
# Manual edits can break the build and are not advised.
33
# This file is expected to be part of source control.
4-
cglib:cglib-nodep:3.2.2=integTestRuntimeClasspath,testRuntimeClasspath
4+
cglib:cglib-nodep:3.2.2=testRuntimeClasspath
55
com.fasterxml.jackson:jackson-bom:2.14.2=runtimeClasspath,testRuntimeClasspath
6-
com.jcraft:jzlib:1.1.2=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
7-
com.netflix.nebula:gradle-contacts-plugin:7.0.2=integTestCompileClasspath,integTestRuntimeClasspath
6+
com.jcraft:jzlib:1.1.2=runtimeClasspath,testRuntimeClasspath
87
com.netflix.nebula:gradle-contacts-plugin:8.1.0=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
9-
com.netflix.nebula:gradle-dependency-lock-plugin:15.2.0=integTestCompileClasspath,integTestRuntimeClasspath
10-
com.netflix.nebula:gradle-dependency-lock-plugin:16.1.0=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
11-
com.netflix.nebula:gradle-info-plugin:14.0.0=integTestCompileClasspath,integTestRuntimeClasspath
12-
com.netflix.nebula:gradle-info-plugin:16.0.0=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
13-
com.netflix.nebula:nebula-dependencies-comparison:0.2.1=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
14-
com.netflix.nebula:nebula-gradle-interop:2.3.0=integTestCompileClasspath,integTestRuntimeClasspath
8+
com.netflix.nebula:gradle-dependency-lock-plugin:16.1.1=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
9+
com.netflix.nebula:gradle-info-plugin:16.2.1=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
10+
com.netflix.nebula:nebula-dependencies-comparison:0.2.1=runtimeClasspath,testRuntimeClasspath
1511
com.netflix.nebula:nebula-gradle-interop:3.1.0=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
16-
com.netflix.nebula:nebula-publishing-plugin:21.2.0=integTestCompileClasspath,integTestRuntimeClasspath
1712
com.netflix.nebula:nebula-publishing-plugin:23.0.0=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
18-
com.netflix.nebula:nebula-test:11.0.0=integTestCompileClasspath,integTestRuntimeClasspath
19-
com.netflix.nebula:nebula-test:11.11.3=testCompileClasspath,testRuntimeClasspath
20-
com.perforce:p4java:2015.2.1365273=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
21-
com.squareup.moshi:moshi:1.12.0=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
22-
com.squareup.okio:okio:2.10.0=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
13+
com.netflix.nebula:nebula-test:11.13.0=testCompileClasspath,testRuntimeClasspath
14+
com.perforce:p4java:2015.2.1365273=runtimeClasspath,testRuntimeClasspath
15+
com.squareup.moshi:moshi:1.12.0=runtimeClasspath,testRuntimeClasspath
16+
com.squareup.okio:okio:2.10.0=runtimeClasspath,testRuntimeClasspath
2317
io.leangen.geantyref:geantyref:1.3.16=testRuntimeClasspath
24-
joda-time:joda-time:2.10=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
25-
junit:junit:4.13.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
26-
net.bytebuddy:byte-buddy:1.15.11=testCompileClasspath,testRuntimeClasspath
27-
net.java.dev.jna:jna-platform:5.16.0=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
28-
net.java.dev.jna:jna:5.16.0=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
29-
org.apache.commons:commons-lang3:3.12.0=integTestRuntimeClasspath,runtimeClasspath,testRuntimeClasspath
18+
joda-time:joda-time:2.10=runtimeClasspath,testRuntimeClasspath
19+
junit:junit:4.13.2=testCompileClasspath,testRuntimeClasspath
20+
net.bytebuddy:byte-buddy:1.18.3=testCompileClasspath,testRuntimeClasspath
21+
net.java.dev.jna:jna-platform:5.16.0=runtimeClasspath,testRuntimeClasspath
22+
net.java.dev.jna:jna:5.16.0=runtimeClasspath,testRuntimeClasspath
23+
org.apache.commons:commons-lang3:3.12.0=runtimeClasspath,testRuntimeClasspath
3024
org.apache.groovy:groovy-bom:4.0.29=testCompileClasspath,testRuntimeClasspath
3125
org.apache.groovy:groovy:4.0.29=testCompileClasspath,testRuntimeClasspath
32-
org.apache.groovy:groovy:4.0.4=integTestCompileClasspath,integTestRuntimeClasspath
33-
org.apiguardian:apiguardian-api:1.1.2=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath
34-
org.assertj:assertj-core:3.27.3=testCompileClasspath,testRuntimeClasspath
35-
org.hamcrest:hamcrest-core:1.3=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
36-
org.hamcrest:hamcrest:2.2=integTestCompileClasspath,integTestRuntimeClasspath
26+
org.apiguardian:apiguardian-api:1.1.2=testCompileClasspath
27+
org.assertj:assertj-core:3.27.7=testCompileClasspath,testRuntimeClasspath
28+
org.hamcrest:hamcrest-core:1.3=testCompileClasspath,testRuntimeClasspath
3729
org.hamcrest:hamcrest:3.0=testCompileClasspath,testRuntimeClasspath
38-
org.jetbrains.kotlin:kotlin-stdlib-common:1.4.20=integTestRuntimeClasspath
39-
org.jetbrains.kotlin:kotlin-stdlib-common:2.2.0=runtimeClasspath,testRuntimeClasspath
40-
org.jetbrains.kotlin:kotlin-stdlib:2.1.0=integTestCompileClasspath,integTestRuntimeClasspath
41-
org.jetbrains.kotlin:kotlin-stdlib:2.2.0=compileClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
42-
org.jetbrains:annotations:13.0=compileClasspath,integTestCompileClasspath,integTestRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
30+
org.jetbrains.kotlin:kotlin-reflect:2.2.20=compileClasspath,embeddedKotlin,testCompileClasspath,testRuntimeClasspath
31+
org.jetbrains.kotlin:kotlin-stdlib-common:2.2.0=runtimeClasspath
32+
org.jetbrains.kotlin:kotlin-stdlib-common:2.2.20=testRuntimeClasspath
33+
org.jetbrains.kotlin:kotlin-stdlib:2.2.0=runtimeClasspath
34+
org.jetbrains.kotlin:kotlin-stdlib:2.2.20=compileClasspath,embeddedKotlin,testCompileClasspath,testRuntimeClasspath
35+
org.jetbrains:annotations:13.0=compileClasspath,embeddedKotlin,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
4336
org.jspecify:jspecify:1.0.0=testCompileClasspath,testRuntimeClasspath
44-
org.junit.platform:junit-platform-commons:1.13.1=integTestCompileClasspath,integTestRuntimeClasspath
45-
org.junit.platform:junit-platform-commons:1.14.1=testCompileClasspath,testRuntimeClasspath
46-
org.junit.platform:junit-platform-engine:1.13.1=integTestCompileClasspath,integTestRuntimeClasspath
47-
org.junit.platform:junit-platform-engine:1.14.1=testCompileClasspath,testRuntimeClasspath
48-
org.junit.platform:junit-platform-launcher:1.13.1=integTestCompileClasspath,integTestRuntimeClasspath
49-
org.junit.platform:junit-platform-launcher:1.14.1=testCompileClasspath,testRuntimeClasspath
50-
org.junit:junit-bom:5.14.1=testCompileClasspath,testRuntimeClasspath
51-
org.objenesis:objenesis:2.4=integTestRuntimeClasspath,testRuntimeClasspath
52-
org.opentest4j:opentest4j:1.3.0=integTestCompileClasspath,integTestRuntimeClasspath,testCompileClasspath,testRuntimeClasspath
37+
org.junit.jupiter:junit-jupiter-api:5.14.3=testCompileClasspath,testRuntimeClasspath
38+
org.junit.jupiter:junit-jupiter-engine:5.14.3=testRuntimeClasspath
39+
org.junit.jupiter:junit-jupiter-params:5.14.3=testCompileClasspath,testRuntimeClasspath
40+
org.junit.jupiter:junit-jupiter:5.14.3=testCompileClasspath,testRuntimeClasspath
41+
org.junit.platform:junit-platform-commons:1.14.3=testCompileClasspath,testRuntimeClasspath
42+
org.junit.platform:junit-platform-engine:1.14.3=testCompileClasspath,testRuntimeClasspath
43+
org.junit.platform:junit-platform-launcher:1.14.3=testCompileClasspath,testRuntimeClasspath
44+
org.junit:junit-bom:5.14.3=testCompileClasspath,testRuntimeClasspath
45+
org.objenesis:objenesis:2.4=testRuntimeClasspath
46+
org.opentest4j:opentest4j:1.3.0=testCompileClasspath,testRuntimeClasspath
5347
org.spockframework:spock-bom:2.4-groovy-4.0=testCompileClasspath,testRuntimeClasspath
54-
org.spockframework:spock-core:2.3-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath
5548
org.spockframework:spock-core:2.4-groovy-4.0=testCompileClasspath,testRuntimeClasspath
56-
org.spockframework:spock-junit4:2.3-groovy-4.0=integTestCompileClasspath,integTestRuntimeClasspath
5749
org.spockframework:spock-junit4:2.4-groovy-4.0=testCompileClasspath,testRuntimeClasspath
58-
empty=annotationProcessor,integTestAnnotationProcessor,testAnnotationProcessor
50+
empty=annotationProcessor,testAnnotationProcessor

0 commit comments

Comments
 (0)