1919import org .gradle .api .provider .ProviderFactory ;
2020import org .gradle .api .tasks .SourceSet ;
2121import org .gradle .api .tasks .SourceSetContainer ;
22+ import org .gradle .jvm .tasks .Jar ;
2223
2324import javax .inject .Inject ;
2425
26+ import static java .util .stream .Collectors .toList ;
27+
2528/**
2629 * Encapsulates build configuration for an Elasticsearch plugin.
2730 */
@@ -58,8 +61,8 @@ public void apply(final Project project) {
5861 SourceSetContainer sourceSets = project .getExtensions ().getByType (SourceSetContainer .class );
5962
6063 var testBuildInfoTask = project .getTasks ().register ("generateTestBuildInfo" , GenerateTestBuildInfoTask .class , task -> {
61- var pluginProperties = project .getTasks ().getByName ("pluginProperties" );
62- task .getDescriptorFile ().set (pluginProperties .getOutputs (). getFiles (). getSingleFile ( ));
64+ var pluginProperties = project .getTasks ().withType ( GeneratePluginPropertiesTask . class ). named ("pluginProperties" );
65+ task .getDescriptorFile ().set (pluginProperties .flatMap ( GeneratePluginPropertiesTask :: getOutputFile ));
6366 var propertiesExtension = project .getExtensions ().getByType (PluginPropertiesExtension .class );
6467 task .getComponentName ().set (providerFactory .provider (propertiesExtension ::getName ));
6568 var policy = project .getLayout ().getProjectDirectory ().file ("src/main/plugin-metadata/entitlement-policy.yaml" );
@@ -80,10 +83,15 @@ public void apply(final Project project) {
8083 task .getOutputDirectory ().set (directory );
8184 });
8285
83-
8486 sourceSets .named (SourceSet .TEST_SOURCE_SET_NAME ).configure (sourceSet -> {
8587 sourceSet .getResources ().srcDir (testBuildInfoTask );
8688 });
89+
90+ // TODO: get the jar task
91+ // TODO: configure on this task
92+ // TODO: task.from()
93+ //project.getLogger().lifecycle(
94+ // "HELLO: " + project.getTasks().withType(Jar.class).getByName("jar").getArchiveFile().get().getAsFile().getAbsolutePath());
8795 }
8896
8997}
0 commit comments