spring-gradle-plugins / spring-build-conventions

Contains common build logic and uses conventions to build a Spring Project with Gradle
14 stars 18 forks source link

0.0.30.RELEASE Plugin fails to build Asciidocs with Exception #77

Closed jxblum closed 4 years ago

jxblum commented 4 years ago

The io.spring.conventions.docs Gradle Plugin from Spring Build Conventions fails to resolve the spring.css file when building and rendering Asciidocs to HTML, EPUB, PDF, etc.

When building with Gradle 6.2 (or Gradle 5.6.x, e.g. 5.6.4), using Spring Build Conventions 0.0.30.RELEASE throws an Exception while running the Asciidoctor Gradle build task:

$ gradlew --no-daemon :spring-session-docs:build
...
..
.

> Task :spring-session-docs:asciidoctor
Feb 20, 2020 11:30:03 AM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: java-redis.adoc: line 167: detected unclosed tag 'class' starting at line 26 of include file: /Users/jblum/pivdev/spring-session/spring-session-samples/spring-session-sample-javaconfig-redis/src/main/java/sample/SessionServlet.java
Feb 20, 2020 11:30:03 AM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/parser.rb next_section
WARNING: xml-jdbc.adoc: line 173: unterminated example block
Feb 20, 2020 11:30:03 AM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_section
INFO: possible invalid reference: httpsession-xml-spring-configuration
Feb 20, 2020 11:30:03 AM org.asciidoctor.jruby.internal.JRubyAsciidoctor convertFile
SEVERE: (ENOENT) No such file or directory - /Users/jblum/pivdev/spring-session/spring-session-docs/build/docs/asciidoc/guides/css/spring.css
Exception in thread "main" org.asciidoctor.gradle.remote.AsciidoctorRemoteExecutionException: Error running Asciidoctor whilst attempting to process /Users/jblum/pivdev/spring-session/spring-session-docs/build/tmp/asciidoctor.intermediate/guides/xml-redis.adoc using backend html5
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_convertFiles_closure4.doCall(AsciidoctorJavaExec.groovy:89)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:104)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:326)
        at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:264)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041)
        at groovy.lang.Closure.call(Closure.java:411)
        at groovy.lang.Closure.call(Closure.java:427)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2296)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2281)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2334)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.convertFiles(AsciidoctorJavaExec.groovy:80)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.access$1(AsciidoctorJavaExec.groovy)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.doCall(AsciidoctorJavaExec.groovy:72)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.call(AsciidoctorJavaExec.groovy)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2296)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2281)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2322)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.run(AsciidoctorJavaExec.groovy:67)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.main(AsciidoctorJavaExec.groovy:49)
Caused by: org.asciidoctor.jruby.internal.AsciidoctorCoreException: org.jruby.exceptions.SystemCallError: (ENOENT) No such file or directory - /Users/jblum/pivdev/spring-session/spring-session-docs/build/docs/asciidoc/guides/css/spring.css
        at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convertFile(JRubyAsciidoctor.java:400)
        at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convertFile(JRubyAsciidoctor.java:366)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_convertFiles_closure4.doCall(AsciidoctorJavaExec.groovy:85)
        ... 22 more
Caused by: org.jruby.exceptions.SystemCallError: (ENOENT) No such file or directory - /Users/jblum/pivdev/spring-session/spring-session-docs/build/docs/asciidoc/guides/css/spring.css
        at org.jruby.RubyIO.sysopen(org/jruby/RubyIO.java:1239)
        at org.jruby.RubyIO.write(org/jruby/RubyIO.java:3804)
        at RUBY.convert(uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:160)
        at RUBY.convert_file(uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183)
        at org.jruby.RubyIO.open(org/jruby/RubyIO.java:1160)
        at RUBY.convert_file(uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183)

This is the build output from Spring Session core after upgrading the Spring Build Conventions Gradle Plugin to 0.0.30.RELEASE in build.gradle.

jxblum commented 4 years ago

I see that Spring Security is already building with Spring Build Conventions 0.0.30.RELEASE, here.

However, I don't see anything particularly interesting in the manual build.gradle nor the guides build.gradle files.

The manual build.gradle is more interesting since it is using the io.spring.conventions.docs Gradle Plugin. The guides build.gradle does not!

However, I guess the question would be, "is the Spring Security Docs Manual using the spring.css file?" I see no reason why it wouldn't apply the stylesheet unless there is some non-apparent configuration I have not come across that is excluding the CSS file in someway.

Although, the src/docs/asciidoc file structure does not contain nested "guides" unlike Spring Session core, either, as seen here.

Perhaps the guides need to be in their own sub-project/module? This is clearly the case for Spring Security, as seen here.

In any case, it is not apparent what prescribed patterns must be followed to successfully use this plugin, and specifically, the io.spring.conventions.docs Gradle Plugin.

jxblum commented 4 years ago

After reviewing the AsciidoctorConventionPlugin class, I was able to figure out a way to resolve the spring.css file by setting an absolute path to the file using:

def relativePathToSpringCss = "css/spring.css"
def pathToSpringCss = new File(project.getBuildDir(), relativePathToSpringCss).getAbsolutePath()

And then configuring the Asciidoctor Gradle Plugin stylesheet attribute with...

asciidoctor {
    attributes 'stylesheet' : pathToSpringCss
}

This seems to work.

However, now, the Asciidoc build fails due to other errors (?), which are technically "warnings" I think??

...
..
.
- skipping reference to missing attribute: spring-framework-docs
- skipping reference to missing attribute: spring-boot-docs-html
- possible invalid reference: geode-security
- possible invalid reference: geode-cluster-configuration-bootstrapping
        at org.asciidoctor.gradle.remote.ExecutorBase.failOnWarnings(ExecutorBase.groovy:223)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041)
        at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:1011)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:994)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:97)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.doCall(AsciidoctorJavaExec.groovy:74)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.call(AsciidoctorJavaExec.groovy)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2330)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2315)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2356)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.run(AsciidoctorJavaExec.groovy:67)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.main(AsciidoctorJavaExec.groovy:49)

> Task :spring-geode-docs:asciidoctor FAILED

FAILURE: Build failed with an exception.

The Asciidoctor Gradle Plugin seems to be configured to "fail on warnings" as first requested/described here, and then leading to action here.

Seems the default LogHandler for the Asciidoctor Gradle Plugin should be able to be configured similar to this:

asciidoctor {

    ...

    logHandler {
        outputToConsole = false
        failIf {
            severity 'ERROR'
        }
    }
}

And/Or:

asciidoctorj {
    fatalWarnings ''
}

However, either my Groovy/Gradle syntax is wrong, the Asciidoctor Gradle Plugin version used by the Spring Build Conventions Gradle Plugin does not match/contain this feature, or something.

jxblum commented 4 years ago

And, then I just noticed this, followed by this!

Seems that maybe the following should have had an effect (?):

asciidoctorj {
    fatalWarnings ''
}

Essentially, I DO NOT want to fail on warnings since I don't think the warnings are valid anyway!

For instance:

WARNING: skipping reference to missing attribute: spring-boot-docs-html
Feb 21, 2020 12:42:11 AM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
INFO: possible invalid reference: geode-security
...
..
.

Which I have defined in my index.adoc file as:

...
:spring-boot-docs: https://docs.spring.io/spring-boot/docs/current/reference
:spring-boot-docs-html: {spring-boot-docs}/htmlsingle
...
jxblum commented 4 years ago

UPDATE: I managed to clean up all warnings in my Asciidoctor doc generation, and now I am left with only INFO log messages, such as:

> Task :spring-geode-docs:asciidoctor
Feb 21, 2020 4:25:49 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_section
INFO: possible invalid reference: geode-clientcache-applications
Feb 21, 2020 4:25:50 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/abstract_block.rb content
INFO: possible invalid reference: appendix
...
..
.

However, the Asciidoctor Gradle build task still fails:

- possible invalid reference: geode-security
- possible invalid reference: geode-cluster-configuration-bootstrapping
        at org.asciidoctor.gradle.remote.ExecutorBase.failOnWarnings(ExecutorBase.groovy:223)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041)
        at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:1011)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:994)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:97)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.doCall(AsciidoctorJavaExec.groovy:74)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.call(AsciidoctorJavaExec.groovy)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2330)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2315)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2356)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.run(AsciidoctorJavaExec.groovy:67)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.main(AsciidoctorJavaExec.groovy:49)

I am not certain what the AsciidoctorJExtension.fatalWarnings(".*") call exactly does, but I don't think this configuration by the Spring Build Conventions Gradle Plugin is entirely correct either! That is, I am not sure it should fail on all warnings.

Furthermore, I am not entirely certain a call to fatalWarnings("regex") only identifies LogLevel.WARN messages (i.e. WARN and only WARN log messages matching the Regex; I think INFO log messages match as well) that should be considered "fatal" and thus, fail the build.

I think it is all log messages regardless of the LogLevel.

I essentially tried:

def asciidoctorExtension = project.getExtensions().getByType(AsciidoctorJExtension.class)

asciidoctorExtension.fatalWarnings("ERROR.*")
asciidoctorExtension.setLogLevel("WARN")

Inside my spring-geode-docs.gradle build file, but it had no effect.

Currently, I am exploring ways to control the log output by registering a custom LogHandler.

rwinch commented 4 years ago

@jxblum Can you please point me to your branch?

jxblum commented 4 years ago

Hi @rwinch - I experimented with this using Spring Session core, then Spring Session for Apache Geode (SSDG) and finally, did most of my attempted upgrade work on Spring Boot for Apache Geode (SBDG), trying to upgrade to Spring Build Conventions 0.0.30.RELEASE:

upgrade-to-spring-build-conventions-0.0.30.RELEASE

jxblum commented 4 years ago

Hi @rwinch - Just an update...

I repeated this exercise, but upgraded SBDG to Spring Build Conventions 0.0.28.RELEASE instead.

The branch is upgrade-to-spring-build-conventions-0.0.28.RELEASE.

I followed the direction from @eleftherias in this Slack post, and specifically the changes in this commit, applied to SBDG docs.

While my HTML docs render fine at quick glance, my PDF(s) on the other hand, do not render correctly.

The Asciidocs build is currently generating these problems:

> Task :spring-geode-docs:asciidoctorPdf
Mar 03, 2020 11:18:11 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/substitutors.rb sub_attributes
WARNING: dropping line containing reference to missing attribute: starter-logging-resources-dir
Mar 03, 2020 11:18:11 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/substitutors.rb sub_attributes
WARNING: dropping line containing reference to missing attribute: starter-logging-resources-dir
Mar 03, 2020 11:18:20 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: docs-src-dir
Mar 03, 2020 11:18:20 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: docs-src-dir
Mar 03, 2020 11:18:24 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: docs-src-dir
Mar 03, 2020 11:18:35 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:35 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/HTTP-Session-Caching.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Spring-Session-Framework-Architecture.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/HttpSessionCachingApplication.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/HttpSessionCachingApplication-ServletContainerSession.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/HttpSessionCachingApplication-ServletContainerSessionExpiration.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/HttpSessionCachingApplication-SpringSession.png
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:36 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/spring-initializer-screenshot.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/spring-initializer-explore-project-screenshot.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/customer-service-application-jondoe.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/pvtl-appsmanager-org-space-apps.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/pvtl-appsmanager-org-space-apps-crm-app-overview.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/pvtl-appsmanager-org-space-apps-crm-app-service.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/pvtl-appsmanager-org-space-apps-crm-app-settings.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/pvtl-appsmanager-org-space-apps-crm-app-start.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/pvtl-appsmanager-org-space-apps-crm-app-logs-output.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/getting-started-crm-app-homepage.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/getting-started-crm-app-getallcustomers.png
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:41 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Small-Database-To-Big-Database.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Cluster.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Near-Caching-Pattern.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Near-Caching-Example-Webapp.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Near-Caching-Example-Webapp-Create-JonDoe.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Near-Caching-Example-Webapp-Read-JonDoe.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Near-Caching-Example-Webapp-Update-JonDoe.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Near-Caching-Example-Webapp-Reload-JonDoe.png
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:42 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Inline-Caching-Pattern.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/factorial-of-four-before.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/factorial-of-four-after.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/factorial-of-five-before.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/factorial-of-five-after.png
Mar 03, 2020 11:18:44 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:44 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:44 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:44 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/Look-Aside-Caching-Pattern.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/LookAsideCachingApplication-Ping.png
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:45 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/client-actuator-health-endpoints.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/client-actuator-health-region-endpoint.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/client-actuator-health-cq-endpoint.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/server-actuator-health-endpoints.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/server-actuator-health-region-endpoint.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/server-actuator-health-indexes-endpoint.png
asciidoctor: WARNING: image to embed not found or not readable: /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/src/docs/images/server-actuator-health-cacheserver-endpoint.png
Mar 03, 2020 11:18:46 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:46 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:46 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:46 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/reader.rb preprocess_include_directive
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:46 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/parser.rb parse
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:46 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: samples-dir
Mar 03, 2020 11:18:50 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: docs-resources-dir
Mar 03, 2020 11:19:00 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: docs-src-dir
Mar 03, 2020 11:19:00 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: docs-src-dir
Mar 03, 2020 11:19:00 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: starter-logging-resources-dir
Mar 03, 2020 11:19:00 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: starter-logging-resources-dir
Mar 03, 2020 11:19:00 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: docs-resources-dir
Mar 03, 2020 11:19:00 PM uri:classloader:/gems/asciidoctor-1.5.8/lib/asciidoctor/document.rb parse
WARNING: dropping line containing reference to missing attribute: docs-src-dir

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 2m 14s
29 actionable tasks: 12 executed, 17 up-to-date

Even though the docs build successfully (i.e. the docs build does not fail on Warnings or missing images unlike when using the 0.0.30.RELEASE version) the PDF does not render correctly.

NOTE: Path locations like starter-logging-resources-dir (along with other variables the build is complaining about) are defined in my build.gradle file and images are located here. These appear fine in the rendered HTML, but not the PDF.

This branch might be a bit easier to reason about.

rwinch commented 4 years ago

@jxblum See if this helps https://github.com/jxblum/spring-boot-data-geode/pull/1

jxblum commented 4 years ago

Thank you @rwinch! Will give that a go and let you know. Much appreciated.

jxblum commented 4 years ago

Hi @rwinch - Seems like it would be better if I moved my adoc includes into a subdirectory called "_includes", rather than customizing the Gradle Asciidoctor build task in this manner. That would seem to follow the preferred "convention" set by Spring Build Conventions anyway, and be more consistent in the long run. Thoughts?

If I did this, I assume I would be able to keep the standard Asciidoctor task configuration using the original syntax...

asciidoctor {
    ...
}

At any rate, I will give that a try.

jxblum commented 4 years ago

Actually, it turns out that my ./guides (located here) now are missing, resulting in a 404.

I probably could add guides/* as the additional source, something like this (perhaps):

tasks.withType(AbstractAsciidoctorTask).configureEach {
    clearSources()
    sources {
        include "index.adoc", "guides/*"
    }

...

However, I think it makes more sense to follow the actual includes convention by properly putting adoc includes in "_includes".

Going to give this a try.

jxblum commented 4 years ago

So, I moved my include files (i.e. all adoc files in src/docs/asciidoc excluding index.adoc, into src/docs/asciidoc/_includes), but now, I am hitting the dreaded missing stylesheet error:

> Task :spring-geode-docs:asciidoctor
Mar 04, 2020 11:42:57 AM org.asciidoctor.jruby.internal.JRubyAsciidoctor convertFile
SEVERE: (ENOENT) No such file or directory - /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/build/docs/css/spring.css
Exception in thread "main" org.asciidoctor.gradle.remote.AsciidoctorRemoteExecutionException: Error running Asciidoctor whilst attempting to process /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/build/tmp/asciidoctor.intermediate/caching-http-session.adoc using backend html5
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_convertFiles_closure4.doCall(AsciidoctorJavaExec.groovy:89)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323)
        at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:263)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041)
        at groovy.lang.Closure.call(Closure.java:405)
        at groovy.lang.Closure.call(Closure.java:421)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2330)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2315)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2368)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.convertFiles(AsciidoctorJavaExec.groovy:80)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.access$1(AsciidoctorJavaExec.groovy)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.doCall(AsciidoctorJavaExec.groovy:72)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.call(AsciidoctorJavaExec.groovy)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2330)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2315)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2356)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.run(AsciidoctorJavaExec.groovy:67)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.main(AsciidoctorJavaExec.groovy:49)
Caused by: org.asciidoctor.jruby.internal.AsciidoctorCoreException: org.jruby.exceptions.SystemCallError: (ENOENT) No such file or directory - /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/build/docs/css/spring.css
        at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convertFile(JRubyAsciidoctor.java:400)
        at org.asciidoctor.jruby.internal.JRubyAsciidoctor.convertFile(JRubyAsciidoctor.java:366)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_convertFiles_closure4.doCall(AsciidoctorJavaExec.groovy:85)
        ... 22 more
Caused by: org.jruby.exceptions.SystemCallError: (ENOENT) No such file or directory - /Users/jblum/pivdev/spring-boot-data-geode/spring-geode-docs/build/docs/css/spring.css
        at org.jruby.RubyIO.sysopen(org/jruby/RubyIO.java:1239)
        at org.jruby.RubyIO.write(org/jruby/RubyIO.java:3804)
        at RUBY.convert(uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:160)
        at RUBY.convert_file(uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183)
        at org.jruby.RubyIO.open(org/jruby/RubyIO.java:1160)
        at RUBY.convert_file(uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183)

I even tried to apply the changes suggested by @eleftherias, but for 1 reason or another, that did not have any effect. Not sure if the 0.0.31.RELEASE version has anything to do with it vs. 0.0.28.RELEASE where those changes did work.

jxblum commented 4 years ago

Well, when I again apply my technique above, i.e. defining the absolute path to the spring.css stylesheet using:

def relativePathToSpringCss = "css/spring.css"
def pathToSpringCss = new File(project.getBuildDir(), relativePathToSpringCss).getAbsolutePath()

And then:

asciidoctor {
    attributes 'stylesheet' : pathToSpringCss
}

This is able to resolve the stylesheet. However, by moving all my "includes" into a _includes directory, I now end up with the following INFO and WARNING messages that result in failing the build:

> Task :spring-geode-docs:asciidoctor
Mar 04, 2020 1:31:10 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_section
INFO: possible invalid reference: geode-caching-provider
Mar 04, 2020 1:31:11 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
INFO: possible invalid reference: geode-caching-provider
Mar 04, 2020 1:31:11 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
WARNING: skipping reference to missing attribute: apache-geode-docs
Mar 04, 2020 1:31:11 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
WARNING: skipping reference to missing attribute: apache-geode-docs
Mar 04, 2020 1:31:11 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
INFO: possible invalid reference: geode-security
Mar 04, 2020 1:31:11 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
INFO: possible invalid reference: geode-cluster-configuration-bootstrapping
Mar 04, 2020 1:31:13 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
WARNING: skipping reference to missing attribute: apache-geode-docs
Mar 04, 2020 1:31:13 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
WARNING: skipping reference to missing attribute: apache-geode-docs
Mar 04, 2020 1:31:13 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
INFO: possible invalid reference: geode-security
Mar 04, 2020 1:31:13 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/converter/html5.rb convert_document
INFO: possible invalid reference: geode-cluster-configuration-bootstrapping
Exception in thread "main" org.asciidoctor.gradle.remote.AsciidoctorRemoteExecutionException: ERROR: The following messages from AsciidoctorJ are treated as errors:
possible invalid reference: geode-caching-provider
- possible invalid reference: geode-caching-provider
- skipping reference to missing attribute: apache-geode-docs
- skipping reference to missing attribute: apache-geode-docs
- possible invalid reference: geode-security
- possible invalid reference: geode-cluster-configuration-bootstrapping
- skipping reference to missing attribute: apache-geode-docs
- skipping reference to missing attribute: apache-geode-docs
- possible invalid reference: geode-security
- possible invalid reference: geode-cluster-configuration-bootstrapping
        at org.asciidoctor.gradle.remote.ExecutorBase.failOnWarnings(ExecutorBase.groovy:223)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:101)
        at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1217)
        at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1041)
        at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:1011)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:994)
        at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:97)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.doCall(AsciidoctorJavaExec.groovy:74)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec$_run_closure3.call(AsciidoctorJavaExec.groovy)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2330)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2315)
        at org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:2356)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.run(AsciidoctorJavaExec.groovy:67)
        at org.asciidoctor.gradle.remote.AsciidoctorJavaExec.main(AsciidoctorJavaExec.groovy:49)

> Task :spring-geode-docs:asciidoctor FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':spring-geode-docs:asciidoctor'.
> Remote Asciidoctor process failed to complete successfully

On a side note, I still think there needs to be more intelligence around "resolving" the spring.css stylesheet. Assuming it is relative (i.e. css/spring.css) to something else seems (potentially, always) problematic to me.

I don't fully understand why Asciidoctor cannot resolve the (possibly) invalid references, which are technically valid, other than perhaps it has something to do with processing order and/or the "definition of source"???

jxblum commented 4 years ago

FYI... I am trying to use the Spring Security Manual (ascii)doc source as my guide for doing the right thing.

jxblum commented 4 years ago

@rwinch - I created a new branch with changes from your PR merged along with additional changes to try and get SBDG docs configuration and source on track and following the "conventions" (expectations) from Spring Build Conventions 0.0.31.RELEASE properly.

See here.

rwinch commented 4 years ago

@jxblum Please see https://github.com/jxblum/spring-boot-data-geode/pull/2

rwinch commented 4 years ago

Can this be closed?

jxblum commented 4 years ago

Yes. Thank you.