diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 07e13f5..e8a590b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -32,6 +32,9 @@ jobs: uses: gradle/actions/setup-gradle@v5 with: cache-overwrite-existing: true + build-scan-publish: true + build-scan-terms-of-use-url: 'https://gradle.com/terms-of-service' + build-scan-terms-of-use-agree: 'yes' - name: Gradle build run: ./gradlew --stacktrace build env: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 3654150..55d9507 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -38,6 +38,9 @@ jobs: uses: gradle/actions/setup-gradle@v5 with: cache-overwrite-existing: true + build-scan-publish: true + build-scan-terms-of-use-url: 'https://gradle.com/terms-of-service' + build-scan-terms-of-use-agree: 'yes' - name: Gradle build run: ./gradlew --stacktrace build - name: Verify plugin publication @@ -48,4 +51,4 @@ jobs: run: ./gradlew --info --stacktrace -Prelease.useLastTag=true candidate - name: Publish release if: (!contains(github.ref, '-rc.')) - run: ./gradlew --info --stacktrace -Dgradle.publish.key=${{ secrets.gradlePublishKey }} -Dgradle.publish.secret=${{ secrets.gradlePublishSecret }} -Prelease.useLastTag=true final \ No newline at end of file + run: ./gradlew --info --stacktrace -Dgradle.publish.key=${{ secrets.gradlePublishKey }} -Dgradle.publish.secret=${{ secrets.gradlePublishSecret }} -Prelease.useLastTag=true final diff --git a/nebula-archrules-gradle-plugin/gradle.lockfile b/nebula-archrules-gradle-plugin/gradle.lockfile index 57a6d99..d3e2ac4 100644 --- a/nebula-archrules-gradle-plugin/gradle.lockfile +++ b/nebula-archrules-gradle-plugin/gradle.lockfile @@ -4,18 +4,18 @@ cglib:cglib-nodep:3.2.2=testRuntimeClasspath com.fasterxml.jackson.core:jackson-annotations:2.21=compileClasspath com.jayway.jsonpath:json-path:2.9.0=testArchRulesRuntime,testCompileClasspath,testRuntimeClasspath -com.netflix.nebula:archrules-common:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-deprecation:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-gradle-plugin-development:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-guava:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-javax:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-joda:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-nullability:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-security:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:archrules-testing-frameworks:0.9.0=archRules,mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:nebula-archrules-core:0.14.2=mainArchRulesRuntime,testArchRulesRuntime -com.netflix.nebula:nebula-archrules-core:0.8.0=archRules -com.netflix.nebula:nebula-test:12.0.0=testArchRulesRuntime,testCompileClasspath,testRuntimeClasspath +com.netflix.nebula:archrules-common:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-deprecation:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-gradle-plugin-development:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-guava:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-javax:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-joda:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-nullability:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-security:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:archrules-testing-frameworks:0.11.1=archRules,mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:nebula-archrules-core:0.16.0=archRules +com.netflix.nebula:nebula-archrules-core:0.16.1=mainArchRulesRuntime,testArchRulesRuntime +com.netflix.nebula:nebula-test:12.1.0=testArchRulesRuntime,testCompileClasspath,testRuntimeClasspath com.tngtech.archunit:archunit:1.4.1=archRules,compileClasspath,mainArchRulesRuntime,runtimeClasspath,testArchRulesRuntime,testCompileClasspath,testRuntimeClasspath io.github.java-diff-utils:java-diff-utils:4.12=kotlinInternalAbiValidation net.bytebuddy:byte-buddy:1.18.3=testArchRulesRuntime,testCompileClasspath,testRuntimeClasspath diff --git a/nebula-archrules-gradle-plugin/src/main/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPlugin.kt b/nebula-archrules-gradle-plugin/src/main/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPlugin.kt index 810a151..4d5e358 100644 --- a/nebula-archrules-gradle-plugin/src/main/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPlugin.kt +++ b/nebula-archrules-gradle-plugin/src/main/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPlugin.kt @@ -32,7 +32,7 @@ class ArchrulesAggregateConsoleReportPlugin @Inject constructor(val objects: Obj } project.subprojects { - project.dependencies.add("archRulesAggregateDependencies", project.dependencies.project(":$name")) + project.dependencies.add("archRulesAggregateDependencies", project.dependencies.project(path)) } project.tasks.register("archRulesAggregateConsoleReport") { diff --git a/nebula-archrules-gradle-plugin/src/test/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPluginTest.kt b/nebula-archrules-gradle-plugin/src/test/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPluginTest.kt index 038f930..3f045ad 100644 --- a/nebula-archrules-gradle-plugin/src/test/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPluginTest.kt +++ b/nebula-archrules-gradle-plugin/src/test/kotlin/com/netflix/nebula/archrules/gradle/ArchrulesAggregateConsoleReportPluginTest.kt @@ -90,7 +90,7 @@ class ArchrulesAggregateConsoleReportPluginTest { fun `settings defaults`() { val project = ProjectBuilder.builder().build() project.plugins.apply("java") - project.plugins.apply(ArchrulesAggregateConsoleReportPlugin::class.java) + project.plugins.apply("com.netflix.nebula.archrules.aggregate") val extension = project.extensions.findByType()!! assertThat(extension.skipPassingSummaries.get()).isFalse() assertThat(extension.consoleDetailsThreshold.get()).isEqualTo(Priority.MEDIUM) @@ -179,4 +179,27 @@ artifacts { .hasOutcome(TaskOutcome.SUCCESS) assertThat(result.output).doesNotContain("Archrules data read failed") } + + @Test + fun test_nested_subproject() { + val runner = testProject(projectDir) { + setup() + subProject(":group:nested") { + plugins { + id("java") + id("com.netflix.nebula.archrules.runner") + } + repositories { + mavenCentral() + } + dependencies( + """implementation(project(":library"))""", + """archRules("com.netflix.nebula:archrules-deprecation:0.+")""" + ) + } + } + val result = runner.run("archRulesAggregateConsoleReport") + assertThat(result.task(":archRulesAggregateConsoleReport")) + .hasOutcome(TaskOutcome.SUCCESS) + } } diff --git a/settings.gradle.kts b/settings.gradle.kts index 6134818..a578962 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -3,17 +3,11 @@ pluginManagement { id("com.netflix.nebula.root") version ("25.+") id("com.netflix.nebula.plugin-plugin") version ("25.+") id("com.netflix.nebula.library") version ("25.+") + id("com.netflix.nebula.oss.settings") version("25.+") } } plugins { - id("com.gradle.develocity") version("4.2") -} - -develocity { - buildScan { - termsOfUseUrl = "https://gradle.com/terms-of-service" - termsOfUseAgree = "yes" - } + id("com.netflix.nebula.oss.settings") } rootProject.name = "nebula-archrules-plugin"