diff --git a/buildSrc/src/main/groovy/io/spring/gradle/convention/IncludeCheckRemotePlugin.groovy b/buildSrc/src/main/groovy/io/spring/gradle/convention/IncludeCheckRemotePlugin.groovy index 3238bb3498..5ba6e350f4 100644 --- a/buildSrc/src/main/groovy/io/spring/gradle/convention/IncludeCheckRemotePlugin.groovy +++ b/buildSrc/src/main/groovy/io/spring/gradle/convention/IncludeCheckRemotePlugin.groovy @@ -33,8 +33,8 @@ class IncludeCheckRemotePlugin implements Plugin { void apply(Project project) { IncludeCheckRemoteExtension extension = project.extensions.create('includeCheckRemote', IncludeCheckRemoteExtension) TaskProvider includeRepoTask = project.tasks.register('includeRepo', IncludeRepoTask) { IncludeRepoTask it -> - it.repository = extension.repository.get() - it.ref = extension.ref.get() + it.repository = extension.repository + it.ref = extension.ref } project.tasks.register('checkRemote', GradleBuild) { it.dependsOn 'includeRepo' @@ -44,22 +44,22 @@ class IncludeCheckRemotePlugin implements Plugin { } abstract static class IncludeCheckRemoteExtension { + /** * Git repository to clone */ - abstract Property getRepository(); + String repository; + /** * Git ref to checkout */ - abstract Property getRef(); + String ref + /** * Task to run in the repository */ List tasks = ['check'] - void setTask(List tasks) { - this.tasks = tasks - } } } diff --git a/buildSrc/src/test/java/io/spring/gradle/convention/IncludeCheckRemotePluginTest.java b/buildSrc/src/test/java/io/spring/gradle/convention/IncludeCheckRemotePluginTest.java index be15a477bd..e8ad62118e 100644 --- a/buildSrc/src/test/java/io/spring/gradle/convention/IncludeCheckRemotePluginTest.java +++ b/buildSrc/src/test/java/io/spring/gradle/convention/IncludeCheckRemotePluginTest.java @@ -97,4 +97,15 @@ class IncludeCheckRemotePluginTest { GradleBuild checkRemote = (GradleBuild) this.rootProject.getTasks().named("checkRemote").get(); assertThat(checkRemote.getDir()).isEqualTo(includeRepo.getOutputDirectory()); } + + @Test + void applyWhenNoExtensionPropertiesThenRegisterTasks() { + this.rootProject = ProjectBuilder.builder().build(); + this.rootProject.getPluginManager().apply(IncludeCheckRemotePlugin.class); + IncludeRepoTask includeRepo = (IncludeRepoTask) this.rootProject.getTasks().named("includeRepo").get(); + GradleBuild checkRemote = (GradleBuild) this.rootProject.getTasks().named("checkRemote").get(); + assertThat(includeRepo).isNotNull(); + assertThat(checkRemote).isNotNull(); + } + }