Compare commits

...
Author SHA1 Message Date
buildmaster 1b50fb3d96 Update SNAPSHOT to 2.3.2.RELEASE 2021-02-08 20:47:35 +00:00
Marcin Grzejszczak 4bac0474d9 Removed plugins repo 2020-12-18 10:31:04 +01:00
Marcin Grzejszczak 1506765f75 Changed the plugins-release repo to plugins 2020-12-09 17:39:56 +01:00
Marcin Grzejszczak 6d5d80ae45 Fixed the invalid default value code formatting 2020-11-26 08:29:56 +01:00
Marcin Grzejszczak 80b1c9a661 Code for the default value 2020-11-16 14:14:49 +01:00
Olga Maciaszek-Sharma 09bc053a02 Fix artifact version. 2020-08-03 12:09:35 +02:00
buildmaster 2631bd9e4f Bumping versions to 2.3.2.SNAPSHOT after release 2020-07-30 16:56:05 +00:00
buildmaster c2ef62de73 Going back to snapshots 2020-07-30 16:56:04 +00:00
buildmaster a247cbcfae Update SNAPSHOT to 2.3.1.RELEASE 2020-07-30 16:47:53 +00:00
Ryan Baxter c08320254e Revert "Use https://repo.spring.io/snapshot"
This reverts commit fc23298240.
2020-07-30 10:29:22 -04:00
Ryan Baxter e296686584 Revert "Changing to https://repo.spring.io/snapshot"
This reverts commit d4a54620b8.
2020-07-30 10:28:32 -04:00
spencergibb 53fd3a14c8 Bumps boot to version to 2.3.2.RELEASE 2020-07-30 10:06:50 -04:00
Ryan Baxter d4a54620b8 Changing to https://repo.spring.io/snapshot 2020-07-29 17:11:38 -04:00
Ryan Baxter 1836d36388 Merge remote-tracking branch 'origin/2.2.x' into 2.3.x 2020-07-29 16:17:10 -04:00
Ryan Baxter fc23298240 Use https://repo.spring.io/snapshot 2020-07-29 16:01:52 -04:00
Spencer Gibb bd215fab95 Creates and uses new github-project url in docs (#169)
Fixes gh-168
2020-07-07 12:41:16 -04:00
Marcin Grzejszczak 2491889a42 Skipping readme generation if there's no readme 2020-06-10 09:59:04 +02:00
Marcin Grzejszczak b6a814b6cf No more null description 2020-06-04 13:12:57 +02:00
Marcin Grzejszczak d4fefdcd77 Migrating to the docs.spring.io 2020-06-04 13:11:04 +02:00
buildmaster 9fc5902087 Bumping versions to 2.3.1.BUILD-SNAPSHOT after release 2020-05-28 09:04:35 +00:00
buildmaster 44f2689dc3 Going back to snapshots 2020-05-28 09:04:34 +00:00
buildmaster e96132ecf2 Update SNAPSHOT to 2.3.0.RELEASE 2020-05-28 08:59:41 +00:00
buildmaster 881c967d3c Bumping versions 2020-05-28 08:46:59 +00: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 d11a135437 Bumps boot to version to 2.2.7.RELEASE 2020-05-13 15:17:42 -04:00
Olga Maciaszek-Sharma d30799cf5c Upgrade groovy.version to 2.5.10. 2020-05-13 17:28:05 +02: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 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
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
Spencer Gibb efcd0f89f1 Bumps boot to version to 2.3.0.M4 2020-04-03 10:22:09 -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
Spencer Gibb 2257f255d6 Bumps version to 2.3.0 2020-03-19 10:28:53 -04:00
Marcin Grzejszczak e8482b1134 Fixing Groovy 2020-03-18 17:38:08 -04:00
Spencer Gibb 2f67da3078 Bumps boot version to 2.3.0.M3
fixes gh-153
2020-03-18 16:44:03 -04:00
Spencer Gibb 9295fc30ef Updates docs branches 2020-03-06 12:43:48 -05:00
Spencer Gibb 880cf63c2c Updates remaining versions to 2.2.4.BUILD-SNAPSHOT. 2020-03-04 15:11:09 -05:00
Spencer Gibb 417d78533a Merge remote-tracking branch 'origin/2.2.x' into 2.2.x
# Conflicts:
#	docs/pom.xml
#	pom.xml
#	spring-cloud-build-tools/pom.xml
2020-03-04 15:06:31 -05:00
Marcin Grzejszczak 2e5868c5bd Bumping build 2020-03-04 14:14:07 +01:00
34 changed files with 586 additions and 386 deletions
+1
View File
@@ -19,3 +19,4 @@ _site/
.vscode/
.flattened-pom.xml
.DS_Store
.sdkmanrc
+70 -68
View File
@@ -4,6 +4,7 @@ Manual changes to this file will be lost when it is generated again.
Edit the files in the src/main/asciidoc/ directory instead.
////
image:https://circleci.com/gh/spring-cloud/spring-cloud-build.svg?style=svg[link="https://travis-ci.org/spring-cloud/spring-cloud-build"]
Spring Cloud Build is a common utility project for Spring Cloud
@@ -254,38 +255,38 @@ approach of generating documentation just add these plugins to your `docs` modul
[source,xml]
----
<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>
</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>
</plugins>
</build>
</profile>
</profiles>
----
<2> 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
@@ -305,42 +306,43 @@ Spring Cloud Build Docs comes with a set of attributes for asciidoctor that you
[source,xml]
----
<attributes>
<docinfo>shared</docinfo>
<allow-uri-read>true</allow-uri-read>
<nofooter/>
<toc>left</toc>
<toc-levels>4</toc-levels>
<sectlinks>true</sectlinks>
<sources-root>${project.basedir}/src@</sources-root>
<asciidoc-sources-root>${project.basedir}/src/main/asciidoc@</asciidoc-sources-root>
<generated-resources-root>${project.basedir}/target/generated-resources@
</generated-resources-root>
<!-- Use this attribute the reference code from another module -->
<!-- Note the @ at the end, lowering the precedence of the attribute -->
<project-root>${maven.multiModuleProjectDirectory}@</project-root>
<!-- It's mandatory for you to pass the docs.main property -->
<github-repo>${docs.main}@</github-repo>
<github-raw>
https://raw.githubusercontent.com/spring-cloud/${docs.main}/${github-tag}@
</github-raw>
<github-code>https://github.com/spring-cloud/${docs.main}/tree/${github-tag}@
</github-code>
<github-issues>https://github.com/spring-cloud/${docs.main}/issues/@</github-issues>
<github-wiki>https://github.com/spring-cloud/${docs.main}/wiki@</github-wiki>
<github-master-code>https://github.com/spring-cloud/${docs.main}/tree/master@
</github-master-code>
<index-link>${index-link}@</index-link>
<docinfo>shared</docinfo>
<allow-uri-read>true</allow-uri-read>
<nofooter/>
<toc>left</toc>
<toc-levels>4</toc-levels>
<sectlinks>true</sectlinks>
<sources-root>${project.basedir}/src@</sources-root>
<asciidoc-sources-root>${project.basedir}/src/main/asciidoc@</asciidoc-sources-root>
<generated-resources-root>${project.basedir}/target/generated-resources@
</generated-resources-root>
<!-- Use this attribute the reference code from another module -->
<!-- Note the @ at the end, lowering the precedence of the attribute -->
<project-root>${maven.multiModuleProjectDirectory}@</project-root>
<!-- It's mandatory for you to pass the docs.main property -->
<github-repo>${docs.main}@</github-repo>
<github-project>https://github.com/spring-cloud/${docs.main}@</github-project>
<github-raw>
https://raw.githubusercontent.com/spring-cloud/${docs.main}/${github-tag}@
</github-raw>
<github-code>https://github.com/spring-cloud/${docs.main}/tree/${github-tag}@
</github-code>
<github-issues>https://github.com/spring-cloud/${docs.main}/issues/@</github-issues>
<github-wiki>https://github.com/spring-cloud/${docs.main}/wiki@</github-wiki>
<github-master-code>https://github.com/spring-cloud/${docs.main}/tree/master@
</github-master-code>
<index-link>${index-link}@</index-link>
<!-- Spring Cloud specific -->
<!-- for backward compatibility -->
<spring-cloud-version>${project.version}@</spring-cloud-version>
<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>
<project-version>${project.version}@</project-version>
<project-name>${docs.main}@</project-name>
<!-- Spring Cloud specific -->
<!-- for backward compatibility -->
<spring-cloud-version>${project.version}@</spring-cloud-version>
<project-version>${project.version}@</project-version>
<github-tag>${github-tag}@</github-tag>
<version-type>${version-type}@</version-type>
<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>
----
@@ -373,4 +375,4 @@ what will happen is that for GA project versions, we will clone `gs-guide1`, `gs
You can skip this by either not adding the `guides` profile, or passing the `-DskipGuides` system property when the profile is turned on.
You can configure the project version passed to guides via the `guides-project.version` (defaults to `${project.version}`). The phase at which guides get updated can be configured by `guides-update.phase` (defaults to `deploy`).
You can configure the project version passed to guides via the `guides-project.version` (defaults to `${project.version}`). The phase at which guides get updated can be configured by `guides-update.phase` (defaults to `deploy`).
+28 -82
View File
@@ -10,18 +10,18 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>2.2.3.RELEASE</version>
<version>2.3.2.RELEASE</version>
</parent>
<properties>
<docs.main>spring-cloud-build</docs.main>
<!-- Comma separated list of whitelisted branches -->
<docs.whitelisted.branches>1.2.x,1.3.x,2.0.x,2.1.x</docs.whitelisted.branches>
<main.basedir>${basedir}/..</main.basedir>
<gmavenplus-plugin.version>1.8.1</gmavenplus-plugin.version>
<groovy.version>2.5.9</groovy.version>
<!-- We don't want to downloaded sources of our own project-->
<maven-dependency-plugin-for-docs.phase>none</maven-dependency-plugin-for-docs.phase>
<maven-dependency-plugin-for-docs-classes.phase>none</maven-dependency-plugin-for-docs-classes.phase>
<docs.resources.dir>${project.basedir}/src/main/</docs.resources.dir>
<upload-docs-zip.phase>deploy</upload-docs-zip.phase>
<!-- We don't want to reference plugin classpath of ourselves -->
<readme.class.path>maven.compile.classpath</readme.class.path>
</properties>
<dependencies>
<!-- Script -->
@@ -37,31 +37,17 @@
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<scope>compile</scope>
</dependency>
<!-- Asciidoctor -->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-xml</artifactId>
<groupId>org.asciidoctor</groupId>
<artifactId>asciidoctorj</artifactId>
<version>${asciidoctorj.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-nio</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-json</artifactId>
<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.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
@@ -73,42 +59,26 @@
<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>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<id>make-assembly</id>
<phase>package</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>
<goal>single</goal>
</goals>
</execution>
</executions>
@@ -148,36 +118,12 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>unix</id>
<activation>
<os>
<family>unix</family>
<name>Linux</name>
</os>
</activation>
<build>
<plugins>
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<groupId>org.codehaus.mojo</groupId>
<executions>
<execution>
<id>Run tests</id>
<phase>test</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<skip>${skipTests}</skip>
<skip>true</skip>
<executable>${basedir}/src/test/bash/run-bats.sh</executable>
</configuration>
</execution>
</executions>
<artifactId>maven-deploy-plugin</artifactId>
<goals>
<goal>deploy</goal>
<goal>deploy-file</goal>
</goals>
</plugin>
</plugins>
</build>
@@ -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 +1 @@
NOTE: Spring Cloud is released under the non-restrictive Apache 2.0 license. If you would like to contribute to this section of the documentation or if you find an error, please find the source code and issue trackers in the project at {docslink}[github].
NOTE: Spring Cloud is released under the non-restrictive Apache 2.0 license. If you would like to contribute to this section of the documentation or if you find an error, please find the source code and issue trackers in the project at {github-project}[github].
@@ -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,152 @@
/*
* Copyright 2012-2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
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;
import org.springframework.util.StringUtils;
/**
* @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;
}
Object description = 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 String defaultValue;
ConfigValue() {
}
ConfigValue(String name, Object 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 + " | " + (StringUtils.hasText(defaultValue) ? ("`" + defaultValue + "`") : "") + " | " + description;
}
}
}
@@ -0,0 +1,126 @@
/*
* Copyright 2012-2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.cloud.internal.asciidoctor;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import org.asciidoctor.ast.Document;
import org.asciidoctor.extension.Preprocessor;
import org.asciidoctor.extension.PreprocessorReader;
// taken from https://github.com/hibernate/hibernate-asciidoctor-extensions/blob/1.0.3.Final/src/main/java/org/hibernate/infra/asciidoctor/extensions/savepreprocessed/SavePreprocessedOutputPreprocessor.java
/**
* Preprocessor used to save the preprocessed output of the asciidoctor conversion. It allows to generate a single file
* integrating all the includes.
*
* @author Guillaume Smet
*/
class CoalescerPreprocessor extends Preprocessor {
private final File outputFile;
private static final List<String> FILTER_LICENSE_MARKERS = Arrays.asList("[preface]", "<<<");
private static final String COMMENT_MARKER = "//";
private static final String SOURCE_MARKER = "[source";
private static final List<String> SECTION_MARKERS = Arrays.asList("----", "....");
private static final String HEADER = "////\n" + "DO NOT EDIT THIS FILE. IT WAS GENERATED.\n"
+ "Manual changes to this file will be lost when it is generated again.\n"
+ "Edit the files in the src/main/asciidoc/ directory instead.\n" + "////\n\n";
CoalescerPreprocessor(File output_file) {
outputFile = output_file;
}
@Override
public void process(Document document, PreprocessorReader preprocessorReader) {
try {
LinkedList<String> filteredLines = filterLines(preprocessorReader.readLines());
filteredLines.addFirst(HEADER);
Files.write(outputFile.toPath(), filteredLines);
}
catch (IOException e) {
throw new IllegalStateException("Unable to write the preprocessed file " + outputFile, e);
}
}
/**
* This is used to filter out the license headers that are just after the markers
* defined. It also reindents the source code with spaces to be consistent with the
* 1.1 spec.
*/
private LinkedList<String> filterLines(List<String> lines) {
LinkedList<String> filteredLines = new LinkedList<>();
ParsingState state = ParsingState.NORMAL;
int counter = 0;
for (String line : lines) {
counter++;
switch (state) {
case NORMAL:
if (FILTER_LICENSE_MARKERS.contains(line)) {
state = ParsingState.FILTER_LICENSE;
}
else if (line.startsWith(SOURCE_MARKER)) {
state = ParsingState.SOURCE;
}
break;
case SOURCE:
if (SECTION_MARKERS.contains(line)) {
state = ParsingState.SOURCE_CONTENT;
}
else {
System.err.println("[source] requires to be followed by a section marker and line number [" + counter + "] with content [" + line + "] doesn't have it");
}
break;
case SOURCE_CONTENT:
if (SECTION_MARKERS.contains(line)) {
state = ParsingState.NORMAL;
}
else {
filteredLines.add(line.replaceAll("\t", " "));
continue;
}
break;
case FILTER_LICENSE:
if (line.startsWith(COMMENT_MARKER)) {
continue;
}
else {
state = ParsingState.NORMAL;
}
break;
}
filteredLines.add(line);
}
return filteredLines;
}
private enum ParsingState {
NORMAL, FILTER_LICENSE, SOURCE, SOURCE_CONTENT,
}
}
@@ -0,0 +1,65 @@
/*
* Copyright 2012-2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.cloud.internal.asciidoctor;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import org.asciidoctor.Asciidoctor;
import org.asciidoctor.Attributes;
import org.asciidoctor.Options;
import org.asciidoctor.SafeMode;
public class ReadmeMain {
public static void main(String... args) {
File inputFile = new File(args[0]);
File outputFile = new File(args[1]);
System.out.println("Will do the Readme conversion from [" + inputFile + "] to [" + outputFile + "]");
if (!inputFile.exists()) {
System.out.println("There's no file [" + inputFile + "], skipping readme generation");
return;
}
new ReadmeMain().convert(inputFile, outputFile);
}
void convert(File input, File output) {
Asciidoctor asciidoctor = Asciidoctor.Factory.create();
asciidoctor.javaExtensionRegistry().preprocessor(new CoalescerPreprocessor(output));
Options options = options(input, output);
try {
String fileAsString = new String(Files.readAllBytes(input.toPath()));
asciidoctor.convert(fileAsString, options);
System.out.println("Successfully converted the Readme file!\n");
} catch (IOException ex) {
throw new IllegalStateException("Failed to convert the file", ex);
}
}
private Options options(File input, File output) {
Attributes attributes = new Attributes();
attributes.setAllowUriRead(true);
attributes.setAttribute("project-root", output.getParent());
Options options = new Options();
options.setSourceDir(input.getParent());
options.setBaseDir(input.getParent());
options.setAttributes(attributes);
options.setSafe(SafeMode.UNSAFE);
options.setParseHeaderOnly(true);
return options;
}
}
+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.2.5.RELEASE</version>
<version>2.3.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
@@ -11,15 +11,15 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<version>2.3.2.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.BUILD-SNAPSHOT</spring-cloud.version>
<spring-cloud-contract.version>2.2.2.BUILD-SNAPSHOT</spring-cloud-contract.version>
<spring-cloud.version>Hoxton.SNAPSHOT</spring-cloud.version>
<spring-cloud-contract.version>2.2.4.SNAPSHOT</spring-cloud-contract.version>
</properties>
<dependencies>
@@ -11,7 +11,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<version>2.3.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
@@ -11,15 +11,15 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<version>2.3.2.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.BUILD-SNAPSHOT</spring-cloud.version>
<spring-cloud-contract.version>2.2.2.BUILD-SNAPSHOT</spring-cloud-contract.version>
<spring-cloud.version>Hoxton.SNAPSHOT</spring-cloud.version>
<spring-cloud-contract.version>2.2.4.SNAPSHOT</spring-cloud-contract.version>
</properties>
<dependencies>
@@ -7,7 +7,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<packaging>pom</packaging>
<name>spring-cloud-stream-core-docs</name>
@@ -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>2.2.2.BUILD-SNAPSHOT</version>
<version>2.3.2.BUILD-SNAPSHOT</version>
<packaging>pom</packaging>
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>2.2.2.BUILD-SNAPSHOT</version>
<version>2.3.2.BUILD-SNAPSHOT</version>
<relativePath/>
</parent>
<scm>
@@ -28,7 +28,7 @@
<reactor.version>Californium-SR5</reactor.version>
<kryo-shaded.version>3.0.3</kryo-shaded.version>
<objenesis.version>2.1</objenesis.version>
<spring-cloud-function.version>3.0.1.RELEASE</spring-cloud-function.version>
<spring-cloud-function.version>3.0.9.SNAPSHOT</spring-cloud-function.version>
<maven-checkstyle-plugin.failsOnError>true</maven-checkstyle-plugin.failsOnError>
<maven-checkstyle-plugin.failsOnViolation>true</maven-checkstyle-plugin.failsOnViolation>
@@ -13,7 +13,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<dependencies>
@@ -12,7 +12,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<dependencies>
@@ -5,7 +5,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@@ -8,7 +8,7 @@
<parent>
<artifactId>spring-cloud-stream-parent</artifactId>
<groupId>org.springframework.cloud</groupId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<dependencies>
@@ -5,7 +5,7 @@
<parent>
<artifactId>spring-cloud-stream-parent</artifactId>
<groupId>org.springframework.cloud</groupId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@@ -6,7 +6,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<artifactId>spring-cloud-stream-test-support-internal</artifactId>
<description>Set of classes and utility code that may assist in testing both
@@ -6,7 +6,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<artifactId>spring-cloud-stream-test-support</artifactId>
<description>A set of classes to ease testing of Spring Cloud Stream modules.
@@ -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>2.2.2.BUILD-SNAPSHOT</version>
<version>2.3.2.BUILD-SNAPSHOT</version>
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>2.2.2.BUILD-SNAPSHOT</version>
<version>2.3.2.BUILD-SNAPSHOT</version>
<relativePath />
</parent>
@@ -12,7 +12,7 @@
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-parent</artifactId>
<version>Horsham.SR1</version>
<version>Horsham.SR6</version>
</parent>
<dependencies>
+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 )"
+94 -88
View File
@@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-build</artifactId>
<version>2.2.3.RELEASE</version>
<version>2.3.2.RELEASE</version>
<packaging>pom</packaging>
<name>Spring Cloud Parent</name>
<description>Spring Cloud parent pom, managing plugins and dependencies for Spring
@@ -28,19 +28,20 @@
<maven.compiler.target>${java.version}</maven.compiler.target>
<main.basedir>${basedir}</main.basedir>
<docs.main>${project.artifactId}</docs.main>
<spring-boot.version>2.2.5.RELEASE</spring-boot.version>
<spring-cloud-build.version>2.2.3.RELEASE</spring-cloud-build.version>
<spring-boot.version>2.3.8.RELEASE</spring-boot.version>
<spring-cloud-build.version>2.3.2.RELEASE</spring-cloud-build.version>
<docs.resources.dir>${project.build.directory}/build-docs</docs.resources.dir>
<docs.classes.dir>${project.build.directory}/build-docs-classes</docs.classes.dir>
<refdocs.build.directory>${project.build.directory}/refdocs/</refdocs.build.directory>
<spring-doc-resources.version>0.1.0.RELEASE</spring-doc-resources.version>
<spring-asciidoctor-extensions.version>0.1.3.RELEASE
<spring-doc-resources.version>0.2.2.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>
<asciidoctorj-diagram.version>1.5.18</asciidoctorj-diagram.version>
<asciidoctorj-diagram.version>2.0.2</asciidoctorj-diagram.version>
<guides-project.version>${project.version}</guides-project.version>
<guides-update.phase>deploy</guides-update.phase>
<revision>${project.version}</revision>
<asciidoctorj.version>1.5.8</asciidoctorj.version>
<asciidoctorj.version>2.1.0</asciidoctorj.version>
<jruby-complete.version>9.2.7.0</jruby-complete.version>
<!-- Sonar -->
@@ -71,7 +72,7 @@
<maven-enforcer-plugin.version>3.0.0-M2</maven-enforcer-plugin.version>
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
<maven-dependency-plugin.version>3.1.1</maven-dependency-plugin.version>
<asciidoctor-maven-plugin.version>1.5.8</asciidoctor-maven-plugin.version>
<asciidoctor-maven-plugin.version>1.6.0</asciidoctor-maven-plugin.version>
<build-helper-maven-plugin.version>3.0.0</build-helper-maven-plugin.version>
<artifactory-maven-plugin.version>2.2.1</artifactory-maven-plugin.version>
<license-maven-plugin.version>1.16</license-maven-plugin.version>
@@ -101,10 +102,17 @@
<configprops.path>${project.basedir}/src/main/asciidoc/_configprops.adoc</configprops.path>
<configprops.inclusionPattern>.*</configprops.inclusionPattern>
<maven-dependency-plugin-for-docs.phase>generate-resources</maven-dependency-plugin-for-docs.phase>
<maven-dependency-plugin-for-docs-classes.phase>generate-resources</maven-dependency-plugin-for-docs-classes.phase>
<maven-dependency-plugin-for-guides.phase>generate-resources</maven-dependency-plugin-for-guides.phase>
<generated-docs-multipage-output.dir>${project.build.directory}/generated-docs/reference/html</generated-docs-multipage-output.dir>
<generated-docs-singlepage-output.dir>${project.build.directory}/generated-docs/reference/htmlsingle</generated-docs-singlepage-output.dir>
<generated-docs-pdf-output.dir>${project.build.directory}/generated-docs/reference/pdf</generated-docs-pdf-output.dir>
<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>
<readme.main.classpath>${docs.classes.dir}</readme.main.classpath>
<readme.class.path>readme.class.path</readme.class.path>
</properties>
<dependencyManagement>
<dependencies>
@@ -437,7 +445,6 @@
checkstyle.additional.suppressions.file=${checkstyle.additional.suppressions.file}
</propertyExpansion>
<consoleOutput>true</consoleOutput>
<!-- TODO: Start fixing the errors -->
<includeTestSourceDirectory>
${maven-checkstyle-plugin.includeTestSourceDirectory}
</includeTestSourceDirectory>
@@ -487,6 +494,7 @@
${project.build.outputDirectory}/git.properties
</generateGitPropertiesFilename>
<skipPoms>false</skipPoms>
<useNativeGit>true</useNativeGit>
</configuration>
</plugin>
<!-- Support our own plugin -->
@@ -707,11 +715,6 @@
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>spring-plugins</id>
<name>Spring Maven Plugins Repository</name>
<url>https://repo.spring.io/plugins-release</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
@@ -752,6 +755,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>
@@ -785,6 +791,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>
@@ -962,6 +971,30 @@
</artifactItems>
</configuration>
</execution>
<execution>
<id>unpack-classes</id>
<phase>${maven-dependency-plugin-for-docs-classes.phase}</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.springframework.cloud
</groupId>
<artifactId>spring-cloud-build-docs
</artifactId>
<version>${spring-cloud-build.version}
</version>
<classifier>jar-with-dependencies</classifier>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${docs.classes.dir}
</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<execution>
<id>unpack-docs-resources</id>
<phase>generate-resources</phase>
@@ -1090,6 +1123,7 @@
<project-root>${maven.multiModuleProjectDirectory}@</project-root>
<!-- It's mandatory for you to pass the docs.main property -->
<github-repo>${docs.main}@</github-repo>
<github-project>https://github.com/spring-cloud/${docs.main}@</github-project>
<github-raw>
https://raw.githubusercontent.com/spring-cloud/${docs.main}/${github-tag}@
</github-raw>
@@ -1107,8 +1141,8 @@
<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>
@@ -1135,13 +1169,14 @@
<sourceHighlighter>highlight.js</sourceHighlighter>
<doctype>book</doctype>
<attributes>
<highlightjsdir>js/highlight</highlightjsdir>
<highlightjs-theme>atom-one-dark-reasonable</highlightjs-theme>
<linkcss>true</linkcss>
<imagesdir>./images</imagesdir>
<icons>font</icons>
<docinfo>shared</docinfo>
<stylesdir>css/</stylesdir>
<stylesheet>spring.css</stylesheet>
<linkcss>true</linkcss>
<icons>font</icons>
<highlightjsdir>js/highlight</highlightjsdir>
<highlightjs-theme>github</highlightjs-theme>
<imagesdir>./images</imagesdir>
<attribute-missing>warn</attribute-missing>
</attributes>
<logHandler>
@@ -1169,13 +1204,14 @@
<sourceHighlighter>highlight.js</sourceHighlighter>
<doctype>book</doctype>
<attributes>
<highlightjsdir>js/highlight</highlightjsdir>
<highlightjs-theme>atom-one-dark-reasonable</highlightjs-theme>
<linkcss>true</linkcss>
<imagesdir>./images</imagesdir>
<icons>font</icons>
<docinfo>shared</docinfo>
<stylesdir>css/</stylesdir>
<stylesheet>spring.css</stylesheet>
<linkcss>true</linkcss>
<icons>font</icons>
<highlightjsdir>js/highlight</highlightjsdir>
<highlightjs-theme>github</highlightjs-theme>
<imagesdir>./images</imagesdir>
</attributes>
</configuration>
</execution>
@@ -1244,16 +1280,20 @@
<executions>
<execution>
<id>readme</id>
<phase>process-resources</phase>
<phase>prepare-package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<java classname="org.jruby.Main"
failonerror="yes">
<arg value="${docs.resources.dir}/ruby/generate_readme.sh"/>
<arg value="-o"/>
<path id="readme.class.path">
<pathelement location="${readme.main.classpath}"/>
</path>
<java classname="org.springframework.cloud.internal.asciidoctor.ReadmeMain"
failonerror="yes" classpathref="${readme.class.path}">
<!-- Input -->
<arg value="${project.basedir}/src/main/asciidoc/README.adoc"/>
<!-- Output -->
<arg value="${main.basedir}/README.adoc"/>
</java>
</target>
@@ -1329,68 +1369,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>
<inherited>false</inherited>
<executions>
<execution>
<id>attach-zip</id>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>
${project.build.directory}/${project.artifactId}-${project.version}.zip
</file>
<type>zip</type>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jfrog.buildinfo</groupId>
<artifactId>artifactory-maven-plugin</artifactId>
@@ -1417,6 +1400,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>2.2.3.RELEASE</version>
<version>2.3.2.RELEASE</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.2.5.RELEASE</version>
<version>2.3.8.RELEASE</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring-boot.version>2.2.5.RELEASE</spring-boot.version>
<spring-boot.version>2.3.8.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>2.2.3.RELEASE</version>
<version>2.3.2.RELEASE</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>2.2.3.RELEASE</version>
<version>2.3.2.RELEASE</version>
<artifactId>spring-cloud-dependencies-parent</artifactId>
<packaging>pom</packaging>
<name>spring-cloud-dependencies-parent</name>