Author: jleroux
Date: Mon Nov 19 09:37:35 2018 New Revision: 1846890 URL: http://svn.apache.org/viewvc?rev=1846890&view=rev Log: Implemented: Create a Gradle task to generate the documenation for all plugins (OFBIZ-10651) After INFRA-17258 Infra has created the directories needed to access the generated documentation from the site. Adds a generateAllPluginsDocumentation task to generate the plugins documentation under the build\asciidoc\plugins directory. It will be used in the Buildbot script to copy the plugins documentation in ci.apache.org/projects/ofbiz/site/pluginsdoc/ with the OFBiz documentation generated in build\asciidoc\ofbiz copied to ci.apache.org/projects/ofbiz/site/ofbizdoc/ The plugin documentation tasks are also changed to use the build/asciidoc/plugins path instead of /build/asciidoc previously Modified: ofbiz/ofbiz-framework/trunk/build.gradle Modified: ofbiz/ofbiz-framework/trunk/build.gradle URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/build.gradle?rev=1846890&r1=1846889&r2=1846890&view=diff ============================================================================== --- ofbiz/ofbiz-framework/trunk/build.gradle (original) +++ ofbiz/ofbiz-framework/trunk/build.gradle Mon Nov 19 09:37:35 2018 @@ -536,13 +536,18 @@ task deletePluginDocumentation { if(!activeComponents.contains(pluginId)) { throw new GradleException("Could not find plugin with id ${pluginId}") } - delete "${buildDir}/asciidoc/${pluginId}" + delete "${buildDir}/asciidoc/plugins/${pluginId}" } } +task deleteAllPluginsDocumentation { + doFirst { delete "${buildDir}/asciidoc/plugins" } +} + + task generateOfbizDocumentation(group: docsGroup, type: AsciidoctorTask) { dependsOn deleteOfbizDocumentation - description 'Generate OFBiz documentation manual' + description 'Generate OFBiz documentation manuals' sourceDir "${rootDir}/docs/asciidoc" outputDir file("${buildDir}/asciidoc/ofbiz") } @@ -554,7 +559,7 @@ task generatePluginDocumentation(group: if (project.hasProperty('pluginId') && component.name == pluginId) { def pluginAsciidoc = task "${component.name}Documentation" (type: AsciidoctorTask) { sourceDir file("${component}/src/docs/asciidoc") - outputDir file("${buildDir}/asciidoc/${component.name}") + outputDir file("${buildDir}/asciidoc/plugins/${component.name}") mustRunAfter deletePluginDocumentation } dependsOn pluginAsciidoc @@ -562,6 +567,28 @@ task generatePluginDocumentation(group: } } +task generateAllPluginsDocumentation(group: docsGroup, + description: 'Generate all plugins documentation.') { + + dependsOn deleteAllPluginsDocumentation + file("${pluginsDir}").eachDir { plugin -> + iterateOverActiveComponents { component -> + if (component.name == plugin.name) { + if (subprojectExists(":plugins:${plugin.name}")) { + def pluginAsciidoc = task "${component.name}-Documentation" (type: AsciidoctorTask) { + sourceDir file("${component}/src/docs/asciidoc") + outputDir file("${buildDir}/asciidoc/plugins/${component.name}") + doLast { println "Documentation generated for plugin ${component.name}" } + mustRunAfter deleteAllPluginsDocumentation + } + dependsOn pluginAsciidoc + } + } + } + } +} + + // ========== System Administration tasks ========== task createTestReports(group: sysadminGroup, description: 'Generate HTML reports from junit XML output') { doLast { |
Free forum by Nabble | Edit this page |