Compare commits

..
56 Commits
Author SHA1 Message Date
buildmaster f8872365f7 Update SNAPSHOT to 3.0.0-M2 2020-05-29 18:11:25 +00:00
Marcin Grzejszczak 9f47b8e8c8 Fixed setting null as default value for config props 2020-05-28 13:18:23 +02:00
buildmaster 6b64579beb Bumping versions 2020-05-28 07:12:36 +00:00
Marcin Grzejszczak 61c967228a Fixed the root url link for docs 2020-05-27 09:22:02 +02:00
buildmaster 216681310e Bumping versions 2020-05-26 14:13:25 +00:00
Marcin Grzejszczak 355a18d5fa Fixed new lines in the config properties generation 2020-05-26 14:01:24 +02:00
Marcin Grzejszczak e2019664e2 Fixed improper packaging and config props parsing 2020-05-26 13:56:43 +02:00
Marcin Grzejszczak bdd2ae3ed3 Migrated the configprops parsing to Java due to constant issues with Groovy versions 2020-05-26 13:45:03 +02:00
Marcin Grzejszczak 95688d5c8e Don't generate a pom for uploaded zip with docs 2020-05-25 15:57:07 +02:00
Marcin Grzejszczak 59d1129b4b Fixed the way jar with sc-build-docs gets deployed 2020-05-25 15:18:30 +02:00
Marcin Grzejszczak 114b30af71 Removed unnecessary property setup in the plugin 2020-05-25 13:54:46 +02:00
Marcin Grzejszczak 25c19bbda1 Moved the phase property to the module 2020-05-25 13:52:13 +02:00
Marcin Grzejszczak c542d67ce7 Setting up repository for docs.spring.io migration 2020-05-25 13:40:42 +02:00
Marcin Grzejszczak a744025d26 Disabling docs zip publishing for all modules other than the docs module 2020-05-25 13:26:55 +02:00
Marcin Grzejszczak 2355cbdc6e Improved the way the zipped docs are pushed; fixes gh-166 2020-05-25 12:18:20 +02:00
buildmaster 4a5bbcd936 Bumping versions 2020-05-22 07:12:30 +00:00
spencergibb 501a33c65a Merge branch '2.3.x' 2020-05-21 16:20:09 -04:00
spencergibb fb2e92be6b Adds section about activating spring maven profile in IDE.
Fixes gh-159
2020-05-21 16:13:27 -04:00
spencergibb 9bdff877fd Ignores .sdkmanrc 2020-05-15 12:07:26 -04:00
spencergibb 0911190f3f Bumps boot to version to 2.3.0.RELEASE 2020-05-15 12:06:31 -04:00
spencergibb bd26a5a184 Bumps boot to version to 2.3.0.BUILD-SNAPSHOT 2020-05-14 15:53:28 -04:00
Olga Maciaszek-Sharma d30799cf5c Upgrade groovy.version to 2.5.10. 2020-05-13 17:28:05 +02:00
spencergibb 2f1a258497 Merge branch '2.3.x' 2020-05-08 13:54:45 -04:00
spencergibb e84caac578 Merge remote-tracking branch 'origin/2.3.x' into 2.3.x 2020-05-08 13:54:14 -04:00
spencergibb 76f15c1cd9 Merge branch '2.2.x' into 2.3.x 2020-05-08 13:49:52 -04:00
spencergibb 27553b9dd9 set current branch for test 2020-05-08 13:45:06 -04:00
spencergibb fe89ee7de0 set current branch for test 2020-05-08 13:40:16 -04:00
spencergibb 2821e3222c set current branch for test 2020-05-08 13:36:21 -04:00
spencergibb bb2126974f set current branch for test 2020-05-08 13:34:34 -04:00
spencergibb c7ebf03a2a removes checked in bats libs 2020-05-08 13:10:50 -04:00
spencergibb d673bca4da Updates bats tests to cloe bats-support and bats-assert
This along with upgrading to 0.7.0 of bats seems to fix bats tests.

Fixes gh-150
2020-05-08 12:23:56 -04:00
maaaace 76873a53ab fix(bashScript): download shellcheck to support arm64 processor
build_helper.sh just downloads shellcheck for x86_64 architecture by hard coding the verison and arch of zip file. Fortunately shellcheck starts to support arm64 since version 0.7.0, as a result update the version and add checking for architecture to support arm64.

Signed-off-by: maaaace <fuheming@huawei.com>
2020-05-08 12:23:49 -04:00
Olga Maciaszek-Sharma bfa24ff981 Revert "Bump checkstyle from 8.18 to 8.29"
This reverts commit eee1278025.
2020-04-24 15:08:26 +02:00
Olga Maciaszek-Sharma ea85edf36a Revert "Bump checkstyle from 8.18 to 8.29"
This reverts commit 46c9d176a0.
2020-04-24 14:57:29 +02:00
Olga Maciaszek-Sharma a6633729c6 Revert "Adjust to updates."
This reverts commit 82cecb77d3.
2020-04-24 14:57:10 +02:00
Olga Maciaszek-Sharma 680f28b193 Merge pull request #161 from spring-cloud/fix-checkstyle-setup-after-upgrade
Adjust to updates.
2020-04-24 14:30:46 +02:00
Olga Maciaszek-Sharma 82cecb77d3 Adjust to updates. 2020-04-24 14:06:31 +02:00
dependabot[bot] 46c9d176a0 Bump checkstyle from 8.18 to 8.29
Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 8.18 to 8.29.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-8.18...checkstyle-8.29)

Signed-off-by: dependabot[bot] <support@github.com>
2020-04-23 18:08:58 +02:00
dependabot[bot] eee1278025 Bump checkstyle from 8.18 to 8.29
Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 8.18 to 8.29.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-8.18...checkstyle-8.29)

Signed-off-by: dependabot[bot] <support@github.com>
2020-04-23 18:08:09 +02:00
Olga Maciaszek-Sharma 2417705160 Merge pull request #151 from spring-cloud/dependabot/maven/com.puppycrawl.tools-checkstyle-8.29
Bump checkstyle from 8.18 to 8.29
2020-04-23 18:01:21 +02:00
Olga Maciaszek-Sharma b6c617e7e4 Suppress javadoc check for files in test directory. 2020-04-23 16:54:41 +02:00
Olga Maciaszek-Sharma be6c1eae80 Suppress javadoc check for files in test directory. 2020-04-23 16:53:16 +02:00
Olga Maciaszek-Sharma def18bdd4e Suppress javadoc check for files in test directory. 2020-04-23 16:36:27 +02:00
Spencer Gibb a3c351ebdb Merge branch '2.3.x' 2020-04-22 10:54:11 -04:00
Jay Bryant 288abb47b5 Upgrade spring-doc-resources
Upgrade spring-doc-resources from version 0.2.0 to version 0.2.1
to get a bug fix (setting the width of the HTML output).
2020-04-22 10:53:18 -04:00
Spencer Gibb dae472a17d Updates README.adoc 2020-04-22 10:51:16 -04:00
Jay Bryant fb42a2cf89 Upgrade spring-doc-resources
Upgrade spring-doc-resources from version 0.2.0 to version 0.2.1
to get a bug fix (setting the width of the HTML output).
2020-04-22 10:49:32 -04:00
buildmaster a2532c63b0 Bumping versions 2020-04-16 22:31:47 +00:00
buildmaster 8ad6ecd490 Bumping versions 2020-04-16 21:55:02 +00:00
Spencer Gibb ce18c35b9b Updates version to 3.0.0-SNAPSHOT 2020-04-16 17:51:18 -04:00
buildmaster e67ca1d250 Bumping versions 2020-04-16 20:59:34 +00:00
Spencer Gibb bb7f805da5 Updates version to 3.0.0-SNAPSHOT 2020-04-16 16:31:36 -04:00
buildmaster 3fcf51db80 Bumping versions 2020-04-07 07:12:50 +00:00
Ryan Baxter d27e082b86 Revert "Version changes for 3.0.0.M1 release"
This reverts commit d2c32c296f.
2020-04-06 10:43:35 -04:00
Spencer Gibb a33e77df15 Revert "Bumps boot version to 2.3.0.M3"
This reverts commit 2f67da30
2020-03-19 10:33:25 -04:00
dependabot[bot] d5a7b82b2a Bump checkstyle from 8.18 to 8.29
Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 8.18 to 8.29.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-8.18...checkstyle-8.29)

Signed-off-by: dependabot[bot] <support@github.com>
2020-01-31 18:01:11 +00:00
22 changed files with 327 additions and 479 deletions
+1
View File
@@ -19,3 +19,4 @@ _site/
.vscode/
.flattened-pom.xml
.DS_Store
.sdkmanrc
+52 -49
View File
@@ -235,12 +235,12 @@ In order to add it, add the `org.codehaus.mojo:flatten-maven-plugin` to your `po
[source,xml]
----
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
</plugin>
</plugins>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
----
@@ -253,51 +253,54 @@ approach of generating documentation just add these plugins to your `docs` modul
[source,xml]
----
<properties>
<upload-docs-zip.phase>deploy</upload-docs-zip.phase> <8>
</properties>
<profiles>
<profile>
<id>docs</id>
<build>
<plugins>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId> <1>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId> <2>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId> <3>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId> <4>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId> <5>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId> <6>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId> <7>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<profile>
<id>docs</id>
<build>
<plugins>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId> <1>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId> <2>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId> <3>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId> <4>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId> <5>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId> <6>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId> <7>
</plugin>
</plugins>
</build>
</profile>
</profiles>
----
<2> This plugin downloads sets up all the git information of the project
<1> This plugin downloads sets up all the git information of the project
<2> This plugin downloads the resources of the `spring-cloud-build-docs` module
<3> This plugin unpacks the resources of the `spring-cloud-build-docs` module
<4> This plugin generates an `adoc` file with all the configuration properties from the classpath
<5> This plugin is required to parse the Asciidoctor documentation
<6> This plugin is required to copy resources into proper final destinations and to generate main README.adoc and to assert that no files use unresolved links
<7> This plugin ensures that the generated zip docs are attached as an artifact and will get published
<7> This plugin ensures that the generated zip docs will get published
<8> This property turns on the "deploy" phase for <7>
IMPORTANT: The order of plugin declaration is important!
@@ -342,8 +345,8 @@ Spring Cloud Build Docs comes with a set of attributes for asciidoctor that you
<project-version>${project.version}@</project-version>
<github-tag>${github-tag}@</github-tag>
<version-type>${version-type}@</version-type>
<docs-url>${docs-url}@</docs-url>
<raw-docs-url>${raw-docs-url}@</raw-docs-url>
<docs-url>https://docs.spring.io/${docs.main}/docs/${project.version}@</docs-url>
<raw-docs-url>${github-raw}@</raw-docs-url>
<project-version>${project.version}@</project-version>
<project-name>${docs.main}@</project-name>
</attributes>
@@ -356,9 +359,9 @@ We assume that your project contains guides under the `guides` folder.
```
.
└── guides
├── gs-guide1
├── gs-guide2
└── gs-guide3
├── gs-guide1
├── gs-guide2
└── gs-guide3
```
This means that the project contains 3 guides that would
+12 -187
View File
@@ -10,20 +10,17 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>3.0.0.M1</version>
<version>3.0.0-M2</version>
</parent>
<properties>
<docs.main>spring-cloud-build</docs.main>
<!-- Comma separated list of whitelisted branches -->
<docs.whitelisted.branches>2.1.x,2.2.x</docs.whitelisted.branches>
<main.basedir>${basedir}/..</main.basedir>
<gmavenplus-plugin.version>1.8.1</gmavenplus-plugin.version>
<groovy.version>2.5.10</groovy.version>
<!-- For the Groovy plugin -->
<groovyVersion>${groovy.version}</groovyVersion>
<!-- We don't want to downloaded sources of our own project-->
<maven-dependency-plugin-for-docs.phase>none</maven-dependency-plugin-for-docs.phase>
<docs.resources.dir>${project.basedir}/src/main/</docs.resources.dir>
<upload-docs-zip.phase>deploy</upload-docs-zip.phase>
</properties>
<dependencies>
<!-- Script -->
@@ -39,143 +36,10 @@
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>${groovy.version}</version>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-xml</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-datetime</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-nio</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-json</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-jsr223</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-macro</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-sql</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-swing</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-cli-picocli</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-ant</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<!-- <dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-astbuilder</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency> -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-console</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-docgenerator</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-groovydoc</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-groovysh</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-jmx</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-servlet</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-templates</artifactId>
<version>${groovy.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-test</artifactId>
<version>${groovy.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-test-junit5</artifactId>
<version>${groovy.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-testng</artifactId>
<version>${groovy.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
@@ -187,56 +51,11 @@
<resource>
<directory>src/main</directory>
<excludes>
<exclude>groovy/**/*.*</exclude>
<exclude>java/**/*.*</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${build-helper-maven-plugin.version}</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/main/groovy</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>${gmavenplus-plugin.version}</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>addSources</goal>
<goal>generateStubs</goal>
<goal>generateTestStubs</goal>
<goal>groovydoc-jar</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<!-- any version of Groovy \>= 1.5.0 should work here -->
<version>${groovy.version}</version>
<scope>runtime</scope>
<type>pom</type>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
@@ -272,6 +91,13 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<goals>
<goal>deploy</goal>
<goal>deploy-file</goal>
</goals>
</plugin>
</plugins>
</build>
</profile>
@@ -297,7 +123,6 @@
</goals>
<configuration>
<skip>${skipTests}</skip>
<skip>true</skip>
<executable>${basedir}/src/test/bash/run-bats.sh</executable>
</configuration>
</execution>
+50 -47
View File
@@ -51,12 +51,12 @@ In order to add it, add the `org.codehaus.mojo:flatten-maven-plugin` to your `po
[source,xml]
----
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
</plugin>
</plugins>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
----
@@ -69,51 +69,54 @@ approach of generating documentation just add these plugins to your `docs` modul
[source,xml]
----
<properties>
<upload-docs-zip.phase>deploy</upload-docs-zip.phase> <8>
</properties>
<profiles>
<profile>
<id>docs</id>
<build>
<plugins>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId> <1>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId> <2>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId> <3>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId> <4>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId> <5>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId> <6>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId> <7>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<profile>
<id>docs</id>
<build>
<plugins>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId> <1>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId> <2>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId> <3>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId> <4>
</plugin>
<plugin>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctor-maven-plugin</artifactId> <5>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId> <6>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId> <7>
</plugin>
</plugins>
</build>
</profile>
</profiles>
----
<2> This plugin downloads sets up all the git information of the project
<1> This plugin downloads sets up all the git information of the project
<2> This plugin downloads the resources of the `spring-cloud-build-docs` module
<3> This plugin unpacks the resources of the `spring-cloud-build-docs` module
<4> This plugin generates an `adoc` file with all the configuration properties from the classpath
<5> This plugin is required to parse the Asciidoctor documentation
<6> This plugin is required to copy resources into proper final destinations and to generate main README.adoc and to assert that no files use unresolved links
<7> This plugin ensures that the generated zip docs are attached as an artifact and will get published
<7> This plugin ensures that the generated zip docs will get published
<8> This property turns on the "deploy" phase for <7>
IMPORTANT: The order of plugin declaration is important!
@@ -135,9 +138,9 @@ We assume that your project contains guides under the `guides` folder.
```
.
└── guides
├── gs-guide1
├── gs-guide2
└── gs-guide3
├── gs-guide1
├── gs-guide2
└── gs-guide3
```
This means that the project contains 3 guides that would
@@ -58,6 +58,11 @@ https://eclipse.org[Eclipse] when working with the code. We use the
https://eclipse.org/m2e/[m2eclipse] eclipse plugin for maven support. Other IDEs and tools
should also work without issue as long as they use Maven 3.3.3 or better.
==== Activate the Spring Maven profile
Spring Cloud projects require the 'spring' Maven profile to be activated to resolve
the spring milestone and snapshot repositories. Use your preferred IDE to set this
profile to be active, or you may experience build errors.
==== Importing into eclipse with m2eclipse
We recommend the https://eclipse.org/m2e/[m2eclipse] eclipse plugin when working with
eclipse. If you don't already have m2eclipse installed it is available from the "eclipse
@@ -1,112 +0,0 @@
package org.springframework.cloud.internal
import java.util.regex.Pattern
import groovy.json.JsonSlurper
import groovy.transform.CompileStatic
import org.springframework.core.io.Resource
import org.springframework.core.io.support.PathMatchingResourcePatternResolver
/**
* @author Marcin Grzejszczak
*/
class Main {
@CompileStatic
static void main(String... args) {
String outputFile = args[0]
String inclusionPattern = args.length > 1 ? args[1] : ".*"
File parent = new File(outputFile).parentFile
if (!parent.exists()) {
println "No parent directory [${parent.toString()}] found. Won't generate the configuration properties file"
return
}
new Generator().generate(outputFile, inclusionPattern)
}
static class Generator {
void generate(String outputFile, String inclusionPattern) {
println "Parsing all configuration metadata"
Resource[] resources = getResources()
println "Found [${resources.length}] configuration metadata jsons"
TreeSet names = new TreeSet()
def descriptions = [:]
int count = 0
int matchingPropertyCount = 0
int propertyCount = 0
Pattern pattern = Pattern.compile(inclusionPattern)
resources.each { Resource resource ->
if (resourceNameContainsPattern(resource)) {
count++
def slurper = new JsonSlurper()
slurper.parseText(resource.inputStream.text).properties.each { val ->
propertyCount++
if (!pattern.matcher(val.name).matches()) {
return
}
matchingPropertyCount++
names.add val.name
descriptions[val.name] = new ConfigValue(val.name, val.description, val.defaultValue)
}
}
}
println "Found [${count}] Cloud projects configuration metadata jsons. [${matchingPropertyCount}/${propertyCount}] were matching the pattern [${inclusionPattern}]"
println "Successfully built the description table"
if (names.empty) {
println("Will not update the table, since no configuration properties were found!")
return
}
new File(outputFile).text = """\
|===
|Name | Default | Description
${names.collect { it -> return descriptions[it] }.join("\n")}
|===
"""
println "Successfully stored the output file"
}
protected boolean resourceNameContainsPattern(Resource resource) {
try {
return resource.getURL().toString().contains("cloud")
}
catch (Exception e) {
println("Exception [${e}] for resource [${resource}] occurred while trying to retrieve its URL")
return false
}
}
protected Resource[] getResources() {
return new PathMatchingResourcePatternResolver()
.getResources("classpath*:/META-INF/spring-configuration-metadata.json")
}
}
@CompileStatic
static class ConfigValue {
String name
String description
Object defaultValue
ConfigValue() {}
ConfigValue(String name, String description, Object defaultValue) {
this.name = name
this.description = escapedValue(description)
this.defaultValue = escapedValue(defaultValue)
}
private String escapedValue(Object value) {
return value != null ?
value.toString().replaceAll('\\|', '\\\\|') : ''
}
String toString() {
"|${name} | ${defaultValue} | ${description}"
}
}
}
@@ -0,0 +1,135 @@
package org.springframework.cloud.internal;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.TreeSet;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.util.StreamUtils;
/**
* @author Marcin Grzejszczak
*/
public class Main {
public static void main(String... args) {
String outputFile = args[0];
String inclusionPattern = args.length > 1 ? args[1] : ".*";
File parent = new File(outputFile).getParentFile();
if (!parent.exists()) {
System.out.println("No parent directory [" + parent.toString()
+ "] found. Will not generate the configuration properties file");
return;
}
new Generator().generate(outputFile, inclusionPattern);
}
static class Generator {
void generate(String outputFile, String inclusionPattern) {
try {
System.out.println("Parsing all configuration metadata");
Resource[] resources = getResources();
System.out.println("Found [" + resources.length + "] configuration metadata jsons");
TreeSet<String> names = new TreeSet<>();
Map<String, ConfigValue> descriptions = new HashMap<>();
final AtomicInteger count = new AtomicInteger();
final AtomicInteger matchingPropertyCount = new AtomicInteger();
final AtomicInteger propertyCount = new AtomicInteger();
Pattern pattern = Pattern.compile(inclusionPattern);
for (Resource resource : resources) {
if (resourceNameContainsPattern(resource)) {
count.incrementAndGet();
byte[] bytes = StreamUtils.copyToByteArray(resource.getInputStream());
Map<String, Object> response = new ObjectMapper().readValue(bytes, HashMap.class);
List<Map<String, Object>> properties = (List<Map<String, Object>>) response.get("properties");
properties.forEach(val -> {
propertyCount.incrementAndGet();
String name = String.valueOf(val.get("name"));
if (!pattern.matcher(name).matches()) {
return;
}
String description = String.valueOf(val.get("description"));
Object defaultValue = val.get("defaultValue");
matchingPropertyCount.incrementAndGet();
names.add(name);
descriptions.put(name, new ConfigValue(name, description, defaultValue));
});
}
}
System.out.println(
"Found [" + count + "] Cloud projects configuration metadata jsons. [" + matchingPropertyCount
+ "/" + propertyCount + "] were matching the pattern [" + inclusionPattern + "]");
System.out.println("Successfully built the description table");
if (names.isEmpty()) {
System.out.println("Will not update the table, since no configuration properties were found!");
return;
}
Files.write(new File(outputFile).toPath(),
("|===\n"
+ "|Name | Default | Description\n\n" + names.stream()
.map(it -> descriptions.get(it).toString()).collect(Collectors.joining("\n"))
+ "\n\n" + "|===").getBytes());
System.out.println("Successfully stored the output file");
}
catch (IOException e) {
throw new IllegalStateException(e);
}
}
protected boolean resourceNameContainsPattern(Resource resource) {
try {
return resource.getURL().toString().contains("cloud");
}
catch (Exception e) {
System.out.println("Exception [" + e + "] for resource [" + resource
+ "] occurred while trying to retrieve its URL");
return false;
}
}
protected Resource[] getResources() throws IOException {
return new PathMatchingResourcePatternResolver()
.getResources("classpath*:/META-INF/spring-configuration-metadata.json");
}
}
static class ConfigValue {
public String name;
public String description;
public Object defaultValue;
ConfigValue() {
}
ConfigValue(String name, String description, Object defaultValue) {
this.name = name;
this.description = escapedValue(description);
this.defaultValue = escapedValue(defaultValue);
}
private String escapedValue(Object value) {
return value != null ? value.toString().replaceAll("\\|", "\\\\|") : "";
}
public String toString() {
return "|" + name + " | " + defaultValue + " | " + description;
}
}
}
+8 -2
View File
@@ -20,13 +20,17 @@ if [[ $# -ne 1 ]]; then
usage
fi
SHELLCHECK_VERSION="v0.6.0"
SHELLCHECK_VERSION="v0.7.0"
ARCH="x86_64"
if [ "$(uname -m)" == aarch64 ]; then
ARCH="aarch64"
fi
SHELLCHECK_BIN="${ROOT_DIR}/../target/shellcheck-${SHELLCHECK_VERSION}/shellcheck"
case $1 in
download-shellcheck)
if [[ "${OSTYPE}" == linux* && ! -z "${SHELLCHECK_BIN}" ]]; then
SHELLCHECK_ARCHIVE="shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz"
SHELLCHECK_ARCHIVE="shellcheck-${SHELLCHECK_VERSION}.linux.${ARCH}.tar.xz"
if [[ -x "${ROOT_DIR}/../target/shellcheck-${SHELLCHECK_VERSION}/shellcheck" ]]; then
echo "shellcheck already downloaded - skipping..."
exit 0
@@ -55,6 +59,8 @@ case $1 in
exit 0
fi
git clone https://github.com/bats-core/bats-core.git "${ROOT_DIR}/../target/bats"
git clone https://github.com/ztombol/bats-support.git "${ROOT_DIR}/target/test_helper/bats-support"
git clone https://github.com/ztombol/bats-assert "${ROOT_DIR}/target/test_helper/bats-assert"
;;
run-bats)
echo "Running bats"
@@ -11,7 +11,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.M4</version>
<version>2.3.0.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
@@ -11,7 +11,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.M4</version>
<version>2.3.0.BUILD-SNAPSHOT</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
@@ -11,7 +11,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.M4</version>
<version>2.3.0.BUILD-SNAPSHOT</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
@@ -11,7 +11,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.M4</version>
<version>2.3.0.BUILD-SNAPSHOT</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
@@ -23,6 +23,9 @@
<profiles>
<profile>
<id>docs</id>
<properties>
<upload-docs-zip.phase>deploy</upload-docs-zip.phase>
</properties>
<build>
<plugins>
<plugin>
@@ -4,12 +4,12 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0-SNAPSHOT</version>
<relativePath/>
</parent>
<scm>
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0-SNAPSHOT</version>
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>3.0.0.BUILD-SNAPSHOT</version>
<version>3.0.0-SNAPSHOT</version>
<relativePath />
</parent>
+6 -2
View File
@@ -1,8 +1,8 @@
#!/usr/bin/env bats
load 'test_helper'
load 'test_helper/bats-support/load'
load 'test_helper/bats-assert/load'
load '../../../target/test_helper/bats-support/load'
load '../../../target/test_helper/bats-assert/load'
setup() {
export TEMP_DIR="$( mktemp -d )"
@@ -84,6 +84,7 @@ export -f printing_git_with_remotes
export -f stubbed_git
@test "should upload the built docs to the root of gh-pages for snapshot versions" {
export BRANCH=master
export GIT_BIN="stubbed_git"
export SOURCE_FUNCTIONS=""
export RELEASER_GIT_OAUTH_TOKEN="mytoken"
@@ -111,6 +112,7 @@ export -f stubbed_git
}
@test "should upload the built docs to spring-cloud-static gh-pages branch for non-snapshot versions" {
export BRANCH=master
export GIT_BIN="stubbed_git"
export SOURCE_FUNCTIONS=""
export RELEASER_GIT_OAUTH_TOKEN="mytoken"
@@ -145,6 +147,7 @@ export -f stubbed_git
}
@test "should upload the release train docs to spring-cloud-static under the release train folder" {
export BRANCH=master
export GIT_BIN="stubbed_git"
export SOURCE_FUNCTIONS=""
export RELEASER_GIT_OAUTH_TOKEN="mytoken"
@@ -217,6 +220,7 @@ export -f stubbed_git
}
@test "should retrieve the name of the current branch" {
export BRANCH=master
export GIT_BIN="stubbed_git"
cd "${TEMP_DIR}/spring-cloud-stream/"
source "${SOURCE_DIR}"/ghpages.sh
+2 -2
View File
@@ -1,8 +1,8 @@
#!/usr/bin/env bats
load 'test_helper'
load 'test_helper/bats-support/load'
load 'test_helper/bats-assert/load'
load '../../../target/test_helper/bats-support/load'
load '../../../target/test_helper/bats-assert/load'
setup() {
export TEMP_DIR="$( mktemp -d )"
+39 -65
View File
@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>3.0.0.M1</version>
<version>3.0.0-M2</version>
<packaging>pom</packaging>
<name>Spring Cloud Parent</name>
<description>Spring Cloud parent pom, managing plugins and dependencies for Spring
@@ -28,11 +28,11 @@
<maven.compiler.target>${java.version}</maven.compiler.target>
<main.basedir>${basedir}</main.basedir>
<docs.main>${project.artifactId}</docs.main>
<spring-boot.version>2.3.0.M4</spring-boot.version>
<spring-cloud-build.version>3.0.0.M1</spring-cloud-build.version>
<spring-boot.version>2.3.0.RELEASE</spring-boot.version>
<spring-cloud-build.version>3.0.0-M2</spring-cloud-build.version>
<docs.resources.dir>${project.build.directory}/build-docs</docs.resources.dir>
<refdocs.build.directory>${project.build.directory}/refdocs/</refdocs.build.directory>
<spring-doc-resources.version>0.2.0.RELEASE</spring-doc-resources.version>
<spring-doc-resources.version>0.2.1.RELEASE</spring-doc-resources.version>
<spring-asciidoctor-extensions.version>0.2.0.RELEASE
</spring-asciidoctor-extensions.version>
<asciidoctorj-pdf.version>1.5.0-alpha.18</asciidoctorj-pdf.version>
@@ -109,6 +109,10 @@
<generated-docs-pdf-output.dir>${project.build.directory}/generated-docs/reference/pdf</generated-docs-pdf-output.dir>
<javadoc.failOnError>false</javadoc.failOnError>
<javadoc.failOnWarnings>false</javadoc.failOnWarnings>
<maven-deploy-plugin.version>2.7</maven-deploy-plugin.version>
<maven-deploy-plugin.deployZipRepositoryId>repo.spring.io</maven-deploy-plugin.deployZipRepositoryId>
<maven-deploy-plugin.deployZipUrl>https://repo.spring.io/libs-snapshot-local</maven-deploy-plugin.deployZipUrl>
<upload-docs-zip.phase>none</upload-docs-zip.phase>
</properties>
<dependencyManagement>
<dependencies>
@@ -754,6 +758,9 @@
<url>https://repo.spring.io/libs-milestone-local</url>
</repository>
</distributionManagement>
<properties>
<maven-deploy-plugin.deployZipUrl>https://repo.spring.io/libs-milestone-local</maven-deploy-plugin.deployZipUrl>
</properties>
</profile>
<profile>
<id>bintray</id>
@@ -787,6 +794,9 @@
</plugin>
</plugins>
</build>
<properties>
<maven-deploy-plugin.deployZipUrl>https://repo.spring.io/libs-release-local</maven-deploy-plugin.deployZipUrl>
</properties>
</profile>
<profile>
<id>guides</id>
@@ -1109,10 +1119,8 @@
<project-version>${project.version}@</project-version>
<github-tag>${github-tag}@</github-tag>
<version-type>${version-type}@</version-type>
<!-- Once we go to docs.spring.io should be changed to -->
<!-- https://docs.spring.io/${docs.main}/${project.version} -->
<docs-url>${docs-url}@</docs-url>
<raw-docs-url>${raw-docs-url}@</raw-docs-url>
<docs-url>https://docs.spring.io/${docs.main}/docs/${project.version}@</docs-url>
<raw-docs-url>${github-raw}@</raw-docs-url>
<project-version>${project.version}@</project-version>
<project-name>${docs.main}@</project-name>
</attributes>
@@ -1335,68 +1343,11 @@
input="${git.branch}" regexp="origin/(.*)"
replace="\1"/>
<var name="github-tag" value="${git.branch}"/>
<condition property="docs-url"
value="https://cloud.spring.io/${docs.main}">
<and>
<equals arg1="${version-type}" arg2="SNAPSHOT"/>
<or>
<equals arg1="${git.branch}" arg2="master"/>
<equals arg1="${git.branch}" arg2="origin/master"/>
</or>
</and>
</condition>
<condition property="docs-url"
value="https://cloud.spring.io/${docs.main}/${git.branch}">
<and>
<equals arg1="${version-type}" arg2="SNAPSHOT"/>
<not>
<or>
<equals arg1="${git.branch}" arg2="master"/>
<equals arg1="${git.branch}" arg2="origin/master"/>
</or>
</not>
</and>
</condition>
<condition property="docs-url"
value="https://cloud.spring.io/spring-cloud-static/${docs.main}/${project.version}">
<and>
<not>
<equals arg1="${version-type}" arg2="SNAPSHOT"/>
</not>
</and>
</condition>
<propertyregex property="raw-docs-url" override="true"
input="${docs-url}" regexp="https://cloud.spring.io/(.*)"
replace="https://raw.githubusercontent.com/\1"/>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${build-helper-maven-plugin.version}</version>
<executions>
<execution>
<id>attach-zip</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>
${project.build.directory}/${project.artifactId}-${project.version}.zip
</file>
<type>zip;zip.type=docs;zip.deployed=false;</type>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jfrog.buildinfo</groupId>
<artifactId>artifactory-maven-plugin</artifactId>
@@ -1423,6 +1374,29 @@
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>${maven-deploy-plugin.version}</version>
<executions>
<execution>
<id>upload-docs-zip</id>
<phase>${upload-docs-zip.phase}</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<generatePom>false</generatePom>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<repositoryId>${maven-deploy-plugin.deployZipRepositoryId}</repositoryId>
<url>${maven-deploy-plugin.deployZipUrl}</url>
<file>${project.build.directory}/${project.artifactId}-${project.version}.zip</file>
<packaging>zip;zip.type=docs;zip.deployed=false;</packaging>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
+3 -3
View File
@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build-dependencies</artifactId>
<version>3.0.0.M1</version>
<version>3.0.0-M2</version>
<name>spring-cloud-build-dependencies</name>
<packaging>pom</packaging>
<description>Spring Cloud Build Dependencies: an internal BOM for use with Spring
@@ -14,12 +14,12 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.0.M4</version>
<version>2.3.0.RELEASE</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring-boot.version>2.3.0.M4</spring-boot.version>
<spring-boot.version>2.3.0.RELEASE</spring-boot.version>
</properties>
<build>
<plugins>
+1 -1
View File
@@ -10,7 +10,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>3.0.0.M1</version>
<version>3.0.0-M2</version>
</parent>
<dependencies>
<dependency>
@@ -9,6 +9,7 @@
<suppress files=".*example.*" checks="(Javadoc*|HideUtility*)"/>
<suppress files=".*integration-tests.*" checks="(Javadoc*|HideUtility*)"/>
<suppress files="(.*Tests\.java|.*Tests\.groovy)" checks="Javadoc*"/>
<suppress files=".*src.test.java.*" checks="Javadoc*"/>
<suppress files="generated-sources" checks="[a-zA-Z0-9]*"/>
<suppress files=".*target.*" checks="[a-zA-Z0-9]*"/>
<suppress files=".*build.*" checks="[a-zA-Z0-9]*"/>
+1 -1
View File
@@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework.cloud</groupId>
<version>3.0.0.M1</version>
<version>3.0.0-M2</version>
<artifactId>spring-cloud-dependencies-parent</artifactId>
<packaging>pom</packaging>
<name>spring-cloud-dependencies-parent</name>