1
1
package io.spring.gradle.convention
2
2
3
+ import org.aim42.htmlsanitycheck.HtmlSanityCheckPlugin
4
+ import org.aim42.htmlsanitycheck.HtmlSanityCheckTask
5
+ import org.aim42.htmlsanitycheck.check.BrokenHttpLinksChecker
3
6
import org.asciidoctor.gradle.jvm.AbstractAsciidoctorTask
4
- import org.gradle.api.Action
5
7
import org.gradle.api.Plugin
6
8
import org.gradle.api.Project
7
9
import org.gradle.api.Task
8
- import org.gradle.api.artifacts.Configuration
9
- import org.gradle.api.artifacts.DependencySet
10
10
import org.gradle.api.plugins.PluginManager
11
- import org.gradle.api.tasks.Sync
12
11
import org.gradle.api.tasks.bundling.Zip
13
12
14
13
/**
@@ -25,6 +24,7 @@ public class DocsPlugin implements Plugin<Project> {
25
24
pluginManager. apply(AsciidoctorConventionPlugin );
26
25
pluginManager. apply(DeployDocsPlugin );
27
26
pluginManager. apply(JavadocApiPlugin );
27
+ pluginManager. apply(HtmlSanityCheckPlugin )
28
28
29
29
String projectName = Utils . getProjectName(project);
30
30
String pdfFilename = projectName + " -reference.pdf" ;
@@ -38,6 +38,17 @@ public class DocsPlugin implements Plugin<Project> {
38
38
}
39
39
}
40
40
41
+ project. tasks. withType(HtmlSanityCheckTask ) { HtmlSanityCheckTask t ->
42
+ project. configure(t) {
43
+ t. dependsOn ' asciidoctor'
44
+ t. checkerClasses = [BrokenHttpLinksChecker ]
45
+ t. checkingResultsDir = new File (project. getBuildDir(), " /report/htmlchecks" )
46
+ t. failOnErrors = false
47
+ t. httpConnectionTimeout = 3000
48
+ t. sourceDir = new File (project. getBuildDir(), " /docs/asciidoc/" )
49
+ t. sourceDocuments = project. files(new File (project. getBuildDir(), " /docs/asciidoc/index.html" ))
50
+ }
51
+ }
41
52
42
53
Task docsZip = project. tasks. create(' docsZip' , Zip ) {
43
54
dependsOn ' api' , ' asciidoctor'
0 commit comments