[ 
https://issues.apache.org/jira/browse/BEAM-6178?focusedWorklogId=172790&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-172790
 ]

ASF GitHub Bot logged work on BEAM-6178:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 06/Dec/18 19:16
            Start Date: 06/Dec/18 19:16
    Worklog Time Spent: 10m 
      Work Description: swegner commented on a change in pull request #7197: 
[BEAM-6178] Adding beam-sdks-java-bom, adding exportJavadoc flag for 
applyJavaNature
URL: https://github.com/apache/beam/pull/7197#discussion_r239546811
 
 

 ##########
 File path: sdks/java/javadoc/build.gradle
 ##########
 @@ -26,64 +26,33 @@
 description = "Apache Beam :: SDKs :: Java :: Aggregated Javadoc"
 apply plugin: 'java'
 
-def exportedJavadocProjects = [
-  ':beam-runners-apex',
-  ':beam-runners-core-construction-java',
-  ':beam-runners-core-java',
-  ':beam-runners-java-fn-execution',
-  ':beam-runners-local-java-core',
-  ':beam-runners-direct-java',
-  ':beam-runners-reference-java',
-  ':beam-runners-flink_2.11',
-  ':beam-runners-google-cloud-dataflow-java',
-  ':beam-runners-spark',
-  ':beam-runners-gearpump',
-  ':beam-sdks-java-core',
-  ':beam-sdks-java-fn-execution',
-  ':beam-sdks-java-extensions-google-cloud-platform-core',
-  ':beam-sdks-java-extensions-join-library',
-  ':beam-sdks-java-extensions-json-jackson',
-  ':beam-sdks-java-extensions-protobuf',
-  ':beam-sdks-java-extensions-sketching',
-  ':beam-sdks-java-extensions-sorter',
-  ':beam-sdks-java-extensions-sql',
-  ':beam-sdks-java-harness',
-  ':beam-sdks-java-io-amazon-web-services',
-  ':beam-sdks-java-io-amqp',
-  ':beam-sdks-java-io-cassandra',
-  ':beam-sdks-java-io-elasticsearch',
-  ':beam-sdks-java-io-elasticsearch-tests-2',
-  ':beam-sdks-java-io-elasticsearch-tests-5',
-  ':beam-sdks-java-io-elasticsearch-tests-6',
-  ':beam-sdks-java-io-elasticsearch-tests-common',
-  ':beam-sdks-java-io-google-cloud-platform',
-  ':beam-sdks-java-io-hadoop-common',
-  ':beam-sdks-java-io-hadoop-file-system',
-  ':beam-sdks-java-io-hadoop-input-format',
-  ':beam-sdks-java-io-hbase',
-  ':beam-sdks-java-io-hcatalog',
-  ':beam-sdks-java-io-jdbc',
-  ':beam-sdks-java-io-jms',
-  ':beam-sdks-java-io-kafka',
-  ':beam-sdks-java-io-kinesis',
-  ':beam-sdks-java-io-mongodb',
-  ':beam-sdks-java-io-mqtt',
-  ':beam-sdks-java-io-parquet',
-  ':beam-sdks-java-io-redis',
-  ':beam-sdks-java-io-solr',
-  ':beam-sdks-java-io-tika',
-  ':beam-sdks-java-io-xml',
-]
+for (String projName : rootProject.ext.allProjectNames) {
+  if (!projName.equals(':' + project.name) && 
!projName.equals(':beam-sdks-java-bom')) {
+    evaluationDependsOn(projName)
 
 Review comment:
   Forcing every other project to depend on this one feels a bit dirty. If 
another project used the same pattern, would it create a build cycle?
   
   The previous behavior was still hacky, but it only included the projects 
listed here for javadoc support; so if there were another uber project using 
`evaluationDependsOn` it wouldn't be contained in the previous list and thus 
avoid a build cycle.
   
   However, I had a lot of trouble finding a better way of structuring this. 
Some relevant docs/threads:
   
   * [Multi-project Builds: Depending on the task output produced by another 
project](https://docs.gradle.org/current/userguide/multi_project_builds.html#sec:depending_on_output_of_another_project)
   * [Discuss: Best approach Gradle multi-module project: generate just one 
global 
javadoc](https://discuss.gradle.org/t/best-approach-gradle-multi-module-project-generate-just-one-global-javadoc/18657/22)
   * 
[gradle-aggregate-javadocs-plugin](https://github.com/nebula-plugins/gradle-aggregate-javadocs-plugin)
   
   One thought is that it seems easier to structure aggregation logic by 
putting it in the root build script. By default the root build script is 
configured first so you have some guarantees on ordering.
   
   
   With all that said, I'm happy deferring this. You've stepped into an awkward 
part of the build process, and I don't expect you to fix it here.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 172790)
    Time Spent: 50m  (was: 40m)

> Create BOM for Beam
> -------------------
>
>                 Key: BEAM-6178
>                 URL: https://issues.apache.org/jira/browse/BEAM-6178
>             Project: Beam
>          Issue Type: Improvement
>          Components: build-system
>    Affects Versions: 2.10.0
>            Reporter: Garrett Jones
>            Assignee: Garrett Jones
>            Priority: Critical
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Add a module to Beam which generates a BOM for Beam modules.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to