diff --git a/docs/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml
similarity index 100%
rename from docs/.github/workflows/deploy-docs.yml
rename to .github/workflows/deploy-docs.yml
diff --git a/.gitignore b/.gitignore
index 84d578d9..393da56d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,3 +17,9 @@ _site/
.DS_Store
.vscode/
.flattened-pom.xml
+
+node
+node_modules
+build
+package.json
+package-lock.json
diff --git a/README.adoc b/README.adoc
index ba34bba3..b2d1f90e 100644
--- a/README.adoc
+++ b/README.adoc
@@ -5,300 +5,32 @@ Edit the files in the src/main/asciidoc/ directory instead.
////
-image::https://travis-ci.org/spring-cloud/spring-cloud-zookeeper.svg?branch=master[Build Status, link=https://travis-ci.org/spring-cloud/spring-cloud-zookeeper]
+image::https://github.com/spring-cloud/spring-cloud-zookeeper/workflows/Build/badge.svg?style=svg["Actions Status", link="https://github.com/spring-cloud/spring-cloud-zookeeper/actions"]
-:doctype: book
-:idprefix:
-:idseparator: -
-:toc: left
-:toclevels: 4
-:tabsize: 4
-:numbered:
-:sectanchors:
-:sectnums:
-:icons: font
-:hide-uri-scheme:
-:docinfo: shared,private
-
-:sc-ext: java
-:project-full-name: Spring Cloud Zookeeper
-
-This project provides Zookeeper integrations for Spring Boot applications through
-autoconfiguration and binding to the Spring Environment and other Spring programming model
-idioms. With a few annotations, you can quickly enable and configure the common patterns
-inside your application and build large distributed systems with Zookeeper based
-components. The provided patterns include Service Discovery and Configuration. The project
-also provides client-side load-balancing via integration with Spring Cloud LoadBalancer.
+[[quick-start]]
+= Quick Start
-:doctype: book
-:idprefix:
-:idseparator: -
-:toc: left
-:toclevels: 4
-:tabsize: 4
-:numbered:
-:sectanchors:
-:sectnums:
-:icons: font
-:hide-uri-scheme:
-:docinfo: shared,private
-
-:sc-ext: java
-:project-full-name: Spring Cloud Zookeeper
-
-== Quick Start
-
-This quick start walks through using Spring Cloud Zookeeper for Service Discovery and Distributed Configuration.
-
-First, run Zookeeper on your machine. Then you can access it and use it as a Service Registry and Configuration source with Spring Cloud Zookeeper.
-
-=== Discovery Client Usage
-
-To use these features in an application, you can build it as a Spring Boot application that depends on `spring-cloud-zookeeper-core` and `spring-cloud-zookeeper-discovery`.
-The most convenient way to add the dependency is with a Spring Boot starter: `org.springframework.cloud:spring-cloud-starter-zookeeper-discovery`.
-We recommend using dependency management and `spring-boot-starter-parent`.
-The following example shows a typical Maven configuration:
-
-[source,xml,indent=0]
-.pom.xml
-----
-
-
- org.springframework.boot
- spring-boot-starter-parent
- {spring-boot-version}
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter-zookeeper-discovery
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
-
-----
-
-The following example shows a typical Gradle setup:
-
-[source,groovy,indent=0]
-.build.gradle
-----
-plugins {
- id 'org.springframework.boot' version ${spring-boot-version}
- id 'io.spring.dependency-management' version ${spring-dependency-management-version}
- id 'java'
-}
-
-repositories {
- mavenCentral()
-}
-
-dependencies {
- implementation 'org.springframework.cloud:spring-cloud-starter-zookeeper-discovery'
- testImplementation 'org.springframework.boot:spring-boot-starter-test'
-}
-dependencyManagement {
- imports {
- mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
- }
-}
-----
-
-WARNING: Depending on the version you are using, you might need to adjust Apache Zookeeper version used in your project.
-You can read more about it in the <>.
-
-Now you can create a standard Spring Boot application, such as the following HTTP server:
-
-----
-@SpringBootApplication
-@RestController
-public class Application {
-
- @GetMapping("/")
- public String home() {
- return "Hello World!";
- }
-
- public static void main(String[] args) {
- SpringApplication.run(Application.class, args);
- }
-
-}
-----
-
-When this HTTP server runs, it connects to Zookeeper, which runs on the default local port (2181).
-To modify the startup behavior, you can change the location of Zookeeper by using `application.properties`, as shown in the following example:
-
-----
-spring:
- cloud:
- zookeeper:
- connect-string: localhost:2181
-----
-
-You can now use `DiscoveryClient`, `@LoadBalanced RestTemplate`, or `@LoadBalanced WebClient.Builder` to retrieve services and instances data from Zookeeper, as shown in the following example:
-
-[source,java,indent=0]
-----
-@Autowired
-private DiscoveryClient discoveryClient;
-
-public String serviceUrl() {
- List list = discoveryClient.getInstances("STORES");
- if (list != null && list.size() > 0 ) {
- return list.get(0).getUri().toString();
- }
- return null;
-}
-----
-
-=== Distributed Configuration Usage
-
-To use these features in an application, you can build it as a Spring Boot application that depends on `spring-cloud-zookeeper-core` and `spring-cloud-zookeeper-config`.
-The most convenient way to add the dependency is with a Spring Boot starter: `org.springframework.cloud:spring-cloud-starter-zookeeper-config`.
-We recommend using dependency management and `spring-boot-starter-parent`.
-The following example shows a typical Maven configuration:
-
-[source,xml,indent=0]
-.pom.xml
-----
-
-
- org.springframework.boot
- spring-boot-starter-parent
- {spring-boot-version}
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter-zookeeper-config
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
-
-----
-
-The following example shows a typical Gradle setup:
-
-[source,groovy,indent=0]
-.build.gradle
-----
-plugins {
- id 'org.springframework.boot' version ${spring-boot-version}
- id 'io.spring.dependency-management' version ${spring-dependency-management-version}
- id 'java'
-}
-
-repositories {
- mavenCentral()
-}
-
-dependencies {
- implementation 'org.springframework.cloud:spring-cloud-starter-zookeeper-config'
- testImplementation 'org.springframework.boot:spring-boot-starter-test'
-}
-dependencyManagement {
- imports {
- mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
- }
-}
-----
-
-WARNING: Depending on the version you are using, you might need to adjust Apache Zookeeper version used in your project.
-You can read more about it in the <>.
-
-Now you can create a standard Spring Boot application, such as the following HTTP server:
-
-----
-@SpringBootApplication
-@RestController
-public class Application {
-
- @GetMapping("/")
- public String home() {
- return "Hello World!";
- }
-
- public static void main(String[] args) {
- SpringApplication.run(Application.class, args);
- }
-
-}
-----
-
-The application retrieves configuration data from Zookeeper.
-
-WARNING: If you use Spring Cloud Zookeeper Config, you need to set the `spring.config.import` property in order to bind to Zookeeper.
-You can read more about it in the <>.
-
-== Zookeeper overview
+[[zookeeper-overview]]
+= Zookeeper overview
ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
See the
https://zookeeper.apache.org[Zookeeper site] for more information.
Spring Cloud Zookeeper also builds on the https://curator.apache.org[Apache Curator] project, which started life at Netflix.
-== Spring Cloud Zookeeper Features
+[[spring-cloud-zookeeper-features]]
+= Spring Cloud Zookeeper Features
Spring Cloud Zookeeper includes the following features:
* Spring Cloud `DiscoveryClient` implementation (supports Spring Cloud LoadBalancer)
* Zookeeper-based `PropertySource` loaded during the 'bootstrap' phase
-== Running the Sample
+[[running-the-sample]]
+= Running the Sample
. https://zookeeper.apache.org/doc/current/zookeeperStarted.html#sc_Download[Install
zookeeper] (On a mac with homebrew, use `brew install zookeeper`).
@@ -313,11 +45,13 @@ Doing so brings in the required Spring Cloud Maven repositories and Build.
. Run `java -jar spring-cloud-zookeeper-sample/target/spring-cloud-zookeeper-sample-1.2.0.BUILD-SNAPSHOT.jar --server.port=8081`
. Visit http://localhost:8080 again to verify that `{"serviceId":"testZookeeperApp","host":"","port":8081}` eventually shows up in the results in a round-robin fashion. (It may take a minute or so.)
-== Building
+[[building]]
+= Building
:jdkversion: 17
-=== Basic Compile and Test
+[[basic-compile-and-test]]
+== Basic Compile and Test
To build the source you will need to install JDK {jdkversion}.
@@ -344,31 +78,36 @@ source control.
The projects that require middleware (i.e. Redis) for testing generally
require that a local instance of [Docker](https://www.docker.com/get-started) is installed and running.
-
-=== Documentation
+[[documentation]]
+== Documentation
The spring-cloud-build module has a "docs" profile, and if you switch
-that on it will try to build asciidoc sources from
-`src/main/asciidoc`. As part of that process it will look for a
-`README.adoc` and process it by loading all the includes, but not
+that on it will try to build asciidoc sources using https://docs.antora.org/antora/latest/[Antora] from
+`modules/ROOT/`.
+
+As part of that process it will look for a
+`docs/src/main/asciidoc/README.adoc` and process it by loading all the includes, but not
parsing or rendering it, just copying it to `${main.basedir}`
-(defaults to `${basedir}`, i.e. the root of the project). If there are
+(defaults to `$\{basedir}`, i.e. the root of the project). If there are
any changes in the README it will then show up after a Maven build as
a modified file in the correct place. Just commit it and push the change.
-=== Working with the code
+[[working-with-the-code]]
+== Working with the code
If you don't have an IDE preference we would recommend that you use
https://www.springsource.com/developer/sts[Spring Tools Suite] or
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
+[[activate-the-spring-maven-profile]]
+=== 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
+[[importing-into-eclipse-with-m2eclipse]]
+=== 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
marketplace".
@@ -382,7 +121,8 @@ add the "spring" profile to your `settings.xml`. Alternatively you can
copy the repository settings from the "spring" profile of the parent
pom into your `settings.xml`.
-==== Importing into eclipse without m2eclipse
+[[importing-into-eclipse-without-m2eclipse]]
+=== Importing into eclipse without m2eclipse
If you prefer not to use m2eclipse you can generate eclipse project metadata using the
following command:
@@ -395,17 +135,20 @@ The generated eclipse projects can be imported by selecting `import existing pro
from the `file` menu.
-== Contributing
+[[contributing]]
+= Contributing
-:spring-cloud-build-branch: master
+:spring-cloud-build-branch: main
Spring Cloud is released under the non-restrictive Apache 2.0 license,
and follows a very standard Github development process, using Github
-tracker for issues and merging pull requests into master. If you want
+tracker for issues and merging pull requests into main. If you want
to contribute even something trivial please do not hesitate, but
follow the guidelines below.
-=== Sign the Contributor License Agreement
+[[sign-the-contributor-license-agreement]]
+== Sign the Contributor License Agreement
+
Before we accept a non-trivial patch or pull request we will need you to sign the
https://cla.pivotal.io/sign/spring[Contributor License Agreement].
Signing the contributor's agreement does not grant anyone commit rights to the main
@@ -413,19 +156,21 @@ repository, but it does mean that we can accept your contributions, and you will
author credit if we do. Active contributors might be asked to join the core team, and
given the ability to merge pull requests.
-=== Code of Conduct
-This project adheres to the Contributor Covenant https://github.com/spring-cloud/spring-cloud-build/blob/master/docs/src/main/asciidoc/code-of-conduct.adoc[code of
+[[code-of-conduct]]
+== Code of Conduct
+This project adheres to the Contributor Covenant https://github.com/spring-cloud/spring-cloud-build/blob/main/docs/src/main/asciidoc/code-of-conduct.adoc[code of
conduct]. By participating, you are expected to uphold this code. Please report
unacceptable behavior to spring-code-of-conduct@pivotal.io.
-=== Code Conventions and Housekeeping
+[[code-conventions-and-housekeeping]]
+== Code Conventions and Housekeeping
None of these is essential for a pull request, but they will all help. They can also be
added after the original pull request but before a merge.
* Use the Spring Framework code format conventions. If you use Eclipse
you can import formatter settings using the
`eclipse-code-formatter.xml` file from the
- https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/spring-cloud-dependencies-parent/eclipse-code-formatter.xml[Spring
+ https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/spring-cloud-dependencies-parent/eclipse-code-formatter.xml[Spring
Cloud Build] project. If using IntelliJ, you can use the
https://plugins.jetbrains.com/plugin/6546[Eclipse Code Formatter
Plugin] to import the same file.
@@ -438,13 +183,14 @@ added after the original pull request but before a merge.
than cosmetic changes).
* Add some Javadocs and, if you change the namespace, some XSD doc elements.
* A few unit tests would help a lot as well -- someone has to do it.
-* If no-one else is using your branch, please rebase it against the current master (or
+* If no-one else is using your branch, please rebase it against the current main (or
other target branch in the main project).
* When writing a commit message please follow https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html[these conventions],
if you are fixing an existing issue please add `Fixes gh-XXXX` at the end of the commit
message (where XXXX is the issue number).
-=== Checkstyle
+[[checkstyle]]
+== Checkstyle
Spring Cloud Build comes with a set of checkstyle rules. You can find them in the `spring-cloud-build-tools` module. The most notable files under the module are:
@@ -462,7 +208,8 @@ Spring Cloud Build comes with a set of checkstyle rules. You can find them in th
<2> File header setup
<3> Default suppression rules
-==== Checkstyle configuration
+[[checkstyle-configuration]]
+=== Checkstyle configuration
Checkstyle rules are *disabled by default*. To add checkstyle to your project just define the following properties and plugins.
@@ -521,16 +268,18 @@ If you need to suppress some rules (e.g. line length needs to be longer), then i
It's advisable to copy the `${spring-cloud-build.rootFolder}/.editorconfig` and `${spring-cloud-build.rootFolder}/.springformat` to your project. That way, some default formatting rules will be applied. You can do so by running this script:
```bash
-$ curl https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/.editorconfig -o .editorconfig
+$ curl https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/.editorconfig -o .editorconfig
$ touch .springformat
```
-=== IDE setup
+[[ide-setup]]
+== IDE setup
-==== Intellij IDEA
+[[intellij-idea]]
+=== Intellij IDEA
In order to setup Intellij you should import our coding conventions, inspection profiles and set up the checkstyle plugin.
-The following files can be found in the https://github.com/spring-cloud/spring-cloud-build/tree/master/spring-cloud-build-tools[Spring Cloud Build] project.
+The following files can be found in the https://github.com/spring-cloud/spring-cloud-build/tree/main/spring-cloud-build-tools[Spring Cloud Build] project.
.spring-cloud-build-tools/
----
@@ -553,13 +302,13 @@ The following files can be found in the https://github.com/spring-cloud/spring-c
.Code style
-image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/{spring-cloud-build-branch}/docs/src/main/asciidoc/images/intellij-code-style.png[Code style]
+image::intellij-code-style.png[Code style]
Go to `File` -> `Settings` -> `Editor` -> `Code style`. There click on the icon next to the `Scheme` section. There, click on the `Import Scheme` value and pick the `Intellij IDEA code style XML` option. Import the `spring-cloud-build-tools/src/main/resources/intellij/Intellij_Spring_Boot_Java_Conventions.xml` file.
.Inspection profiles
-image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/{spring-cloud-build-branch}/docs/src/main/asciidoc/images/intellij-inspections.png[Code style]
+image::intellij-inspections.png[Code style]
Go to `File` -> `Settings` -> `Editor` -> `Inspections`. There click on the icon next to the `Profile` section. There, click on the `Import Profile` and import the `spring-cloud-build-tools/src/main/resources/intellij/Intellij_Project_Defaults.xml` file.
@@ -567,21 +316,23 @@ Go to `File` -> `Settings` -> `Editor` -> `Inspections`. There click on the icon
To have Intellij work with Checkstyle, you have to install the `Checkstyle` plugin. It's advisable to also install the `Assertions2Assertj` to automatically convert the JUnit assertions
-image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/{spring-cloud-build-branch}/docs/src/main/asciidoc/images/intellij-checkstyle.png[Checkstyle]
+image::intellij-checkstyle.png[Checkstyle]
-Go to `File` -> `Settings` -> `Other settings` -> `Checkstyle`. There click on the `+` icon in the `Configuration file` section. There, you'll have to define where the checkstyle rules should be picked from. In the image above, we've picked the rules from the cloned Spring Cloud Build repository. However, you can point to the Spring Cloud Build's GitHub repository (e.g. for the `checkstyle.xml` : `https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/spring-cloud-build-tools/src/main/resources/checkstyle.xml`). We need to provide the following variables:
+Go to `File` -> `Settings` -> `Other settings` -> `Checkstyle`. There click on the `+` icon in the `Configuration file` section. There, you'll have to define where the checkstyle rules should be picked from. In the image above, we've picked the rules from the cloned Spring Cloud Build repository. However, you can point to the Spring Cloud Build's GitHub repository (e.g. for the `checkstyle.xml` : `https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/spring-cloud-build-tools/src/main/resources/checkstyle.xml`). We need to provide the following variables:
-- `checkstyle.header.file` - please point it to the Spring Cloud Build's, `spring-cloud-build-tools/src/main/resources/checkstyle-header.txt` file either in your cloned repo or via the `https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/spring-cloud-build-tools/src/main/resources/checkstyle-header.txt` URL.
-- `checkstyle.suppressions.file` - default suppressions. Please point it to the Spring Cloud Build's, `spring-cloud-build-tools/src/checkstyle/checkstyle-suppressions.xml` file either in your cloned repo or via the `https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/spring-cloud-build-tools/src/checkstyle/checkstyle-suppressions.xml` URL.
+- `checkstyle.header.file` - please point it to the Spring Cloud Build's, `spring-cloud-build-tools/src/main/resources/checkstyle-header.txt` file either in your cloned repo or via the `https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/spring-cloud-build-tools/src/main/resources/checkstyle-header.txt` URL.
+- `checkstyle.suppressions.file` - default suppressions. Please point it to the Spring Cloud Build's, `spring-cloud-build-tools/src/checkstyle/checkstyle-suppressions.xml` file either in your cloned repo or via the `https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/spring-cloud-build-tools/src/checkstyle/checkstyle-suppressions.xml` URL.
- `checkstyle.additional.suppressions.file` - this variable corresponds to suppressions in your local project. E.g. you're working on `spring-cloud-contract`. Then point to the `project-root/src/checkstyle/checkstyle-suppressions.xml` folder. Example for `spring-cloud-contract` would be: `/home/username/spring-cloud-contract/src/checkstyle/checkstyle-suppressions.xml`.
IMPORTANT: Remember to set the `Scan Scope` to `All sources` since we apply checkstyle rules for production and test sources.
-=== Duplicate Finder
+[[duplicate-finder]]
+== Duplicate Finder
Spring Cloud Build brings along the `basepom:duplicate-finder-maven-plugin`, that enables flagging duplicate and conflicting classes and resources on the java classpath.
-==== Duplicate Finder configuration
+[[duplicate-finder-configuration]]
+=== Duplicate Finder configuration
Duplicate finder is *enabled by default* and will run in the `verify` phase of your Maven build, but it will only take effect in your project if you add the `duplicate-finder-maven-plugin` to the `build` section of the projecst's `pom.xml`.
diff --git a/docs/antora-playbook.yml b/docs/antora-playbook.yml
index 9a70e676..45fde273 100644
--- a/docs/antora-playbook.yml
+++ b/docs/antora-playbook.yml
@@ -6,15 +6,10 @@ antora:
- '@antora/collector-extension'
- '@antora/atlas-extension'
- require: '@springio/antora-extensions/root-component-extension'
- root_component_name: 'PROJECT_WITHOUT_SPRING'
- # FIXME: Run antora once using this extension to migrate to the Asciidoc Tabs syntax
- # and then remove this extension
- - require: '@springio/antora-extensions/tabs-migration-extension'
- unwrap_example_block: always
- save_result: true
+ root_component_name: 'cloud-zookeeper'
site:
- title: PROJECT_FULL_NAME
- url: https://docs.spring.io/PROJECT_NAME/reference/
+ title: Spring Cloud Zookeeper
+ url: https://docs.spring.io/spring-cloud-zookeeper/reference/
content:
sources:
- url: ./..
diff --git a/docs/antora.yml b/docs/antora.yml
index 15b346da..928048fb 100644
--- a/docs/antora.yml
+++ b/docs/antora.yml
@@ -1,6 +1,6 @@
-name: PROJECT_WITHOUT_SPRING
+name: cloud-zookeeper
version: true
-title: PROJECT_NAME
+title: spring-cloud-zookeeper
nav:
- modules/ROOT/nav.adoc
ext:
diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
index eb712b7d..11533cba 100644
--- a/docs/modules/ROOT/nav.adoc
+++ b/docs/modules/ROOT/nav.adoc
@@ -1,18 +1,10 @@
* xref:index.adoc[]
-* xref:spring-cloud-zookeeper.adoc[]
-** xref:spring-cloud-zookeeper/quick-start.adoc[]
-** xref:spring-cloud-zookeeper/install.adoc[]
-** xref:spring-cloud-zookeeper/discovery.adoc[]
-** xref:spring-cloud-zookeeper/other-componentes.adoc[]
-** xref:spring-cloud-zookeeper/service-registry.adoc[]
-** xref:spring-cloud-zookeeper/dependencies.adoc[]
-** xref:spring-cloud-zookeeper/dependency-watcher.adoc[]
-** xref:spring-cloud-zookeeper/config.adoc[]
-* xref:intro.adoc[]
-* xref:_attributes.adoc[]
* xref:quickstart.adoc[]
-* xref:README.adoc[]
-* xref:_configprops.adoc[]
+* xref:install.adoc[]
+* xref:discovery.adoc[]
+* xref:other-componentes.adoc[]
+* xref:service-registry.adoc[]
+* xref:dependencies.adoc[]
+* xref:dependency-watcher.adoc[]
+* xref:config.adoc[]
* xref:appendix.adoc[]
-* xref:sagan-boot.adoc[]
-* xref:sagan-index.adoc[]
diff --git a/docs/modules/ROOT/pages/appendix.adoc b/docs/modules/ROOT/pages/appendix.adoc
index eef1c905..484ecf75 100644
--- a/docs/modules/ROOT/pages/appendix.adoc
+++ b/docs/modules/ROOT/pages/appendix.adoc
@@ -6,8 +6,9 @@
Various properties can be specified inside your `application.properties` file, inside your `application.yml` file, or as command line switches.
-This appendix provides a list of common {project-full-name} properties and references to the underlying classes that consume them.
+This appendix provides a list of common Spring Cloud Zookeeper properties and references to the underlying classes that consume them.
NOTE: Property contributions can come from additional jar files on your classpath, so you should not consider this an exhaustive list.
Also, you can define your own properties.
+include::partial$_configprops.adoc[]
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/config.adoc b/docs/modules/ROOT/pages/config.adoc
similarity index 95%
rename from docs/modules/ROOT/pages/spring-cloud-zookeeper/config.adoc
rename to docs/modules/ROOT/pages/config.adoc
index a4f5b4a4..feeb8153 100644
--- a/docs/modules/ROOT/pages/spring-cloud-zookeeper/config.adoc
+++ b/docs/modules/ROOT/pages/config.adoc
@@ -35,7 +35,7 @@ Including a dependency on
autoconfiguration that sets up Spring Cloud Zookeeper Config.
CAUTION: When working with version 3.4 of Zookeeper you need to change
-the way you include the dependency as described xref:spring-cloud-zookeeper/install.adoc[here].
+the way you include the dependency as described xref:install.adoc[here].
[[config-data-import]]
== Spring Boot Config Data Import
@@ -111,7 +111,7 @@ public class CustomCuratorFrameworkConfig {
}
----
Consult
-https://github.com/spring-cloud/spring-cloud-zookeeper/blob/master/spring-cloud-zookeeper-core/src/main/java/org/springframework/cloud/zookeeper/ZookeeperAutoConfiguration.java[the ZookeeperAutoConfiguration class]
+https://github.com/spring-cloud/spring-cloud-zookeeper/blob/main/spring-cloud-zookeeper-core/src/main/java/org/springframework/cloud/zookeeper/ZookeeperAutoConfiguration.java[the ZookeeperAutoConfiguration class]
to see how the `CuratorFramework` bean's default configuration.
Alternatively, you can add your credentials from a class that depends on the existing
diff --git a/docs/modules/ROOT/pages/configprops.adoc b/docs/modules/ROOT/pages/configprops.adoc
new file mode 100644
index 00000000..32cbb8e5
--- /dev/null
+++ b/docs/modules/ROOT/pages/configprops.adoc
@@ -0,0 +1,6 @@
+[[configuration-properties]]
+= Configuration Properties
+
+Below you can find a list of configuration properties.
+
+include::partial$_configprops.adoc[]
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/dependencies.adoc b/docs/modules/ROOT/pages/dependencies.adoc
similarity index 86%
rename from docs/modules/ROOT/pages/spring-cloud-zookeeper/dependencies.adoc
rename to docs/modules/ROOT/pages/dependencies.adoc
index 9c6606b6..17f477c5 100644
--- a/docs/modules/ROOT/pages/spring-cloud-zookeeper/dependencies.adoc
+++ b/docs/modules/ROOT/pages/dependencies.adoc
@@ -3,10 +3,10 @@
The following topics cover how to work with Spring Cloud Zookeeper dependencies:
-* xref:spring-cloud-zookeeper/dependencies.adoc#spring-cloud-zookeeper-dependencies-using[Using the Zookeeper Dependencies]
-* xref:spring-cloud-zookeeper/dependencies.adoc#spring-cloud-zookeeper-dependencies-activating[Activating Zookeeper Dependencies]
-* xref:spring-cloud-zookeeper/dependencies.adoc#spring-cloud-zookeeper-dependencies-setting-up[Setting up Zookeeper Dependencies]
-* xref:spring-cloud-zookeeper/dependencies.adoc#spring-cloud-zookeeper-dependencies-configuring[Configuring Spring Cloud Zookeeper Dependencies]
+* xref:dependencies.adoc#spring-cloud-zookeeper-dependencies-using[Using the Zookeeper Dependencies]
+* xref:dependencies.adoc#spring-cloud-zookeeper-dependencies-activating[Activating Zookeeper Dependencies]
+* xref:dependencies.adoc#spring-cloud-zookeeper-dependencies-setting-up[Setting up Zookeeper Dependencies]
+* xref:dependencies.adoc#spring-cloud-zookeeper-dependencies-configuring[Configuring Spring Cloud Zookeeper Dependencies]
[[spring-cloud-zookeeper-dependencies-using]]
== Using the Zookeeper Dependencies
@@ -14,11 +14,8 @@ The following topics cover how to work with Spring Cloud Zookeeper dependencies:
Spring Cloud Zookeeper gives you a possibility to provide dependencies of your application
as properties. As dependencies, you can understand other applications that are registered
in Zookeeper and which you would like to call through
-https://github.com/spring-cloud/spring-cloud-netflix/blob/master/docs/src/main/asciidoc/spring-cloud-netflix.adoc#spring-cloud-feign[Feign]
-(a REST client builder),
-https://github.com/spring-cloud/spring-cloud-netflix/blob/master/docs/src/main/ascii[Spring
-`RestTemplate`] and
-https://cloud.spring.io/spring-cloud-commons/reference/html/#loadbalanced-webclient[Spring WebFlux].
+https://docs.spring.io/spring-cloud-openfeign/docs/current/reference/html/[OpenFeign]
+(a REST client builder), `RestTemplate` and `WebClient` via https://docs.spring.io/spring-cloud-commons/reference/spring-cloud-commons/loadbalancer.html#spring-cloud-loadbalancer-integrations[Spring Cloud Loadbalancer].
You can also use the Zookeeper Dependency Watchers functionality to control and monitor
the state of your dependencies.
@@ -92,7 +89,7 @@ public interface NewsletterService {
The path is represented by the `path` YAML property and is the path under which the dependency is registered under Zookeeper.
As described in the
-xref:spring-cloud-zookeeper/dependencies.adoc#spring-cloud-zookeeper-dependencies-setting-up-aliases[previous section], Spring Cloud LoadBalancer operates on URLs.
+xref:dependencies.adoc#spring-cloud-zookeeper-dependencies-setting-up-aliases[previous section], Spring Cloud LoadBalancer operates on URLs.
As a result, this path is not compliant with its requirement.
That is why Spring Cloud Zookeeper maps the alias to the proper path.
@@ -172,7 +169,7 @@ exception, and the Spring Context fails to set up. In other words, your applicat
start if the required dependency is not registered in Zookeeper.
You can read more about Spring Cloud Zookeeper Presence Checker
-xref:spring-cloud-zookeeper/dependency-watcher.adoc#spring-cloud-zookeeper-dependency-watcher-presence-checker[later in this document].
+xref:dependency-watcher.adoc#spring-cloud-zookeeper-dependency-watcher-presence-checker[later in this document].
[[stubs]]
=== Stubs
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/dependency-watcher.adoc b/docs/modules/ROOT/pages/dependency-watcher.adoc
similarity index 100%
rename from docs/modules/ROOT/pages/spring-cloud-zookeeper/dependency-watcher.adoc
rename to docs/modules/ROOT/pages/dependency-watcher.adoc
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/discovery.adoc b/docs/modules/ROOT/pages/discovery.adoc
similarity index 82%
rename from docs/modules/ROOT/pages/spring-cloud-zookeeper/discovery.adoc
rename to docs/modules/ROOT/pages/discovery.adoc
index 47d3a51b..65290a89 100644
--- a/docs/modules/ROOT/pages/spring-cloud-zookeeper/discovery.adoc
+++ b/docs/modules/ROOT/pages/discovery.adoc
@@ -19,7 +19,7 @@ NOTE: For web functionality, you still need to include
`org.springframework.boot:spring-boot-starter-web`.
CAUTION: When working with version 3.4 of Zookeeper you need to change
-the way you include the dependency as described xref:spring-cloud-zookeeper/install.adoc[here].
+the way you include the dependency as described xref:install.adoc[here].
[[registering-with-zookeeper]]
== Registering with Zookeeper
@@ -61,7 +61,7 @@ spring:
connect-string: localhost:2181
----
-CAUTION: If you use xref:spring-cloud-zookeeper/config.adoc[Spring Cloud Zookeeper Config], the
+CAUTION: If you use xref:config.adoc[Spring Cloud Zookeeper Config], the
values shown in the preceding example need to be in `bootstrap.yml` instead of
`application.yml`.
@@ -79,11 +79,8 @@ If you would like to disable the Zookeeper Discovery Client, you can set
== Using the DiscoveryClient
Spring Cloud has support for
-https://github.com/spring-cloud/spring-cloud-netflix/blob/master/docs/src/main/asciidoc/spring-cloud-netflix.adoc#spring-cloud-feign[Feign]
-(a REST client builder),
-https://github.com/spring-cloud/spring-cloud-netflix/blob/master/docs/src/main/ascii[Spring
-`RestTemplate`] and
-https://cloud.spring.io/spring-cloud-commons/reference/html/#loadbalanced-webclient[Spring WebFlux], using logical service names instead of physical URLs.
+https://docs.spring.io/spring-cloud-openfeign/docs/current/reference/html/[OpenFeign]
+(a REST client builder), `RestTemplate` and `WebClient` via https://docs.spring.io/spring-cloud-commons/reference/spring-cloud-commons/loadbalancer.html#spring-cloud-loadbalancer-integrations[Spring Cloud Loadbalancer], using logical service names instead of physical URLs.
You can also use the `org.springframework.cloud.client.discovery.DiscoveryClient`, which
provides a simple API for discovery clients that is not specific to Netflix, as shown in
diff --git a/docs/modules/ROOT/pages/index.adoc b/docs/modules/ROOT/pages/index.adoc
index e69de29b..58168dfb 100755
--- a/docs/modules/ROOT/pages/index.adoc
+++ b/docs/modules/ROOT/pages/index.adoc
@@ -0,0 +1 @@
+include::intro.adoc[]
\ No newline at end of file
diff --git a/docs/modules/ROOT/pages/install.adoc b/docs/modules/ROOT/pages/install.adoc
new file mode 100644
index 00000000..46f84243
--- /dev/null
+++ b/docs/modules/ROOT/pages/install.adoc
@@ -0,0 +1,8 @@
+[[spring-cloud-zookeeper-install]]
+= Working with Zookeeper
+
+See the https://zookeeper.apache.org/doc/current/zookeeperStarted.html[installation
+documentation] for instructions on how to install Zookeeper.
+
+// TODO: describe Testcontainers and zk
+
diff --git a/docs/modules/ROOT/pages/intro.adoc b/docs/modules/ROOT/pages/intro.adoc
index b6e6b4c4..7fce78a9 100644
--- a/docs/modules/ROOT/pages/intro.adoc
+++ b/docs/modules/ROOT/pages/intro.adoc
@@ -1,4 +1,5 @@
-
+[[spring-cloud-gateway-intro]]
+= Introduction
This project provides Zookeeper integrations for Spring Boot applications through
autoconfiguration and binding to the Spring Environment and other Spring programming model
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/other-componentes.adoc b/docs/modules/ROOT/pages/other-componentes.adoc
similarity index 100%
rename from docs/modules/ROOT/pages/spring-cloud-zookeeper/other-componentes.adoc
rename to docs/modules/ROOT/pages/other-componentes.adoc
diff --git a/docs/modules/ROOT/pages/quickstart.adoc b/docs/modules/ROOT/pages/quickstart.adoc
index 0ae4f4c9..a36b6cf3 100644
--- a/docs/modules/ROOT/pages/quickstart.adoc
+++ b/docs/modules/ROOT/pages/quickstart.adoc
@@ -1,9 +1,12 @@
+[[quick-start]]
+= Quick Start
+
This quick start walks through using Spring Cloud Zookeeper for Service Discovery and Distributed Configuration.
First, run Zookeeper on your machine. Then you can access it and use it as a Service Registry and Configuration source with Spring Cloud Zookeeper.
[[discovery-client-usage]]
-= Discovery Client Usage
+== Discovery Client Usage
To use these features in an application, you can build it as a Spring Boot application that depends on `spring-cloud-zookeeper-core` and `spring-cloud-zookeeper-discovery`.
The most convenient way to add the dependency is with a Spring Boot starter: `org.springframework.cloud:spring-cloud-starter-zookeeper-discovery`.
@@ -81,7 +84,7 @@ dependencyManagement {
----
WARNING: Depending on the version you are using, you might need to adjust Apache Zookeeper version used in your project.
-You can read more about it in the xref:spring-cloud-zookeeper/install.adoc[Install Zookeeper section].
+You can read more about it in the xref:install.adoc[Install Zookeeper section].
Now you can create a standard Spring Boot application, such as the following HTTP server:
@@ -129,7 +132,7 @@ public String serviceUrl() {
----
[[distributed-configuration-usage]]
-= Distributed Configuration Usage
+== Distributed Configuration Usage
To use these features in an application, you can build it as a Spring Boot application that depends on `spring-cloud-zookeeper-core` and `spring-cloud-zookeeper-config`.
The most convenient way to add the dependency is with a Spring Boot starter: `org.springframework.cloud:spring-cloud-starter-zookeeper-config`.
@@ -207,7 +210,7 @@ dependencyManagement {
----
WARNING: Depending on the version you are using, you might need to adjust Apache Zookeeper version used in your project.
-You can read more about it in the xref:spring-cloud-zookeeper/install.adoc[Install Zookeeper section].
+You can read more about it in the xref:install.adoc[Install Zookeeper section].
Now you can create a standard Spring Boot application, such as the following HTTP server:
@@ -231,4 +234,4 @@ public class Application {
The application retrieves configuration data from Zookeeper.
WARNING: If you use Spring Cloud Zookeeper Config, you need to set the `spring.config.import` property in order to bind to Zookeeper.
-You can read more about it in the xref:spring-cloud-zookeeper/config.adoc#config-data-import[Spring Boot Config Data Import section].
+You can read more about it in the xref:config.adoc#config-data-import[Spring Boot Config Data Import section].
diff --git a/docs/modules/ROOT/pages/sagan-boot.adoc b/docs/modules/ROOT/pages/sagan-boot.adoc
deleted file mode 100644
index 8b137891..00000000
--- a/docs/modules/ROOT/pages/sagan-boot.adoc
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/docs/modules/ROOT/pages/sagan-index.adoc b/docs/modules/ROOT/pages/sagan-index.adoc
deleted file mode 100644
index 1da6a888..00000000
--- a/docs/modules/ROOT/pages/sagan-index.adoc
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-Spring Cloud Zookeeper provides http://zookeeper.apache.org/[Apache Zookeeper] integrations for Spring Boot apps through autoconfiguration and binding to the Spring Environment and other Spring programming model idioms. With a few simple annotations you can quickly enable and configure the common patterns inside your application and build large distributed systems with Zookeeper. The patterns provided include Service Discovery and Distributed Configuration.
-
-## Features
-
-* Service Discovery: instances can be registered with Zookeeper and clients can discover the instances using Spring-managed beans
- * Supports Spring Cloud LoadBalancer - client-side load-balancing solution
- * Supports Spring Cloud OpenFeign
-* Distributed Configuration: using Zookeeper as a data store
-
-## Quick Start
-
-As long as Spring Cloud Zookeeper, http://curator.apache.org/[Apache Curator] and the Zookeeper Java Client are on the
-classpath any Spring Boot application with `@EnableDiscoveryClient` will try to contact a Zookeeper
-agent on `localhost:2181` (the default value of
-`zookeeper.connectString`).
-
-```java
-@Configuration
-@EnableAutoConfiguration
-@EnableDiscoveryClient
-@RestController
-public class Application {
-
- @RequestMapping("/")
- public String home() {
- return "Hello World";
- }
-
- public static void main(String[] args) {
- SpringApplication.run(Application.class, args);
- }
-
-}
-```
-
-A local Zookeeper server must be running. See the http://zookeeper.apache.org/[Zookeeper documentation] on how to run a Zookeeper server.
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/service-registry.adoc b/docs/modules/ROOT/pages/service-registry.adoc
similarity index 100%
rename from docs/modules/ROOT/pages/spring-cloud-zookeeper/service-registry.adoc
rename to docs/modules/ROOT/pages/service-registry.adoc
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper.adoc b/docs/modules/ROOT/pages/spring-cloud-zookeeper.adoc
deleted file mode 100644
index 7ebf8baf..00000000
--- a/docs/modules/ROOT/pages/spring-cloud-zookeeper.adoc
+++ /dev/null
@@ -1,7 +0,0 @@
-
-[[spring-cloud-zookeeper]]
-= Spring Cloud Zookeeper
-:page-section-summary-toc: 1
-
-
-
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/install.adoc b/docs/modules/ROOT/pages/spring-cloud-zookeeper/install.adoc
deleted file mode 100644
index d34003d7..00000000
--- a/docs/modules/ROOT/pages/spring-cloud-zookeeper/install.adoc
+++ /dev/null
@@ -1,54 +0,0 @@
-[[spring-cloud-zookeeper-install]]
-= Install Zookeeper
-
-See the https://zookeeper.apache.org/doc/current/zookeeperStarted.html[installation
-documentation] for instructions on how to install Zookeeper.
-
-Spring Cloud Zookeeper uses Apache Curator behind the scenes.
-While Zookeeper 3.5.x is still considered "beta" by the Zookeeper development team,
-the reality is that it is used in production by many users.
-However, Zookeeper 3.4.x is also used in production.
-Prior to Apache Curator 4.0, both versions of Zookeeper were supported via two versions of Apache Curator.
-Starting with Curator 4.0 both versions of Zookeeper are supported via the same Curator libraries.
-
-In case you are integrating with version 3.4 you need to change the Zookeeper dependency
-that comes shipped with `curator`, and thus `spring-cloud-zookeeper`.
-To do so simply exclude that dependency and add the 3.4.x version like shown below.
-
-.maven
-[source,xml,indent=0]
-----
-
- org.springframework.cloud
- spring-cloud-starter-zookeeper-all
-
-
- org.apache.zookeeper
- zookeeper
-
-
-
-
- org.apache.zookeeper
- zookeeper
- 3.4.12
-
-
- org.slf4j
- slf4j-log4j12
-
-
-
-----
-
-.gradle
-[source,groovy,indent=0]
-----
-compile('org.springframework.cloud:spring-cloud-starter-zookeeper-all') {
- exclude group: 'org.apache.zookeeper', module: 'zookeeper'
-}
-compile('org.apache.zookeeper:zookeeper:3.4.12') {
- exclude group: 'org.slf4j', module: 'slf4j-log4j12'
-}
-----
-
diff --git a/docs/modules/ROOT/pages/spring-cloud-zookeeper/quick-start.adoc b/docs/modules/ROOT/pages/spring-cloud-zookeeper/quick-start.adoc
deleted file mode 100644
index 59e05139..00000000
--- a/docs/modules/ROOT/pages/spring-cloud-zookeeper/quick-start.adoc
+++ /dev/null
@@ -1,6 +0,0 @@
-[[quick-start]]
-= Quick Start
-:page-section-summary-toc: 1
-
-include:../:quickstart.adoc[]
-
diff --git a/docs/modules/ROOT/pages/_configprops.adoc b/docs/modules/ROOT/partials/_configprops.adoc
similarity index 99%
rename from docs/modules/ROOT/pages/_configprops.adoc
rename to docs/modules/ROOT/partials/_configprops.adoc
index 451fd245..4559fbc9 100644
--- a/docs/modules/ROOT/pages/_configprops.adoc
+++ b/docs/modules/ROOT/partials/_configprops.adoc
@@ -32,4 +32,4 @@
|spring.cloud.zookeeper.prefix | | Common prefix that will be applied to all Zookeeper dependencies' paths.
|spring.cloud.zookeeper.session-timeout | | The configured/negotiated session timeout in milliseconds. Please refer to Curator's Tech Note 14 to understand how Curator implements connection sessions. @see Curator's Tech Note 14
-|===
+|===
\ No newline at end of file
diff --git a/docs/pom.xml b/docs/pom.xml
index ebceb186..4fbed91e 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -1,25 +1,30 @@
-
4.0.0
org.springframework.cloud
spring-cloud-zookeeper
4.1.0-SNAPSHOT
+ ..
spring-cloud-zookeeper-docs
jar
Spring Cloud Zookeeper Docs
- Spring Cloud Docs
+ Spring Cloud Zookeeper Docs
spring-cloud-zookeeper
${basedir}/..
- spring.cloud.zookeeper.*|
-
- deploy
+ spring.cloud.zookeeper.*
none
+
+
+ 1.0.2
+ ${maven.multiModuleProjectDirectory}/
+ .*
+ ${maven.multiModuleProjectDirectory}/docs/modules/ROOT/partials/
@@ -34,26 +39,35 @@
docs
+
+
+ src/main/antora/resources/antora-resources
+ true
+
+
pl.project13.maven
git-commit-id-plugin
+ org.apache.maven.plugins
maven-dependency-plugin
-
- maven-resources-plugin
-
org.codehaus.mojo
exec-maven-plugin
- org.asciidoctor
- asciidoctor-maven-plugin
+ io.spring.maven.antora
+ antora-component-version-maven-plugin
+ io.spring.maven.antora
+ antora-maven-plugin
+
+
+ org.apache.maven.plugins
maven-antrun-plugin
diff --git a/docs/src/main/antora/resources/antora-resources/antora.yml b/docs/src/main/antora/resources/antora-resources/antora.yml
new file mode 100644
index 00000000..9148923f
--- /dev/null
+++ b/docs/src/main/antora/resources/antora-resources/antora.yml
@@ -0,0 +1,20 @@
+version: @antora-component.version@
+prerelease: @antora-component.prerelease@
+
+asciidoc:
+ attributes:
+ attribute-missing: 'warn'
+ chomp: 'all'
+ project-root: @maven.multiModuleProjectDirectory@
+ github-repo: @docs.main@
+ github-raw: https://raw.githubusercontent.com/spring-cloud/@docs.main@/@github-tag@
+ github-code: https://github.com/spring-cloud/@docs.main@/tree/@github-tag@
+ github-issues: https://github.com/spring-cloud/@docs.main@/issues/
+ github-wiki: https://github.com/spring-cloud/@docs.main@/wiki
+ spring-cloud-version: @project.version@
+ github-tag: @github-tag@
+ version-type: @version-type@
+ docs-url: https://docs.spring.io/@docs.main@/docs/@project.version@
+ raw-docs-url: https://raw.githubusercontent.com/spring-cloud/@docs.main@/@github-tag@
+ project-version: @project.version@
+ project-name: @docs.main@
diff --git a/docs/modules/ROOT/pages/README.adoc b/docs/src/main/asciidoc/README.adoc
similarity index 86%
rename from docs/modules/ROOT/pages/README.adoc
rename to docs/src/main/asciidoc/README.adoc
index bc52c72b..aac2ac4c 100644
--- a/docs/modules/ROOT/pages/README.adoc
+++ b/docs/src/main/asciidoc/README.adoc
@@ -1,4 +1,4 @@
-image::https://travis-ci.org/spring-cloud/spring-cloud-zookeeper.svg?branch=master[Build Status, link=https://travis-ci.org/spring-cloud/spring-cloud-zookeeper]
+image::https://github.com/spring-cloud/spring-cloud-zookeeper/workflows/Build/badge.svg?style=svg["Actions Status", link="https://github.com/spring-cloud/spring-cloud-zookeeper/actions"]
@@ -41,9 +41,9 @@ Doing so brings in the required Spring Cloud Maven repositories and Build.
[[building]]
= Building
-include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/building.adoc[]
+include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/docs/modules/ROOT/partials/building.adoc[]
[[contributing]]
= Contributing
-include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/docs/src/main/asciidoc/contributing.adoc[]
+include::https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/main/docs/modules/ROOT/partials/contributing.adoc[]