From 951dd83e5114a5abfa9a0a2cea90450d8b785cfb Mon Sep 17 00:00:00 2001 From: Dave Syer Date: Tue, 22 Oct 2024 09:25:41 +0100 Subject: [PATCH] Add automation for README.md generation at top level Fixes #35 --- pom.xml | 1 + spring-grpc-docs/Gemfile | 3 ++ spring-grpc-docs/README.md | 9 +--- spring-grpc-docs/pom.xml | 85 +++++++++++++++++++++++++++++++++----- 4 files changed, 80 insertions(+), 18 deletions(-) create mode 100644 spring-grpc-docs/Gemfile diff --git a/pom.xml b/pom.xml index ea19009..69ac2b4 100644 --- a/pom.xml +++ b/pom.xml @@ -101,6 +101,7 @@ 3.3.0 0.8.10 3.1.1 + 3.0.2 2.2.3 3.7.0 3.5.0 diff --git a/spring-grpc-docs/Gemfile b/spring-grpc-docs/Gemfile new file mode 100644 index 0000000..ce10861 --- /dev/null +++ b/spring-grpc-docs/Gemfile @@ -0,0 +1,3 @@ +source 'https://rubygems.org' + +gem 'asciidoctor-reducer' \ No newline at end of file diff --git a/spring-grpc-docs/README.md b/spring-grpc-docs/README.md index 09848f8..1de5d9b 100644 --- a/spring-grpc-docs/README.md +++ b/spring-grpc-docs/README.md @@ -2,14 +2,7 @@ ## README -The top level README is generated from sources in this module. - -``` -$ cd spring-grpc-docs -$ asciidoctor-reducer src/main/antora/modules/ROOT/pages/README.adoc | downdoc - > ../README.md -``` - -where [`asciidoctor-reducer`](https://github.com/asciidoctor/asciidoctor-reducer) is a gem (so probably in `~/.gem/ruby//bin/asciidoctor-reducer`) and [`downdoc`](https://github.com/opendevise/downdoc) is an `npm` module, so `./node_modules/.bin/downdoc`. +The top level README is generated from sources in this module on `mvn package` using [`asciidoctor-reducer`](https://github.com/asciidoctor/asciidoctor-reducer) and [`downdoc`](https://github.com/opendevise/downdoc). ## Configuration Properties The Spring gRPC configuration properties are automatically documented as follows: diff --git a/spring-grpc-docs/pom.xml b/spring-grpc-docs/pom.xml index 1c39dab..e41b51e 100644 --- a/spring-grpc-docs/pom.xml +++ b/spring-grpc-docs/pom.xml @@ -13,9 +13,11 @@ Spring gRPC documentation - 3.4.1 + 3.4.1 + 3.0.3 ${project.basedir}/src/main/antora/modules/ROOT/partials/_configprops.adoc spring.grpc.* + 9.4.6.0 @@ -29,8 +31,21 @@ jackson-databind ${jackson.version} + + rubygems + asciidoctor-reducer + 1.0.6 + gem + + + + org.jruby.maven + mavengem-wagon + 2.0.2 + + io.spring.maven.antora @@ -55,6 +70,7 @@ ${io.spring.maven.antora-version} + antora-component-version @@ -84,7 +100,7 @@ org.codehaus.mojo exec-maven-plugin - ${exec-maven-plugin.version} + ${maven-exec-plugin.version} generate-configprops @@ -92,19 +108,68 @@ java + + true + false + + org.springframework.grpc.internal.ConfigurationPropertiesAsciidocGenerator + + ${configprops.path} + ${configprops.inclusionPattern} + + + + + generate-readme + package + + exec + + + ${basedir}/node_modules/.bin/downdoc + + ${project.build.directory}/README.adoc + -o + ${project.parent.basedir}/README.md + + + + + org.jruby.maven + gem-maven-plugin + ${maven-gem-plugin.version} - true - false - org.springframework.grpc.internal.ConfigurationPropertiesAsciidocGenerator - - ${configprops.path} - ${configprops.inclusionPattern} - + ${jruby.version} + ${project.build.directory}/gems + ${project.build.directory}/gems + + + + install-gems + + initialize + exec + + compile + + ${project.build.directory}/gems/bin/asciidoctor-reducer -o + ${project.build.directory}/README.adoc + ${basedir}/src/main/antora/modules/ROOT/pages/README.adoc + + + - + + + mavengems + mavengem:https://rubygems.org + + + + \ No newline at end of file