diff --git a/binders/kafka-binder/docs/.jdk8 b/binders/kafka-binder/docs/.jdk8 deleted file mode 100644 index e69de29bb..000000000 diff --git a/binders/kafka-binder/docs/pom.xml b/binders/kafka-binder/docs/pom.xml deleted file mode 100644 index 982dd4bb7..000000000 --- a/binders/kafka-binder/docs/pom.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - 4.0.0 - spring-cloud-stream-binder-kafka-docs - - org.springframework.cloud - spring-cloud-stream-binder-kafka-parent - 3.2.3-SNAPSHOT - - jar - spring-cloud-stream-binder-kafka-docs - Spring Cloud Stream Kafka Binder Docs - - spring-cloud-stream-binder-kafka - ${basedir}/.. - 3.4 - .*stream.* - deploy - - - - ${project.groupId} - spring-cloud-starter-stream-kafka - ${project.version} - - - - src/main/asciidoc - - - - docs - - - - pl.project13.maven - git-commit-id-plugin - - - maven-dependency-plugin - - - maven-resources-plugin - - - org.codehaus.mojo - exec-maven-plugin - - - org.asciidoctor - asciidoctor-maven-plugin - - - maven-antrun-plugin - - - maven-deploy-plugin - - - - - - diff --git a/binders/kafka-binder/docs/src/main/asciidoc/.gitignore b/binders/kafka-binder/docs/src/main/asciidoc/.gitignore deleted file mode 100644 index bbc341117..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.html -*.css diff --git a/binders/kafka-binder/docs/src/main/asciidoc/Guardfile b/binders/kafka-binder/docs/src/main/asciidoc/Guardfile deleted file mode 100644 index bdd4d7298..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/Guardfile +++ /dev/null @@ -1,20 +0,0 @@ -require 'asciidoctor' -require 'erb' - -guard 'shell' do - watch(/.*\.adoc$/) {|m| - Asciidoctor.render_file('index.adoc', \ - :in_place => true, \ - :safe => Asciidoctor::SafeMode::UNSAFE, \ - :attributes=> { \ - 'source-highlighter' => 'prettify', \ - 'icons' => 'font', \ - 'linkcss'=> 'true', \ - 'copycss' => 'true', \ - 'doctype' => 'book'}) - } -end - -guard 'livereload' do - watch(%r{^.+\.(css|js|html)$}) -end diff --git a/binders/kafka-binder/docs/src/main/asciidoc/_configprops.adoc b/binders/kafka-binder/docs/src/main/asciidoc/_configprops.adoc deleted file mode 100644 index 247d8f56d..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/_configprops.adoc +++ /dev/null @@ -1,64 +0,0 @@ -|=== -|Name | Default | Description - -|spring.cloud.stream.binders | | Additional per-binder properties (see {@link BinderProperties}) if more then one binder of the same type is used (i.e., connect to multiple instances of RabbitMq). Here you can specify multiple binder configurations, each with different environment settings. For example; spring.cloud.stream.binders.rabbit1.environment. . . , spring.cloud.stream.binders.rabbit2.environment. . . -|spring.cloud.stream.binding-retry-interval | `30` | Retry interval (in seconds) used to schedule binding attempts. Default: 30 sec. -|spring.cloud.stream.bindings | | Additional binding properties (see {@link BinderProperties}) per binding name (e.g., 'input`). For example; This sets the content-type for the 'input' binding of a Sink application: 'spring.cloud.stream.bindings.input.contentType=text/plain' -|spring.cloud.stream.default-binder | | The name of the binder to use by all bindings in the event multiple binders available (e.g., 'rabbit'). -|spring.cloud.stream.dynamic-destination-cache-size | `10` | The maximum size of Least Recently Used (LRU) cache of dynamic destinations. Once this size is reached, new destinations will trigger the removal of old destinations. Default: 10 -|spring.cloud.stream.dynamic-destinations | `[]` | A list of destinations that can be bound dynamically. If set, only listed destinations can be bound. -|spring.cloud.stream.function.batch-mode | `false` | -|spring.cloud.stream.function.bindings | | -|spring.cloud.stream.input-bindings | | A semi-colon delimited string to explicitly define input bindings (specifically for cases when there is no implicit trigger to create such bindings such as Function, Supplier or Consumer). -|spring.cloud.stream.instance-count | `1` | The number of deployed instances of an application. Default: 1. NOTE: Could also be managed per individual binding "spring.cloud.stream.bindings.foo.consumer.instance-count" where 'foo' is the name of the binding. -|spring.cloud.stream.instance-index | `0` | The instance id of the application: a number from 0 to instanceCount-1. Used for partitioning and with Kafka. NOTE: Could also be managed per individual binding "spring.cloud.stream.bindings.foo.consumer.instance-index" where 'foo' is the name of the binding. -|spring.cloud.stream.instance-index-list | | A list of instance id's from 0 to instanceCount-1. Used for partitioning and with Kafka. NOTE: Could also be managed per individual binding "spring.cloud.stream.bindings.foo.consumer.instance-index-list" where 'foo' is the name of the binding. This setting will override the one set in 'spring.cloud.stream.instance-index' -|spring.cloud.stream.integration.message-handler-not-propagated-headers | | Message header names that will NOT be copied from the inbound message. -|spring.cloud.stream.kafka.binder.authorization-exception-retry-interval | | Time between retries after AuthorizationException is caught in the ListenerContainer; defalt is null which disables retries. For more info see: {@link org.springframework.kafka.listener.ConsumerProperties#setAuthorizationExceptionRetryInterval(java.time.Duration)} -|spring.cloud.stream.kafka.binder.auto-add-partitions | `false` | -|spring.cloud.stream.kafka.binder.auto-alter-topics | `false` | -|spring.cloud.stream.kafka.binder.auto-create-topics | `true` | -|spring.cloud.stream.kafka.binder.brokers | `[localhost]` | -|spring.cloud.stream.kafka.binder.certificate-store-directory | | When a certificate store location is given as classpath URL (classpath:), then the binder moves the resource from the classpath location inside the JAR to a location on the filesystem. If this value is set, then this location is used, otherwise, the certificate file is copied to the directory returned by java.io.tmpdir. -|spring.cloud.stream.kafka.binder.configuration | | Arbitrary kafka properties that apply to both producers and consumers. -|spring.cloud.stream.kafka.binder.consider-down-when-any-partition-has-no-leader | `false` | -|spring.cloud.stream.kafka.binder.consumer-properties | | Arbitrary kafka consumer properties. -|spring.cloud.stream.kafka.binder.header-mapper-bean-name | | The bean name of a custom header mapper to use instead of a {@link org.springframework.kafka.support.DefaultKafkaHeaderMapper}. -|spring.cloud.stream.kafka.binder.headers | `[]` | -|spring.cloud.stream.kafka.binder.health-timeout | `60` | Time to wait to get partition information in seconds; default 60. -|spring.cloud.stream.kafka.binder.jaas | | -|spring.cloud.stream.kafka.binder.min-partition-count | `1` | -|spring.cloud.stream.kafka.binder.producer-properties | | Arbitrary kafka producer properties. -|spring.cloud.stream.kafka.binder.replication-factor | `-1` | -|spring.cloud.stream.kafka.binder.required-acks | `1` | -|spring.cloud.stream.kafka.binder.transaction.producer.batch-timeout | | -|spring.cloud.stream.kafka.binder.transaction.producer.buffer-size | | -|spring.cloud.stream.kafka.binder.transaction.producer.compression-type | | -|spring.cloud.stream.kafka.binder.transaction.producer.configuration | | -|spring.cloud.stream.kafka.binder.transaction.producer.error-channel-enabled | | -|spring.cloud.stream.kafka.binder.transaction.producer.header-mode | | -|spring.cloud.stream.kafka.binder.transaction.producer.header-patterns | | -|spring.cloud.stream.kafka.binder.transaction.producer.message-key-expression | | -|spring.cloud.stream.kafka.binder.transaction.producer.partition-count | | -|spring.cloud.stream.kafka.binder.transaction.producer.partition-key-expression | | -|spring.cloud.stream.kafka.binder.transaction.producer.partition-key-extractor-name | | -|spring.cloud.stream.kafka.binder.transaction.producer.partition-selector-expression | | -|spring.cloud.stream.kafka.binder.transaction.producer.partition-selector-name | | -|spring.cloud.stream.kafka.binder.transaction.producer.required-groups | | -|spring.cloud.stream.kafka.binder.transaction.producer.sync | | -|spring.cloud.stream.kafka.binder.transaction.producer.topic | | -|spring.cloud.stream.kafka.binder.transaction.producer.use-native-encoding | | -|spring.cloud.stream.kafka.binder.transaction.transaction-id-prefix | | -|spring.cloud.stream.kafka.bindings | | -|spring.cloud.stream.metrics.export-properties | | List of properties that are going to be appended to each message. This gets populate by onApplicationEvent, once the context refreshes to avoid overhead of doing per message basis. -|spring.cloud.stream.metrics.key | | The name of the metric being emitted. Should be an unique value per application. Defaults to: ${spring.application.name:${vcap.application.name:${spring.config.name:application}}}. -|spring.cloud.stream.metrics.meter-filter | | Pattern to control the 'meters' one wants to capture. By default all 'meters' will be captured. For example, 'spring.integration.*' will only capture metric information for meters whose name starts with 'spring.integration'. -|spring.cloud.stream.metrics.properties | | Application properties that should be added to the metrics payload For example: `spring.application**`. -|spring.cloud.stream.metrics.schedule-interval | `60s` | Interval expressed as Duration for scheduling metrics snapshots publishing. Defaults to 60 seconds -|spring.cloud.stream.output-bindings | | A semi-colon delimited string to explicitly define output bindings (specifically for cases when there is no implicit trigger to create such bindings such as Function, Supplier or Consumer). -|spring.cloud.stream.override-cloud-connectors | `false` | This property is only applicable when the cloud profile is active and Spring Cloud Connectors are provided with the application. If the property is false (the default), the binder detects a suitable bound service (for example, a RabbitMQ service bound in Cloud Foundry for the RabbitMQ binder) and uses it for creating connections (usually through Spring Cloud Connectors). When set to true, this property instructs binders to completely ignore the bound services and rely on Spring Boot properties (for example, relying on the spring.rabbitmq.* properties provided in the environment for the RabbitMQ binder). The typical usage of this property is to be nested in a customized environment when connecting to multiple systems. -|spring.cloud.stream.pollable-source | `none` | A semi-colon delimited list of binding names of pollable sources. Binding names follow the same naming convention as functions. For example, name '...pollable-source=foobar' will be accessible as 'foobar-iin-0'' binding -|spring.cloud.stream.sendto.destination | `none` | The name of the header used to determine the name of the output destination -|spring.cloud.stream.source | | A semi-colon delimited string representing the names of the sources based on which source bindings will be created. This is primarily to support cases where source binding may be required without providing a corresponding Supplier. (e.g., for cases where the actual source of data is outside of scope of spring-cloud-stream - HTTP -> Stream) @deprecated use {@link #outputBindings} - -|=== \ No newline at end of file diff --git a/binders/kafka-binder/docs/src/main/asciidoc/appendix.adoc b/binders/kafka-binder/docs/src/main/asciidoc/appendix.adoc deleted file mode 100644 index 70b828fdd..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/appendix.adoc +++ /dev/null @@ -1,5 +0,0 @@ -[[appendix]] -= Appendices - - - diff --git a/binders/kafka-binder/docs/src/main/asciidoc/building.adoc b/binders/kafka-binder/docs/src/main/asciidoc/building.adoc deleted file mode 100644 index 1bc02a372..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/building.adoc +++ /dev/null @@ -1,78 +0,0 @@ -[[building]] -== Building - -:jdkversion: 1.7 - -=== Basic Compile and Test - -To build the source you will need to install JDK {jdkversion}. - -The build uses the Maven wrapper so you don't have to install a specific -version of Maven. To enable the tests, you should have Kafka server 0.9 or above running -before building. See below for more information on running the servers. - -The main build command is - ----- -$ ./mvnw clean install ----- - -You can also add '-DskipTests' if you like, to avoid running the tests. - -NOTE: You can also install Maven (>=3.3.3) yourself and run the `mvn` command -in place of `./mvnw` in the examples below. If you do that you also -might need to add `-P spring` if your local Maven settings do not -contain repository declarations for spring pre-release artifacts. - -NOTE: Be aware that you might need to increase the amount of memory -available to Maven by setting a `MAVEN_OPTS` environment variable with -a value like `-Xmx512m -XX:MaxPermSize=128m`. We try to cover this in -the `.mvn` configuration, so if you find you have to do it to make a -build succeed, please raise a ticket to get the settings added to -source control. - - -The projects that require middleware generally include a -`docker-compose.yml`, so consider using -https://compose.docker.io/[Docker Compose] to run the middeware servers -in Docker containers. - -=== Documentation - -There is a "full" profile that will generate documentation. - -=== 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/[m2eclipe] eclipse plugin for maven support. Other IDEs and tools -should also work without issue. - -==== Importing into eclipse with m2eclipse -We recommend the https://eclipse.org/m2e/[m2eclipe] eclipse plugin when working with -eclipse. If you don't already have m2eclipse installed it is available from the "eclipse -marketplace". - -Unfortunately m2e does not yet support Maven 3.3, so once the projects -are imported into Eclipse you will also need to tell m2eclipse to use -the `.settings.xml` file for the projects. If you do not do this you -may see many different errors related to the POMs in the -projects. Open your Eclipse preferences, expand the Maven -preferences, and select User Settings. In the User Settings field -click Browse and navigate to the Spring Cloud project you imported -selecting the `.settings.xml` file in that project. Click Apply and -then OK to save the preference changes. - -NOTE: Alternatively you can copy the repository settings from https://github.com/spring-cloud/spring-cloud-build/blob/master/.settings.xml[`.settings.xml`] into your own `~/.m2/settings.xml`. - -==== Importing into eclipse without m2eclipse -If you prefer not to use m2eclipse you can generate eclipse project metadata using the -following command: - -[indent=0] ----- - $ ./mvnw eclipse:eclipse ----- - -The generated eclipse projects can be imported by selecting `import existing projects` -from the `file` menu. diff --git a/binders/kafka-binder/docs/src/main/asciidoc/contributing.adoc b/binders/kafka-binder/docs/src/main/asciidoc/contributing.adoc deleted file mode 100644 index 65523be8f..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/contributing.adoc +++ /dev/null @@ -1,42 +0,0 @@ -[[contributing] -== Contributing - -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 -to contribute even something trivial please do not hesitate, but -follow the guidelines below. - -=== Sign the Contributor License Agreement -Before we accept a non-trivial patch or pull request we will need you to sign the -https://support.springsource.com/spring_committer_signup[contributor's agreement]. -Signing the contributor's agreement does not grant anyone commit rights to the main -repository, but it does mean that we can accept your contributions, and you will get an -author credit if we do. Active contributors might be asked to join the core team, and -given the ability to merge pull requests. - -=== 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://github.com/spring-cloud/build/tree/master/eclipse-coding-conventions.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. -* Make sure all new `.java` files to have a simple Javadoc class comment with at least an - `@author` tag identifying you, and preferably at least a paragraph on what the class is - for. -* Add the ASF license header comment to all new `.java` files (copy from existing files - in the project) -* Add yourself as an `@author` to the .java files that you modify substantially (more - 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 - 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). \ No newline at end of file diff --git a/binders/kafka-binder/docs/src/main/asciidoc/ghpages.sh b/binders/kafka-binder/docs/src/main/asciidoc/ghpages.sh deleted file mode 100755 index 375ce6c4a..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/ghpages.sh +++ /dev/null @@ -1,330 +0,0 @@ -#!/bin/bash -x - -set -e - -# Set default props like MAVEN_PATH, ROOT_FOLDER etc. -function set_default_props() { - # The script should be run from the root folder - ROOT_FOLDER=`pwd` - echo "Current folder is ${ROOT_FOLDER}" - - if [[ ! -e "${ROOT_FOLDER}/.git" ]]; then - echo "You're not in the root folder of the project!" - exit 1 - fi - - # Prop that will let commit the changes - COMMIT_CHANGES="no" - MAVEN_PATH=${MAVEN_PATH:-} - echo "Path to Maven is [${MAVEN_PATH}]" - REPO_NAME=${PWD##*/} - echo "Repo name is [${REPO_NAME}]" - SPRING_CLOUD_STATIC_REPO=${SPRING_CLOUD_STATIC_REPO:-git@github.com:spring-cloud/spring-cloud-static.git} - echo "Spring Cloud Static repo is [${SPRING_CLOUD_STATIC_REPO}" -} - -# Check if gh-pages exists and docs have been built -function check_if_anything_to_sync() { - git remote set-url --push origin `git config remote.origin.url | sed -e 's/^git:/https:/'` - - if ! (git remote set-branches --add origin gh-pages && git fetch -q); then - echo "No gh-pages, so not syncing" - exit 0 - fi - - if ! [ -d docs/target/generated-docs ] && ! [ "${BUILD}" == "yes" ]; then - echo "No gh-pages sources in docs/target/generated-docs, so not syncing" - exit 0 - fi -} - -function retrieve_current_branch() { - # Code getting the name of the current branch. For master we want to publish as we did until now - # https://stackoverflow.com/questions/1593051/how-to-programmatically-determine-the-current-checked-out-git-branch - # If there is a branch already passed will reuse it - otherwise will try to find it - CURRENT_BRANCH=${BRANCH} - if [[ -z "${CURRENT_BRANCH}" ]] ; then - CURRENT_BRANCH=$(git symbolic-ref -q HEAD) - CURRENT_BRANCH=${CURRENT_BRANCH##refs/heads/} - CURRENT_BRANCH=${CURRENT_BRANCH:-HEAD} - fi - echo "Current branch is [${CURRENT_BRANCH}]" - git checkout ${CURRENT_BRANCH} || echo "Failed to check the branch... continuing with the script" -} - -# Switches to the provided value of the release version. We always prefix it with `v` -function switch_to_tag() { - git checkout v${VERSION} -} - -# Build the docs if switch is on -function build_docs_if_applicable() { - if [[ "${BUILD}" == "yes" ]] ; then - ./mvnw clean install -P docs -pl docs -DskipTests - fi -} - -# Get the name of the `docs.main` property -# Get allowed branches - assumes that a `docs` module is available under `docs` profile -function retrieve_doc_properties() { - MAIN_ADOC_VALUE=$("${MAVEN_PATH}"mvn -q \ - -Dexec.executable="echo" \ - -Dexec.args='${docs.main}' \ - --non-recursive \ - org.codehaus.mojo:exec-maven-plugin:1.3.1:exec) - echo "Extracted 'main.adoc' from Maven build [${MAIN_ADOC_VALUE}]" - - - ALLOW_PROPERTY=${ALLOW_PROPERTY:-"docs.allowed.branches"} - ALLOWED_BRANCHES_VALUE=$("${MAVEN_PATH}"mvn -q \ - -Dexec.executable="echo" \ - -Dexec.args="\${${ALLOW_PROPERTY}}" \ - org.codehaus.mojo:exec-maven-plugin:1.3.1:exec \ - -P docs \ - -pl docs) - echo "Extracted '${ALLOW_PROPERTY}' from Maven build [${ALLOWED_BRANCHES_VALUE}]" -} - -# Stash any outstanding changes -function stash_changes() { - git diff-index --quiet HEAD && dirty=$? || (echo "Failed to check if the current repo is dirty. Assuming that it is." && dirty="1") - if [ "$dirty" != "0" ]; then git stash; fi -} - -# Switch to gh-pages branch to sync it with current branch -function add_docs_from_target() { - local DESTINATION_REPO_FOLDER - if [[ -z "${DESTINATION}" && -z "${CLONE}" ]] ; then - DESTINATION_REPO_FOLDER=${ROOT_FOLDER} - elif [[ "${CLONE}" == "yes" ]]; then - mkdir -p ${ROOT_FOLDER}/target - local clonedStatic=${ROOT_FOLDER}/target/spring-cloud-static - if [[ ! -e "${clonedStatic}/.git" ]]; then - echo "Cloning Spring Cloud Static to target" - git clone ${SPRING_CLOUD_STATIC_REPO} ${clonedStatic} && git checkout gh-pages - else - echo "Spring Cloud Static already cloned - will pull changes" - cd ${clonedStatic} && git checkout gh-pages && git pull origin gh-pages - fi - DESTINATION_REPO_FOLDER=${clonedStatic}/${REPO_NAME} - mkdir -p ${DESTINATION_REPO_FOLDER} - else - if [[ ! -e "${DESTINATION}/.git" ]]; then - echo "[${DESTINATION}] is not a git repository" - exit 1 - fi - DESTINATION_REPO_FOLDER=${DESTINATION}/${REPO_NAME} - mkdir -p ${DESTINATION_REPO_FOLDER} - echo "Destination was provided [${DESTINATION}]" - fi - cd ${DESTINATION_REPO_FOLDER} - git checkout gh-pages - git pull origin gh-pages - - # Add git branches - ################################################################### - if [[ -z "${VERSION}" ]] ; then - copy_docs_for_current_version - else - copy_docs_for_provided_version - fi - commit_changes_if_applicable -} - - -# Copies the docs by using the retrieved properties from Maven build -function copy_docs_for_current_version() { - if [[ "${CURRENT_BRANCH}" == "master" ]] ; then - echo -e "Current branch is master - will copy the current docs only to the root folder" - for f in docs/target/generated-docs/*; do - file=${f#docs/target/generated-docs/*} - if ! git ls-files -i -o --exclude-standard --directory | grep -q ^$file$; then - # Not ignored... - cp -rf $f ${ROOT_FOLDER}/ - git add -A ${ROOT_FOLDER}/$file - fi - done - COMMIT_CHANGES="yes" - else - echo -e "Current branch is [${CURRENT_BRANCH}]" - # https://stackoverflow.com/questions/29300806/a-bash-script-to-check-if-a-string-is-present-in-a-comma-separated-list-of-strin - if [[ ",${ALLOWED_BRANCHES_VALUE}," = *",${CURRENT_BRANCH},"* ]] ; then - mkdir -p ${ROOT_FOLDER}/${CURRENT_BRANCH} - echo -e "Branch [${CURRENT_BRANCH}] is allowed! Will copy the current docs to the [${CURRENT_BRANCH}] folder" - for f in docs/target/generated-docs/*; do - file=${f#docs/target/generated-docs/*} - if ! git ls-files -i -o --exclude-standard --directory | grep -q ^$file$; then - # Not ignored... - # We want users to access 2.0.0.BUILD-SNAPSHOT/ instead of 1.0.0.RELEASE/spring-cloud.sleuth.html - if [[ "${file}" == "${MAIN_ADOC_VALUE}.html" ]] ; then - # We don't want to copy the spring-cloud-sleuth.html - # we want it to be converted to index.html - cp -rf $f ${ROOT_FOLDER}/${CURRENT_BRANCH}/index.html - git add -A ${ROOT_FOLDER}/${CURRENT_BRANCH}/index.html - else - cp -rf $f ${ROOT_FOLDER}/${CURRENT_BRANCH} - git add -A ${ROOT_FOLDER}/${CURRENT_BRANCH}/$file - fi - fi - done - COMMIT_CHANGES="yes" - else - echo -e "Branch [${CURRENT_BRANCH}] is not on the allow list! Check out the Maven [${ALLOW_PROPERTY}] property in - [docs] module available under [docs] profile. Won't commit any changes to gh-pages for this branch." - fi - fi -} - -# Copies the docs by using the explicitly provided version -function copy_docs_for_provided_version() { - local FOLDER=${DESTINATION_REPO_FOLDER}/${VERSION} - mkdir -p ${FOLDER} - echo -e "Current tag is [v${VERSION}] Will copy the current docs to the [${FOLDER}] folder" - for f in ${ROOT_FOLDER}/docs/target/generated-docs/*; do - file=${f#${ROOT_FOLDER}/docs/target/generated-docs/*} - copy_docs_for_branch ${file} ${FOLDER} - done - COMMIT_CHANGES="yes" - CURRENT_BRANCH="v${VERSION}" -} - -# Copies the docs from target to the provided destination -# Params: -# $1 - file from target -# $2 - destination to which copy the files -function copy_docs_for_branch() { - local file=$1 - local destination=$2 - if ! git ls-files -i -o --exclude-standard --directory | grep -q ^${file}$; then - # Not ignored... - # We want users to access 2.0.0.BUILD-SNAPSHOT/ instead of 1.0.0.RELEASE/spring-cloud.sleuth.html - if [[ ("${file}" == "${MAIN_ADOC_VALUE}.html") || ("${file}" == "${REPO_NAME}.html") ]] ; then - # We don't want to copy the spring-cloud-sleuth.html - # we want it to be converted to index.html - cp -rf $f ${destination}/index.html - git add -A ${destination}/index.html - else - cp -rf $f ${destination} - git add -A ${destination}/$file - fi - fi -} - -function commit_changes_if_applicable() { - if [[ "${COMMIT_CHANGES}" == "yes" ]] ; then - COMMIT_SUCCESSFUL="no" - git commit -a -m "Sync docs from ${CURRENT_BRANCH} to gh-pages" && COMMIT_SUCCESSFUL="yes" || echo "Failed to commit changes" - - # Uncomment the following push if you want to auto push to - # the gh-pages branch whenever you commit to master locally. - # This is a little extreme. Use with care! - ################################################################### - if [[ "${COMMIT_SUCCESSFUL}" == "yes" ]] ; then - git push origin gh-pages - fi - fi -} - -# Switch back to the previous branch and exit block -function checkout_previous_branch() { - # If -version was provided we need to come back to root project - cd ${ROOT_FOLDER} - git checkout ${CURRENT_BRANCH} || echo "Failed to check the branch... continuing with the script" - if [ "$dirty" != "0" ]; then git stash pop; fi - exit 0 -} - -# Assert if properties have been properly passed -function assert_properties() { -echo "VERSION [${VERSION}], DESTINATION [${DESTINATION}], CLONE [${CLONE}]" -if [[ "${VERSION}" != "" && (-z "${DESTINATION}" && -z "${CLONE}") ]] ; then echo "Version was set but destination / clone was not!"; exit 1;fi -if [[ ("${DESTINATION}" != "" && "${CLONE}" != "") && -z "${VERSION}" ]] ; then echo "Destination / clone was set but version was not!"; exit 1;fi -if [[ "${DESTINATION}" != "" && "${CLONE}" == "yes" ]] ; then echo "Destination and clone was set. Pick one!"; exit 1;fi -} - -# Prints the usage -function print_usage() { -cat </` -- if the destination switch is passed (-d) then the script will check if the provided dir is a git repo and then will - switch to gh-pages of that repo and copy the generated docs to `docs//` - -USAGE: - -You can use the following options: - --v|--version - the script will apply the whole procedure for a particular library version --d|--destination - the root of destination folder where the docs should be copied. You have to use the full path. - E.g. point to spring-cloud-static folder. Can't be used with (-c) --b|--build - will run the standard build process after checking out the branch --c|--clone - will automatically clone the spring-cloud-static repo instead of providing the destination. - Obviously can't be used with (-d) - -EOF -} - - -# ========================================== -# ____ ____ _____ _____ _____ _______ -# / ____|/ ____| __ \|_ _| __ \__ __| -# | (___ | | | |__) | | | | |__) | | | -# \___ \| | | _ / | | | ___/ | | -# ____) | |____| | \ \ _| |_| | | | -# |_____/ \_____|_| \_\_____|_| |_| -# -# ========================================== - -while [[ $# > 0 ]] -do -key="$1" -case ${key} in - -v|--version) - VERSION="$2" - shift # past argument - ;; - -d|--destination) - DESTINATION="$2" - shift # past argument - ;; - -b|--build) - BUILD="yes" - ;; - -c|--clone) - CLONE="yes" - ;; - -h|--help) - print_usage - exit 0 - ;; - *) - echo "Invalid option: [$1]" - print_usage - exit 1 - ;; -esac -shift # past argument or value -done - -assert_properties -set_default_props -check_if_anything_to_sync -if [[ -z "${VERSION}" ]] ; then - retrieve_current_branch -else - switch_to_tag -fi -build_docs_if_applicable -retrieve_doc_properties -stash_changes -add_docs_from_target -checkout_previous_branch diff --git a/binders/kafka-binder/docs/src/main/asciidoc/index-docinfo.xml b/binders/kafka-binder/docs/src/main/asciidoc/index-docinfo.xml deleted file mode 100644 index 0e89c2b13..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/index-docinfo.xml +++ /dev/null @@ -1,14 +0,0 @@ -Spring Cloud Stream Kafka Binder -{spring-cloud-stream-binder-kafka-version} - - 2013-2016 - Pivotal Software, Inc. - - - - Copies of this document may be made for your own use and for distribution to - others, provided that you do not charge any fee for such copies and further - provided that each copy contains this Copyright Notice, whether distributed in - print or electronically. - - diff --git a/binders/kafka-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-kafka-aggregate.adoc b/binders/kafka-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-kafka-aggregate.adoc deleted file mode 100644 index 3a673ac2c..000000000 --- a/binders/kafka-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-kafka-aggregate.adoc +++ /dev/null @@ -1,3 +0,0 @@ -include::overview.adoc[leveloffset=+1] -include::dlq.adoc[leveloffset=+1] -include::partitions.adoc[leveloffset=+1] diff --git a/binders/kafka-binder/docs/src/main/ruby/generate_readme.sh b/binders/kafka-binder/docs/src/main/ruby/generate_readme.sh deleted file mode 100755 index 6d0ce9dc5..000000000 --- a/binders/kafka-binder/docs/src/main/ruby/generate_readme.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env ruby - -base_dir = File.join(File.dirname(__FILE__),'../../..') -src_dir = File.join(base_dir, "/src/main/asciidoc") -require 'asciidoctor' -require 'optparse' - -options = {} -file = "#{src_dir}/README.adoc" - -OptionParser.new do |o| - o.on('-o OUTPUT_FILE', 'Output file (default is stdout)') { |file| options[:to_file] = file unless file=='-' } - o.on('-h', '--help') { puts o; exit } - o.parse! -end - -file = ARGV[0] if ARGV.length>0 - -# Copied from https://github.com/asciidoctor/asciidoctor-extensions-lab/blob/master/scripts/asciidoc-coalescer.rb -doc = Asciidoctor.load_file file, safe: :unsafe, header_only: true, attributes: options[:attributes] -header_attr_names = (doc.instance_variable_get :@attributes_modified).to_a -header_attr_names.each {|k| doc.attributes[%(#{k}!)] = '' unless doc.attr? k } -attrs = doc.attributes -attrs['allow-uri-read'] = true -puts attrs - -out = "// Do not edit this file (e.g. go instead to src/main/asciidoc)\n\n" -doc = Asciidoctor.load_file file, safe: :unsafe, parse: false, attributes: attrs -out << doc.reader.read - -unless options[:to_file] - puts out -else - File.open(options[:to_file],'w+') do |file| - file.write(out) - end -end diff --git a/binders/kafka-binder/pom.xml b/binders/kafka-binder/pom.xml index a3f941ed3..99e2475af 100644 --- a/binders/kafka-binder/pom.xml +++ b/binders/kafka-binder/pom.xml @@ -2,12 +2,12 @@ 4.0.0 spring-cloud-stream-binder-kafka-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT pom org.springframework.cloud spring-cloud-stream-binders - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT https://github.com/spring-cloud/spring-cloud-stream-binder-kafka @@ -23,7 +23,7 @@ 2.8.5 5.5.8 3.0.0 - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT true true true @@ -33,7 +33,6 @@ spring-cloud-starter-stream-kafka spring-cloud-stream-binder-kafka-core spring-cloud-stream-binder-kafka-streams - docs diff --git a/binders/kafka-binder/spring-cloud-starter-stream-kafka/pom.xml b/binders/kafka-binder/spring-cloud-starter-stream-kafka/pom.xml index 1bb40f592..a9f1884b4 100644 --- a/binders/kafka-binder/spring-cloud-starter-stream-kafka/pom.xml +++ b/binders/kafka-binder/spring-cloud-starter-stream-kafka/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-stream-binder-kafka-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-starter-stream-kafka Spring Cloud Starter Stream Kafka diff --git a/binders/kafka-binder/spring-cloud-stream-binder-kafka-core/pom.xml b/binders/kafka-binder/spring-cloud-stream-binder-kafka-core/pom.xml index 1e8c4eb07..9ab034f65 100644 --- a/binders/kafka-binder/spring-cloud-stream-binder-kafka-core/pom.xml +++ b/binders/kafka-binder/spring-cloud-stream-binder-kafka-core/pom.xml @@ -5,7 +5,7 @@ org.springframework.cloud spring-cloud-stream-binder-kafka-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-stream-binder-kafka-core Spring Cloud Stream Kafka Binder Core diff --git a/binders/kafka-binder/spring-cloud-stream-binder-kafka-streams/pom.xml b/binders/kafka-binder/spring-cloud-stream-binder-kafka-streams/pom.xml index 44069a6e1..39aa11798 100644 --- a/binders/kafka-binder/spring-cloud-stream-binder-kafka-streams/pom.xml +++ b/binders/kafka-binder/spring-cloud-stream-binder-kafka-streams/pom.xml @@ -10,7 +10,7 @@ org.springframework.cloud spring-cloud-stream-binder-kafka-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/binders/kafka-binder/spring-cloud-stream-binder-kafka/pom.xml b/binders/kafka-binder/spring-cloud-stream-binder-kafka/pom.xml index 92187b719..3e666d8df 100644 --- a/binders/kafka-binder/spring-cloud-stream-binder-kafka/pom.xml +++ b/binders/kafka-binder/spring-cloud-stream-binder-kafka/pom.xml @@ -10,7 +10,7 @@ org.springframework.cloud spring-cloud-stream-binder-kafka-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/binders/pom.xml b/binders/pom.xml index 96e82c739..c2248a497 100644 --- a/binders/pom.xml +++ b/binders/pom.xml @@ -2,7 +2,7 @@ 4.0.0 spring-cloud-stream-binders - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT binders Framework provided binders pom @@ -10,7 +10,7 @@ org.springframework.cloud spring-cloud-stream-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/binders/rabbit-binder/docs/pom.xml b/binders/rabbit-binder/docs/pom.xml deleted file mode 100644 index 0a3208e05..000000000 --- a/binders/rabbit-binder/docs/pom.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - 4.0.0 - spring-cloud-stream-binder-rabbit-docs - - org.springframework.cloud - spring-cloud-stream-binder-rabbit-parent - 3.2.3-SNAPSHOT - - jar - spring-cloud-stream-binder-rabbit-docs - Spring Cloud Stream Rabbit Binder Docs - - spring-cloud-stream-binder-rabbit - ${basedir}/.. - 3.4 - .*stream.* - deploy - - - - ${project.groupId} - spring-cloud-starter-stream-rabbit - ${project.version} - - - - src/main/asciidoc - - - - docs - - - - pl.project13.maven - git-commit-id-plugin - - - maven-dependency-plugin - - - maven-resources-plugin - - - org.codehaus.mojo - exec-maven-plugin - - - org.asciidoctor - asciidoctor-maven-plugin - - - maven-antrun-plugin - - - maven-deploy-plugin - - - - - - diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/.gitignore b/binders/rabbit-binder/docs/src/main/asciidoc/.gitignore deleted file mode 100644 index bbc341117..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.html -*.css diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/Guardfile b/binders/rabbit-binder/docs/src/main/asciidoc/Guardfile deleted file mode 100644 index bdd4d7298..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/Guardfile +++ /dev/null @@ -1,20 +0,0 @@ -require 'asciidoctor' -require 'erb' - -guard 'shell' do - watch(/.*\.adoc$/) {|m| - Asciidoctor.render_file('index.adoc', \ - :in_place => true, \ - :safe => Asciidoctor::SafeMode::UNSAFE, \ - :attributes=> { \ - 'source-highlighter' => 'prettify', \ - 'icons' => 'font', \ - 'linkcss'=> 'true', \ - 'copycss' => 'true', \ - 'doctype' => 'book'}) - } -end - -guard 'livereload' do - watch(%r{^.+\.(css|js|html)$}) -end diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/_configprops.adoc b/binders/rabbit-binder/docs/src/main/asciidoc/_configprops.adoc deleted file mode 100644 index 519f78ec4..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/_configprops.adoc +++ /dev/null @@ -1,34 +0,0 @@ -|=== -|Name | Default | Description - -|spring.cloud.stream.binders | | Additional per-binder properties (see {@link BinderProperties}) if more then one binder of the same type is used (i.e., connect to multiple instances of RabbitMq). Here you can specify multiple binder configurations, each with different environment settings. For example; spring.cloud.stream.binders.rabbit1.environment. . . , spring.cloud.stream.binders.rabbit2.environment. . . -|spring.cloud.stream.binding-retry-interval | `30` | Retry interval (in seconds) used to schedule binding attempts. Default: 30 sec. -|spring.cloud.stream.bindings | | Additional binding properties (see {@link BinderProperties}) per binding name (e.g., 'input`). For example; This sets the content-type for the 'input' binding of a Sink application: 'spring.cloud.stream.bindings.input.contentType=text/plain' -|spring.cloud.stream.default-binder | | The name of the binder to use by all bindings in the event multiple binders available (e.g., 'rabbit'). -|spring.cloud.stream.dynamic-destination-cache-size | `10` | The maximum size of Least Recently Used (LRU) cache of dynamic destinations. Once this size is reached, new destinations will trigger the removal of old destinations. Default: 10 -|spring.cloud.stream.dynamic-destinations | `[]` | A list of destinations that can be bound dynamically. If set, only listed destinations can be bound. -|spring.cloud.stream.function.batch-mode | `false` | -|spring.cloud.stream.function.bindings | | -|spring.cloud.stream.input-bindings | | A semi-colon delimited string to explicitly define input bindings (specifically for cases when there is no implicit trigger to create such bindings such as Function, Supplier or Consumer). -|spring.cloud.stream.instance-count | `1` | The number of deployed instances of an application. Default: 1. NOTE: Could also be managed per individual binding "spring.cloud.stream.bindings.foo.consumer.instance-count" where 'foo' is the name of the binding. -|spring.cloud.stream.instance-index | `0` | The instance id of the application: a number from 0 to instanceCount-1. Used for partitioning and with Kafka. NOTE: Could also be managed per individual binding "spring.cloud.stream.bindings.foo.consumer.instance-index" where 'foo' is the name of the binding. -|spring.cloud.stream.instance-index-list | | A list of instance id's from 0 to instanceCount-1. Used for partitioning and with Kafka. NOTE: Could also be managed per individual binding "spring.cloud.stream.bindings.foo.consumer.instance-index-list" where 'foo' is the name of the binding. This setting will override the one set in 'spring.cloud.stream.instance-index' -|spring.cloud.stream.integration.message-handler-not-propagated-headers | | Message header names that will NOT be copied from the inbound message. -|spring.cloud.stream.metrics.export-properties | | List of properties that are going to be appended to each message. This gets populate by onApplicationEvent, once the context refreshes to avoid overhead of doing per message basis. -|spring.cloud.stream.metrics.key | | The name of the metric being emitted. Should be an unique value per application. Defaults to: ${spring.application.name:${vcap.application.name:${spring.config.name:application}}}. -|spring.cloud.stream.metrics.meter-filter | | Pattern to control the 'meters' one wants to capture. By default all 'meters' will be captured. For example, 'spring.integration.*' will only capture metric information for meters whose name starts with 'spring.integration'. -|spring.cloud.stream.metrics.properties | | Application properties that should be added to the metrics payload For example: `spring.application**`. -|spring.cloud.stream.metrics.schedule-interval | `60s` | Interval expressed as Duration for scheduling metrics snapshots publishing. Defaults to 60 seconds -|spring.cloud.stream.output-bindings | | A semi-colon delimited string to explicitly define output bindings (specifically for cases when there is no implicit trigger to create such bindings such as Function, Supplier or Consumer). -|spring.cloud.stream.override-cloud-connectors | `false` | This property is only applicable when the cloud profile is active and Spring Cloud Connectors are provided with the application. If the property is false (the default), the binder detects a suitable bound service (for example, a RabbitMQ service bound in Cloud Foundry for the RabbitMQ binder) and uses it for creating connections (usually through Spring Cloud Connectors). When set to true, this property instructs binders to completely ignore the bound services and rely on Spring Boot properties (for example, relying on the spring.rabbitmq.* properties provided in the environment for the RabbitMQ binder). The typical usage of this property is to be nested in a customized environment when connecting to multiple systems. -|spring.cloud.stream.pollable-source | `none` | A semi-colon delimited list of binding names of pollable sources. Binding names follow the same naming convention as functions. For example, name '...pollable-source=foobar' will be accessible as 'foobar-iin-0'' binding -|spring.cloud.stream.rabbit.binder.admin-addresses | `[]` | Urls for management plugins; only needed for queue affinity. -|spring.cloud.stream.rabbit.binder.admin-adresses | | -|spring.cloud.stream.rabbit.binder.compression-level | `0` | Compression level for compressed bindings; see 'java.util.zip.Deflator'. -|spring.cloud.stream.rabbit.binder.connection-name-prefix | | Prefix for connection names from this binder. -|spring.cloud.stream.rabbit.binder.nodes | `[]` | Cluster member node names; only needed for queue affinity. -|spring.cloud.stream.rabbit.bindings | | -|spring.cloud.stream.sendto.destination | `none` | The name of the header used to determine the name of the output destination -|spring.cloud.stream.source | | A semi-colon delimited string representing the names of the sources based on which source bindings will be created. This is primarily to support cases where source binding may be required without providing a corresponding Supplier. (e.g., for cases where the actual source of data is outside of scope of spring-cloud-stream - HTTP -> Stream) @deprecated use {@link #outputBindings} - -|=== \ No newline at end of file diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/appendix.adoc b/binders/rabbit-binder/docs/src/main/asciidoc/appendix.adoc deleted file mode 100644 index 70b828fdd..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/appendix.adoc +++ /dev/null @@ -1,5 +0,0 @@ -[[appendix]] -= Appendices - - - diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/building.adoc b/binders/rabbit-binder/docs/src/main/asciidoc/building.adoc deleted file mode 100644 index 24e075711..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/building.adoc +++ /dev/null @@ -1,83 +0,0 @@ -[[building]] -== Building - -:jdkversion: 1.8 - -=== Basic Compile and Test - -To build the source you will need to install JDK {jdkversion}. - -The build uses the Maven wrapper so you don't have to install a specific -version of Maven. To enable the tests, you should have RabbitMQ server running -on localhost and the default port (5672) -before building. - -The main build command is - ----- -$ ./mvnw clean install ----- - -You can also add '-DskipTests' if you like, to avoid running the tests. - -NOTE: You can also install Maven (>=3.3.3) yourself and run the `mvn` command -in place of `./mvnw` in the examples below. If you do that you also -might need to add `-P spring` if your local Maven settings do not -contain repository declarations for spring pre-release artifacts. - -NOTE: Be aware that you might need to increase the amount of memory -available to Maven by setting a `MAVEN_OPTS` environment variable with -a value like `-Xmx512m -XX:MaxPermSize=128m`. We try to cover this in -the `.mvn` configuration, so if you find you have to do it to make a -build succeed, please raise a ticket to get the settings added to -source control. - - -The projects that require middleware generally include a -`docker-compose.yml`, so consider using -https://compose.docker.io/[Docker Compose] to run the middeware servers -in Docker containers. - -=== Documentation - -There is a "docs" profile that will generate documentation. - -`./mvnw clean package -Pdocs -DskipTests` - -The reference documentation can then be found in `docs/target/contents/reference`. - -=== 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/[m2eclipe] eclipse plugin for maven support. Other IDEs and tools -should also work without issue. - -==== Importing into eclipse with m2eclipse -We recommend the https://eclipse.org/m2e/[m2eclipe] eclipse plugin when working with -eclipse. If you don't already have m2eclipse installed it is available from the "eclipse -marketplace". - -Unfortunately m2e does not yet support Maven 3.3, so once the projects -are imported into Eclipse you will also need to tell m2eclipse to use -the `.settings.xml` file for the projects. If you do not do this you -may see many different errors related to the POMs in the -projects. Open your Eclipse preferences, expand the Maven -preferences, and select User Settings. In the User Settings field -click Browse and navigate to the Spring Cloud project you imported -selecting the `.settings.xml` file in that project. Click Apply and -then OK to save the preference changes. - -NOTE: Alternatively you can copy the repository settings from https://github.com/spring-cloud/spring-cloud-build/blob/master/.settings.xml[`.settings.xml`] into your own `~/.m2/settings.xml`. - -==== Importing into eclipse without m2eclipse -If you prefer not to use m2eclipse you can generate eclipse project metadata using the -following command: - -[indent=0] ----- - $ ./mvnw eclipse:eclipse ----- - -The generated eclipse projects can be imported by selecting `import existing projects` -from the `file` menu. diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/contributing.adoc b/binders/rabbit-binder/docs/src/main/asciidoc/contributing.adoc deleted file mode 100644 index bcdf6c007..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/contributing.adoc +++ /dev/null @@ -1,42 +0,0 @@ -[[contributing]] -== Contributing - -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 -to contribute even something trivial please do not hesitate, but -follow the guidelines below. - -=== Sign the Contributor License Agreement -Before we accept a non-trivial patch or pull request we will need you to sign the -https://support.springsource.com/spring_committer_signup[contributor's agreement]. -Signing the contributor's agreement does not grant anyone commit rights to the main -repository, but it does mean that we can accept your contributions, and you will get an -author credit if we do. Active contributors might be asked to join the core team, and -given the ability to merge pull requests. - -=== 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://github.com/spring-cloud/build/tree/master/eclipse-coding-conventions.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. -* Make sure all new `.java` files to have a simple Javadoc class comment with at least an - `@author` tag identifying you, and preferably at least a paragraph on what the class is - for. -* Add the ASF license header comment to all new `.java` files (copy from existing files - in the project) -* Add yourself as an `@author` to the .java files that you modify substantially (more - 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 - 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). diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/ghpages.sh b/binders/rabbit-binder/docs/src/main/asciidoc/ghpages.sh deleted file mode 100755 index 375ce6c4a..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/ghpages.sh +++ /dev/null @@ -1,330 +0,0 @@ -#!/bin/bash -x - -set -e - -# Set default props like MAVEN_PATH, ROOT_FOLDER etc. -function set_default_props() { - # The script should be run from the root folder - ROOT_FOLDER=`pwd` - echo "Current folder is ${ROOT_FOLDER}" - - if [[ ! -e "${ROOT_FOLDER}/.git" ]]; then - echo "You're not in the root folder of the project!" - exit 1 - fi - - # Prop that will let commit the changes - COMMIT_CHANGES="no" - MAVEN_PATH=${MAVEN_PATH:-} - echo "Path to Maven is [${MAVEN_PATH}]" - REPO_NAME=${PWD##*/} - echo "Repo name is [${REPO_NAME}]" - SPRING_CLOUD_STATIC_REPO=${SPRING_CLOUD_STATIC_REPO:-git@github.com:spring-cloud/spring-cloud-static.git} - echo "Spring Cloud Static repo is [${SPRING_CLOUD_STATIC_REPO}" -} - -# Check if gh-pages exists and docs have been built -function check_if_anything_to_sync() { - git remote set-url --push origin `git config remote.origin.url | sed -e 's/^git:/https:/'` - - if ! (git remote set-branches --add origin gh-pages && git fetch -q); then - echo "No gh-pages, so not syncing" - exit 0 - fi - - if ! [ -d docs/target/generated-docs ] && ! [ "${BUILD}" == "yes" ]; then - echo "No gh-pages sources in docs/target/generated-docs, so not syncing" - exit 0 - fi -} - -function retrieve_current_branch() { - # Code getting the name of the current branch. For master we want to publish as we did until now - # https://stackoverflow.com/questions/1593051/how-to-programmatically-determine-the-current-checked-out-git-branch - # If there is a branch already passed will reuse it - otherwise will try to find it - CURRENT_BRANCH=${BRANCH} - if [[ -z "${CURRENT_BRANCH}" ]] ; then - CURRENT_BRANCH=$(git symbolic-ref -q HEAD) - CURRENT_BRANCH=${CURRENT_BRANCH##refs/heads/} - CURRENT_BRANCH=${CURRENT_BRANCH:-HEAD} - fi - echo "Current branch is [${CURRENT_BRANCH}]" - git checkout ${CURRENT_BRANCH} || echo "Failed to check the branch... continuing with the script" -} - -# Switches to the provided value of the release version. We always prefix it with `v` -function switch_to_tag() { - git checkout v${VERSION} -} - -# Build the docs if switch is on -function build_docs_if_applicable() { - if [[ "${BUILD}" == "yes" ]] ; then - ./mvnw clean install -P docs -pl docs -DskipTests - fi -} - -# Get the name of the `docs.main` property -# Get allowed branches - assumes that a `docs` module is available under `docs` profile -function retrieve_doc_properties() { - MAIN_ADOC_VALUE=$("${MAVEN_PATH}"mvn -q \ - -Dexec.executable="echo" \ - -Dexec.args='${docs.main}' \ - --non-recursive \ - org.codehaus.mojo:exec-maven-plugin:1.3.1:exec) - echo "Extracted 'main.adoc' from Maven build [${MAIN_ADOC_VALUE}]" - - - ALLOW_PROPERTY=${ALLOW_PROPERTY:-"docs.allowed.branches"} - ALLOWED_BRANCHES_VALUE=$("${MAVEN_PATH}"mvn -q \ - -Dexec.executable="echo" \ - -Dexec.args="\${${ALLOW_PROPERTY}}" \ - org.codehaus.mojo:exec-maven-plugin:1.3.1:exec \ - -P docs \ - -pl docs) - echo "Extracted '${ALLOW_PROPERTY}' from Maven build [${ALLOWED_BRANCHES_VALUE}]" -} - -# Stash any outstanding changes -function stash_changes() { - git diff-index --quiet HEAD && dirty=$? || (echo "Failed to check if the current repo is dirty. Assuming that it is." && dirty="1") - if [ "$dirty" != "0" ]; then git stash; fi -} - -# Switch to gh-pages branch to sync it with current branch -function add_docs_from_target() { - local DESTINATION_REPO_FOLDER - if [[ -z "${DESTINATION}" && -z "${CLONE}" ]] ; then - DESTINATION_REPO_FOLDER=${ROOT_FOLDER} - elif [[ "${CLONE}" == "yes" ]]; then - mkdir -p ${ROOT_FOLDER}/target - local clonedStatic=${ROOT_FOLDER}/target/spring-cloud-static - if [[ ! -e "${clonedStatic}/.git" ]]; then - echo "Cloning Spring Cloud Static to target" - git clone ${SPRING_CLOUD_STATIC_REPO} ${clonedStatic} && git checkout gh-pages - else - echo "Spring Cloud Static already cloned - will pull changes" - cd ${clonedStatic} && git checkout gh-pages && git pull origin gh-pages - fi - DESTINATION_REPO_FOLDER=${clonedStatic}/${REPO_NAME} - mkdir -p ${DESTINATION_REPO_FOLDER} - else - if [[ ! -e "${DESTINATION}/.git" ]]; then - echo "[${DESTINATION}] is not a git repository" - exit 1 - fi - DESTINATION_REPO_FOLDER=${DESTINATION}/${REPO_NAME} - mkdir -p ${DESTINATION_REPO_FOLDER} - echo "Destination was provided [${DESTINATION}]" - fi - cd ${DESTINATION_REPO_FOLDER} - git checkout gh-pages - git pull origin gh-pages - - # Add git branches - ################################################################### - if [[ -z "${VERSION}" ]] ; then - copy_docs_for_current_version - else - copy_docs_for_provided_version - fi - commit_changes_if_applicable -} - - -# Copies the docs by using the retrieved properties from Maven build -function copy_docs_for_current_version() { - if [[ "${CURRENT_BRANCH}" == "master" ]] ; then - echo -e "Current branch is master - will copy the current docs only to the root folder" - for f in docs/target/generated-docs/*; do - file=${f#docs/target/generated-docs/*} - if ! git ls-files -i -o --exclude-standard --directory | grep -q ^$file$; then - # Not ignored... - cp -rf $f ${ROOT_FOLDER}/ - git add -A ${ROOT_FOLDER}/$file - fi - done - COMMIT_CHANGES="yes" - else - echo -e "Current branch is [${CURRENT_BRANCH}]" - # https://stackoverflow.com/questions/29300806/a-bash-script-to-check-if-a-string-is-present-in-a-comma-separated-list-of-strin - if [[ ",${ALLOWED_BRANCHES_VALUE}," = *",${CURRENT_BRANCH},"* ]] ; then - mkdir -p ${ROOT_FOLDER}/${CURRENT_BRANCH} - echo -e "Branch [${CURRENT_BRANCH}] is allowed! Will copy the current docs to the [${CURRENT_BRANCH}] folder" - for f in docs/target/generated-docs/*; do - file=${f#docs/target/generated-docs/*} - if ! git ls-files -i -o --exclude-standard --directory | grep -q ^$file$; then - # Not ignored... - # We want users to access 2.0.0.BUILD-SNAPSHOT/ instead of 1.0.0.RELEASE/spring-cloud.sleuth.html - if [[ "${file}" == "${MAIN_ADOC_VALUE}.html" ]] ; then - # We don't want to copy the spring-cloud-sleuth.html - # we want it to be converted to index.html - cp -rf $f ${ROOT_FOLDER}/${CURRENT_BRANCH}/index.html - git add -A ${ROOT_FOLDER}/${CURRENT_BRANCH}/index.html - else - cp -rf $f ${ROOT_FOLDER}/${CURRENT_BRANCH} - git add -A ${ROOT_FOLDER}/${CURRENT_BRANCH}/$file - fi - fi - done - COMMIT_CHANGES="yes" - else - echo -e "Branch [${CURRENT_BRANCH}] is not on the allow list! Check out the Maven [${ALLOW_PROPERTY}] property in - [docs] module available under [docs] profile. Won't commit any changes to gh-pages for this branch." - fi - fi -} - -# Copies the docs by using the explicitly provided version -function copy_docs_for_provided_version() { - local FOLDER=${DESTINATION_REPO_FOLDER}/${VERSION} - mkdir -p ${FOLDER} - echo -e "Current tag is [v${VERSION}] Will copy the current docs to the [${FOLDER}] folder" - for f in ${ROOT_FOLDER}/docs/target/generated-docs/*; do - file=${f#${ROOT_FOLDER}/docs/target/generated-docs/*} - copy_docs_for_branch ${file} ${FOLDER} - done - COMMIT_CHANGES="yes" - CURRENT_BRANCH="v${VERSION}" -} - -# Copies the docs from target to the provided destination -# Params: -# $1 - file from target -# $2 - destination to which copy the files -function copy_docs_for_branch() { - local file=$1 - local destination=$2 - if ! git ls-files -i -o --exclude-standard --directory | grep -q ^${file}$; then - # Not ignored... - # We want users to access 2.0.0.BUILD-SNAPSHOT/ instead of 1.0.0.RELEASE/spring-cloud.sleuth.html - if [[ ("${file}" == "${MAIN_ADOC_VALUE}.html") || ("${file}" == "${REPO_NAME}.html") ]] ; then - # We don't want to copy the spring-cloud-sleuth.html - # we want it to be converted to index.html - cp -rf $f ${destination}/index.html - git add -A ${destination}/index.html - else - cp -rf $f ${destination} - git add -A ${destination}/$file - fi - fi -} - -function commit_changes_if_applicable() { - if [[ "${COMMIT_CHANGES}" == "yes" ]] ; then - COMMIT_SUCCESSFUL="no" - git commit -a -m "Sync docs from ${CURRENT_BRANCH} to gh-pages" && COMMIT_SUCCESSFUL="yes" || echo "Failed to commit changes" - - # Uncomment the following push if you want to auto push to - # the gh-pages branch whenever you commit to master locally. - # This is a little extreme. Use with care! - ################################################################### - if [[ "${COMMIT_SUCCESSFUL}" == "yes" ]] ; then - git push origin gh-pages - fi - fi -} - -# Switch back to the previous branch and exit block -function checkout_previous_branch() { - # If -version was provided we need to come back to root project - cd ${ROOT_FOLDER} - git checkout ${CURRENT_BRANCH} || echo "Failed to check the branch... continuing with the script" - if [ "$dirty" != "0" ]; then git stash pop; fi - exit 0 -} - -# Assert if properties have been properly passed -function assert_properties() { -echo "VERSION [${VERSION}], DESTINATION [${DESTINATION}], CLONE [${CLONE}]" -if [[ "${VERSION}" != "" && (-z "${DESTINATION}" && -z "${CLONE}") ]] ; then echo "Version was set but destination / clone was not!"; exit 1;fi -if [[ ("${DESTINATION}" != "" && "${CLONE}" != "") && -z "${VERSION}" ]] ; then echo "Destination / clone was set but version was not!"; exit 1;fi -if [[ "${DESTINATION}" != "" && "${CLONE}" == "yes" ]] ; then echo "Destination and clone was set. Pick one!"; exit 1;fi -} - -# Prints the usage -function print_usage() { -cat </` -- if the destination switch is passed (-d) then the script will check if the provided dir is a git repo and then will - switch to gh-pages of that repo and copy the generated docs to `docs//` - -USAGE: - -You can use the following options: - --v|--version - the script will apply the whole procedure for a particular library version --d|--destination - the root of destination folder where the docs should be copied. You have to use the full path. - E.g. point to spring-cloud-static folder. Can't be used with (-c) --b|--build - will run the standard build process after checking out the branch --c|--clone - will automatically clone the spring-cloud-static repo instead of providing the destination. - Obviously can't be used with (-d) - -EOF -} - - -# ========================================== -# ____ ____ _____ _____ _____ _______ -# / ____|/ ____| __ \|_ _| __ \__ __| -# | (___ | | | |__) | | | | |__) | | | -# \___ \| | | _ / | | | ___/ | | -# ____) | |____| | \ \ _| |_| | | | -# |_____/ \_____|_| \_\_____|_| |_| -# -# ========================================== - -while [[ $# > 0 ]] -do -key="$1" -case ${key} in - -v|--version) - VERSION="$2" - shift # past argument - ;; - -d|--destination) - DESTINATION="$2" - shift # past argument - ;; - -b|--build) - BUILD="yes" - ;; - -c|--clone) - CLONE="yes" - ;; - -h|--help) - print_usage - exit 0 - ;; - *) - echo "Invalid option: [$1]" - print_usage - exit 1 - ;; -esac -shift # past argument or value -done - -assert_properties -set_default_props -check_if_anything_to_sync -if [[ -z "${VERSION}" ]] ; then - retrieve_current_branch -else - switch_to_tag -fi -build_docs_if_applicable -retrieve_doc_properties -stash_changes -add_docs_from_target -checkout_previous_branch diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/index-docinfo.xml b/binders/rabbit-binder/docs/src/main/asciidoc/index-docinfo.xml deleted file mode 100644 index 0db87abde..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/index-docinfo.xml +++ /dev/null @@ -1,14 +0,0 @@ -Spring Cloud Stream Rabbit Binder -{spring-cloud-stream-binder-Rabbit-version} - - 2013-2016 - Pivotal Software, Inc. - - - - Copies of this document may be made for your own use and for distribution to - others, provided that you do not charge any fee for such copies and further - provided that each copy contains this Copyright Notice, whether distributed in - print or electronically. - - diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-rabbit-aggregate.adoc b/binders/rabbit-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-rabbit-aggregate.adoc deleted file mode 100644 index ec1ccd5a9..000000000 --- a/binders/rabbit-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-rabbit-aggregate.adoc +++ /dev/null @@ -1,3 +0,0 @@ -include::overview.adoc[leveloffset=+1] -include::dlq.adoc[leveloffset=+1] -include::partitions.adoc[leveloffset=+1] \ No newline at end of file diff --git a/binders/rabbit-binder/docs/src/main/ruby/generate_readme.sh b/binders/rabbit-binder/docs/src/main/ruby/generate_readme.sh deleted file mode 100755 index 6d0ce9dc5..000000000 --- a/binders/rabbit-binder/docs/src/main/ruby/generate_readme.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env ruby - -base_dir = File.join(File.dirname(__FILE__),'../../..') -src_dir = File.join(base_dir, "/src/main/asciidoc") -require 'asciidoctor' -require 'optparse' - -options = {} -file = "#{src_dir}/README.adoc" - -OptionParser.new do |o| - o.on('-o OUTPUT_FILE', 'Output file (default is stdout)') { |file| options[:to_file] = file unless file=='-' } - o.on('-h', '--help') { puts o; exit } - o.parse! -end - -file = ARGV[0] if ARGV.length>0 - -# Copied from https://github.com/asciidoctor/asciidoctor-extensions-lab/blob/master/scripts/asciidoc-coalescer.rb -doc = Asciidoctor.load_file file, safe: :unsafe, header_only: true, attributes: options[:attributes] -header_attr_names = (doc.instance_variable_get :@attributes_modified).to_a -header_attr_names.each {|k| doc.attributes[%(#{k}!)] = '' unless doc.attr? k } -attrs = doc.attributes -attrs['allow-uri-read'] = true -puts attrs - -out = "// Do not edit this file (e.g. go instead to src/main/asciidoc)\n\n" -doc = Asciidoctor.load_file file, safe: :unsafe, parse: false, attributes: attrs -out << doc.reader.read - -unless options[:to_file] - puts out -else - File.open(options[:to_file],'w+') do |file| - file.write(out) - end -end diff --git a/binders/rabbit-binder/pom.xml b/binders/rabbit-binder/pom.xml index 849910163..0f33d2044 100644 --- a/binders/rabbit-binder/pom.xml +++ b/binders/rabbit-binder/pom.xml @@ -2,17 +2,17 @@ 4.0.0 spring-cloud-stream-binder-rabbit-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT pom org.springframework.cloud spring-cloud-stream-binders - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT 1.8 - 3.2.3-SNAPSHOT + 3.2.5-SNAPSHOT true true @@ -24,7 +24,6 @@ spring-cloud-stream-binder-rabbit spring-cloud-starter-stream-rabbit spring-cloud-stream-binder-rabbit-test-support - docs diff --git a/binders/rabbit-binder/spring-cloud-starter-stream-rabbit/pom.xml b/binders/rabbit-binder/spring-cloud-starter-stream-rabbit/pom.xml index 4c34d527d..6a42b5951 100644 --- a/binders/rabbit-binder/spring-cloud-starter-stream-rabbit/pom.xml +++ b/binders/rabbit-binder/spring-cloud-starter-stream-rabbit/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-stream-binder-rabbit-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-starter-stream-rabbit Spring Cloud Starter Stream Rabbit diff --git a/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-core/pom.xml b/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-core/pom.xml index 7d3e7ee64..08e9c7f15 100644 --- a/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-core/pom.xml +++ b/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-core/pom.xml @@ -10,7 +10,7 @@ org.springframework.cloud spring-cloud-stream-binder-rabbit-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-test-support/pom.xml b/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-test-support/pom.xml index 3096141ea..7a5694cb4 100644 --- a/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-test-support/pom.xml +++ b/binders/rabbit-binder/spring-cloud-stream-binder-rabbit-test-support/pom.xml @@ -4,7 +4,7 @@ org.springframework.cloud spring-cloud-stream-binder-rabbit-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-stream-binder-rabbit-test-support Rabbit related test classes diff --git a/binders/rabbit-binder/spring-cloud-stream-binder-rabbit/pom.xml b/binders/rabbit-binder/spring-cloud-stream-binder-rabbit/pom.xml index 965961931..e0bff475e 100644 --- a/binders/rabbit-binder/spring-cloud-stream-binder-rabbit/pom.xml +++ b/binders/rabbit-binder/spring-cloud-stream-binder-rabbit/pom.xml @@ -10,7 +10,7 @@ org.springframework.cloud spring-cloud-stream-binder-rabbit-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/bom/pom.xml b/bom/pom.xml index 8361baf71..15e188319 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -7,7 +7,7 @@ pom spring-cloud-stream-release-build Spring Cloud Stream Release Build - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT org.springframework.cloud spring-cloud-build diff --git a/bom/spring-cloud-starter-parent/pom.xml b/bom/spring-cloud-starter-parent/pom.xml index 6b7162084..5083caf69 100644 --- a/bom/spring-cloud-starter-parent/pom.xml +++ b/bom/spring-cloud-starter-parent/pom.xml @@ -10,7 +10,7 @@ org.springframework.cloud spring-cloud-stream-starter-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-stream-starter-parent Specifies Boot version for the releaser pom diff --git a/bom/spring-cloud-stream-dependencies/pom.xml b/bom/spring-cloud-stream-dependencies/pom.xml index 7a862f42f..44ce0e80d 100644 --- a/bom/spring-cloud-stream-dependencies/pom.xml +++ b/bom/spring-cloud-stream-dependencies/pom.xml @@ -10,7 +10,7 @@ spring-cloud-stream-dependencies - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT pom spring-cloud-stream-dependencies Spring Cloud Stream Dependencies diff --git a/core/pom.xml b/core/pom.xml index 8fe4c71c1..439977f18 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -3,7 +3,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 spring-cloud-stream-core - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT core Core Spring Cloud Stream pom @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-stream-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT .. diff --git a/core/spring-cloud-stream-binder-test/pom.xml b/core/spring-cloud-stream-binder-test/pom.xml index fcc62a9b3..115837b6f 100644 --- a/core/spring-cloud-stream-binder-test/pom.xml +++ b/core/spring-cloud-stream-binder-test/pom.xml @@ -13,7 +13,7 @@ org.springframework.cloud spring-cloud-stream-core - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/core/spring-cloud-stream-integration-tests/pom.xml b/core/spring-cloud-stream-integration-tests/pom.xml index 22e0ffc43..be1b44838 100644 --- a/core/spring-cloud-stream-integration-tests/pom.xml +++ b/core/spring-cloud-stream-integration-tests/pom.xml @@ -12,7 +12,7 @@ org.springframework.cloud spring-cloud-stream-core - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/core/spring-cloud-stream-test-support-internal/pom.xml b/core/spring-cloud-stream-test-support-internal/pom.xml index 6733cffc0..920587a0a 100644 --- a/core/spring-cloud-stream-test-support-internal/pom.xml +++ b/core/spring-cloud-stream-test-support-internal/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-stream-core - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-stream-test-support-internal Set of classes and utility code that may assist in testing both diff --git a/core/spring-cloud-stream-test-support/pom.xml b/core/spring-cloud-stream-test-support/pom.xml index f22a1275b..549b7a964 100644 --- a/core/spring-cloud-stream-test-support/pom.xml +++ b/core/spring-cloud-stream-test-support/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-stream-core - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT spring-cloud-stream-test-support A set of classes to ease testing of Spring Cloud Stream modules. diff --git a/core/spring-cloud-stream/pom.xml b/core/spring-cloud-stream/pom.xml index 296aab416..cf5dbc29d 100644 --- a/core/spring-cloud-stream/pom.xml +++ b/core/spring-cloud-stream/pom.xml @@ -12,7 +12,7 @@ org.springframework.cloud spring-cloud-stream-core - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT diff --git a/docs/pom.xml b/docs/pom.xml index b251ef6f3..7bfb9a8fb 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -7,7 +7,7 @@ org.springframework.cloud spring-cloud-stream-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT jar spring-cloud-stream-docs @@ -47,50 +47,97 @@ git-commit-id-plugin + org.apache.maven.plugins maven-dependency-plugin + org.apache.maven.plugins maven-resources-plugin - org.codehaus.mojo - exec-maven-plugin - + org.codehaus.mojo + exec-maven-plugin + org.asciidoctor asciidoctor-maven-plugin + + + ${project.version} + ${spring-boot.version} + + + + org.apache.maven.plugins maven-antrun-plugin - - - readme - prepare-package - - run - - - - - - - - - - - - - - - - - maven-deploy-plugin + org.codehaus.mojo + build-helper-maven-plugin + + maven-deploy-plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/src/main/asciidoc/index.adoc b/docs/src/main/asciidoc/index.adoc index 9d35f742a..8d5e8e1a7 100644 --- a/docs/src/main/asciidoc/index.adoc +++ b/docs/src/main/asciidoc/index.adoc @@ -10,9 +10,12 @@ The reference documentation consists of the following sections: [horizontal] <> :: History, Quick Start, Concepts, Architecture Overview, Binder Abstraction, and Core Features -https://docs.spring.io/spring-cloud-stream-binder-rabbit/docs/{project-version}/reference/html/spring-cloud-stream-binder-rabbit.html[Rabbit MQ Binder] :: Spring Cloud Stream binder reference for Rabbit MQ -https://docs.spring.io/spring-cloud-stream-binder-kafka/docs/{project-version}/reference/html/spring-cloud-stream-binder-kafka.html#_apache_kafka_binder[Apache Kafka Binder] :: Spring Cloud Stream binder reference for Apache Kafka -https://docs.spring.io/spring-cloud-stream-binder-kafka/docs/{project-version}/reference/html/spring-cloud-stream-binder-kafka.html#_kafka_streams_binder[Apache Kafka Streams Binder] :: Spring Cloud Stream binder reference for Apache Kafka Streams +<> :: Spring Cloud Stream binder reference for Rabbit MQ +<> :: Spring Cloud Stream binder reference for Apache Kafka +<> :: Spring Cloud Stream binder reference for Apache Kafka Streams + + + <> :: A collection of Partner maintained binder implementations for Spring Cloud Stream (e.g., Azure Event Hubs, Google PubSub, Solace PubSub+) https://github.com/spring-cloud/spring-cloud-stream-samples/[Spring Cloud Stream Samples] :: A curated collection of repeatable Spring Cloud Stream samples to walk through the features diff --git a/binders/kafka-binder/docs/src/main/asciidoc/images/kafka-binder.png b/docs/src/main/asciidoc/kafka/images/kafka-binder.png old mode 100755 new mode 100644 similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/images/kafka-binder.png rename to docs/src/main/asciidoc/kafka/images/kafka-binder.png diff --git a/binders/kafka-binder/docs/src/main/asciidoc/images/kafka-streams-initializr.png b/docs/src/main/asciidoc/kafka/images/kafka-streams-initializr.png similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/images/kafka-streams-initializr.png rename to docs/src/main/asciidoc/kafka/images/kafka-streams-initializr.png diff --git a/binders/kafka-binder/docs/src/main/asciidoc/images/spring-initializr-kafka-streams.png b/docs/src/main/asciidoc/kafka/images/spring-initializr-kafka-streams.png similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/images/spring-initializr-kafka-streams.png rename to docs/src/main/asciidoc/kafka/images/spring-initializr-kafka-streams.png diff --git a/binders/kafka-binder/docs/src/main/asciidoc/kafka-streams.adoc b/docs/src/main/asciidoc/kafka/kafka-streams.adoc similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/kafka-streams.adoc rename to docs/src/main/asciidoc/kafka/kafka-streams.adoc diff --git a/binders/kafka-binder/docs/src/main/asciidoc/dlq.adoc b/docs/src/main/asciidoc/kafka/kafka_dlq.adoc similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/dlq.adoc rename to docs/src/main/asciidoc/kafka/kafka_dlq.adoc diff --git a/binders/kafka-binder/docs/src/main/asciidoc/overview.adoc b/docs/src/main/asciidoc/kafka/kafka_overview.adoc similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/overview.adoc rename to docs/src/main/asciidoc/kafka/kafka_overview.adoc diff --git a/binders/kafka-binder/docs/src/main/asciidoc/partitions.adoc b/docs/src/main/asciidoc/kafka/kafka_partitions.adoc similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/partitions.adoc rename to docs/src/main/asciidoc/kafka/kafka_partitions.adoc diff --git a/binders/kafka-binder/docs/src/main/asciidoc/tips.adoc b/docs/src/main/asciidoc/kafka/kafka_tips.adoc similarity index 100% rename from binders/kafka-binder/docs/src/main/asciidoc/tips.adoc rename to docs/src/main/asciidoc/kafka/kafka_tips.adoc diff --git a/binders/kafka-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-kafka.adoc b/docs/src/main/asciidoc/kafka/spring-cloud-stream-binder-kafka.adoc similarity index 89% rename from binders/kafka-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-kafka.adoc rename to docs/src/main/asciidoc/kafka/spring-cloud-stream-binder-kafka.adoc index 79d871825..852736d5f 100644 --- a/binders/kafka-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-kafka.adoc +++ b/docs/src/main/asciidoc/kafka/spring-cloud-stream-binder-kafka.adoc @@ -36,20 +36,14 @@ Sabby Anandan, Marius Bogoevici, Eric Bottard, Mark Fisher, Ilayaperumal Gopinat = Reference Guide -include::overview.adoc[] +include::kafka/kafka_overview.adoc[] -include::dlq.adoc[] +include::kafka/kafka_dlq.adoc[] -include::partitions.adoc[] +include::kafka/kafka_partitions.adoc[] -include::kafka-streams.adoc[] +include::kafka/kafka-streams.adoc[] -include::tips.adoc[] - -= Appendices -[appendix] -include::building.adoc[] - -include::contributing.adoc[] +include::kafka/kafka_tips.adoc[] // ====================================================================================== diff --git a/docs/src/main/asciidoc/preface.adoc b/docs/src/main/asciidoc/preface.adoc index 5b1c690fc..70b9bcbbf 100644 --- a/docs/src/main/asciidoc/preface.adoc +++ b/docs/src/main/asciidoc/preface.adoc @@ -52,7 +52,7 @@ If you chose RabbitMQ for the middleware, your Spring Initializr should now be a [%hardbreaks] [%hardbreaks] [%hardbreaks] -image::/docs/src/main/asciidoc/images/spring-initializr.png[align="center"] +image::spring-initializr.png[align="center"] [%hardbreaks] [%hardbreaks] diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/images/part-bindings.png b/docs/src/main/asciidoc/rabbit/images/part-bindings.png similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/images/part-bindings.png rename to docs/src/main/asciidoc/rabbit/images/part-bindings.png diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/images/part-exchange.png b/docs/src/main/asciidoc/rabbit/images/part-exchange.png similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/images/part-exchange.png rename to docs/src/main/asciidoc/rabbit/images/part-exchange.png diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/images/part-queues.png b/docs/src/main/asciidoc/rabbit/images/part-queues.png similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/images/part-queues.png rename to docs/src/main/asciidoc/rabbit/images/part-queues.png diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/images/rabbit-binder.png b/docs/src/main/asciidoc/rabbit/images/rabbit-binder.png old mode 100755 new mode 100644 similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/images/rabbit-binder.png rename to docs/src/main/asciidoc/rabbit/images/rabbit-binder.png diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/dlq.adoc b/docs/src/main/asciidoc/rabbit/rabbit_dlq.adoc similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/dlq.adoc rename to docs/src/main/asciidoc/rabbit/rabbit_dlq.adoc diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/overview.adoc b/docs/src/main/asciidoc/rabbit/rabbit_overview.adoc similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/overview.adoc rename to docs/src/main/asciidoc/rabbit/rabbit_overview.adoc diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/partitions.adoc b/docs/src/main/asciidoc/rabbit/rabbit_partitions.adoc similarity index 100% rename from binders/rabbit-binder/docs/src/main/asciidoc/partitions.adoc rename to docs/src/main/asciidoc/rabbit/rabbit_partitions.adoc diff --git a/binders/rabbit-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-rabbit.adoc b/docs/src/main/asciidoc/rabbit/spring-cloud-stream-binder-rabbit.adoc similarity index 91% rename from binders/rabbit-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-rabbit.adoc rename to docs/src/main/asciidoc/rabbit/spring-cloud-stream-binder-rabbit.adoc index d5feae6d8..e96bddb68 100644 --- a/binders/rabbit-binder/docs/src/main/asciidoc/spring-cloud-stream-binder-rabbit.adoc +++ b/docs/src/main/asciidoc/rabbit/spring-cloud-stream-binder-rabbit.adoc @@ -37,17 +37,10 @@ Sabby Anandan, Marius Bogoevici, Eric Bottard, Mark Fisher, Ilayaperumal Gopinat = Reference Guide -include::overview.adoc[] +include::rabbit/rabbit_overview.adoc[] -include::dlq.adoc[] +include::rabbit/rabbit_dlq.adoc[] -include::partitions.adoc[] - -= Appendices -[appendix] -include::building.adoc[] - -[appendix] -include::contributing.adoc[] +include::rabbit/rabbit_partitions.adoc[] // ====================================================================================== diff --git a/docs/src/main/asciidoc/spring-cloud-stream.adoc b/docs/src/main/asciidoc/spring-cloud-stream.adoc index df4d325f7..edb1dfe03 100644 --- a/docs/src/main/asciidoc/spring-cloud-stream.adoc +++ b/docs/src/main/asciidoc/spring-cloud-stream.adoc @@ -93,7 +93,7 @@ exposed by the external brokers and input/output arguments in your code. Broker necessary to establish bindings are handled by middleware-specific _Binder_ implementations. .Spring Cloud Stream Application -image::{github-raw}/docs/src/main/asciidoc/images/SCSt-with-binder.png[width=800,scaledwidth="75%",align="center"] +image::SCSt-with-binder.png[width=800,scaledwidth="75%",align="center"] ==== Fat JAR @@ -130,7 +130,7 @@ Communication between applications follows a publish-subscribe model, where data This can be seen in the following figure, which shows a typical deployment for a set of interacting Spring Cloud Stream applications. .Spring Cloud Stream Publish-Subscribe -image::{github-raw}/docs/src/main/asciidoc/images/SCSt-sensors.png[width=800,scaledwidth="75%",align="center"] +image::SCSt-sensors.png[width=800,scaledwidth="75%",align="center"] Data reported by sensors to an HTTP endpoint is sent to a common destination named `raw-sensor-data`. From the destination, it is independently processed by a microservice application that computes time-windowed averages and by another microservice application that ingests the raw data into HDFS (Hadoop Distributed File System). @@ -155,7 +155,7 @@ Each consumer binding can use the `spring.cloud.stream.bindings..gr For the consumers shown in the following figure, this property would be set as `spring.cloud.stream.bindings..group=hdfsWrite` or `spring.cloud.stream.bindings..group=average`. .Spring Cloud Stream Consumer Groups -image::{github-raw}/docs/src/main/asciidoc/images/SCSt-groups.png[width=800,scaledwidth="75%",align="center"] +image::SCSt-groups.png[width=800,scaledwidth="75%",align="center"] All groups that subscribe to a given destination receive a copy of published data, but only one member of each group receives a given message from that destination. By default, when a group is not specified, Spring Cloud Stream assigns the application to an anonymous and independent single-member consumer group that is in a publish-subscribe relationship with all other consumer groups. @@ -200,7 +200,7 @@ Spring Cloud Stream provides a common abstraction for implementing partitioned p Partitioning can thus be used whether the broker itself is naturally partitioned (for example, Kafka) or not (for example, RabbitMQ). .Spring Cloud Stream Partitioning -image::{github-raw}/docs/src/main/asciidoc/images/SCSt-partitioning.png[width=800,scaledwidth="75%",align="center"] +image::SCSt-partitioning.png[width=800,scaledwidth="75%",align="center"] Partitioning is a critical concept in stateful processing, where it is critical (for either performance or consistency reasons) to ensure that all related data is processed together. For example, in the time-windowed average calculation example, it is important that all measurements from any given sensor are processed by the same application instance. @@ -215,7 +215,7 @@ To understand the programming model, you should be familiar with the following c * *Bindings:* Bridge between the external messaging systems and application provided _Producers_ and _Consumers_ of messages (created by the Destination Binders). * *Message:* The canonical data structure used by producers and consumers to communicate with Destination Binders (and thus other applications via external messaging systems). -image::{github-raw}/docs/src/main/asciidoc/images/SCSt-overview.png[width=800,scaledwidth="75%",align="center"] +image::SCSt-overview.png[width=800,scaledwidth="75%",align="center"] === Destination Binders @@ -1693,7 +1693,7 @@ This section provides information about the main concepts behind the Binder SPI, The following image shows the general relationship of producers and consumers: .Producers and Consumers -image::{github-raw}/docs/src/main/asciidoc/images/producers-consumers.png[width=800,scaledwidth="75%",align="center"] +image::producers-consumers.png[width=800,scaledwidth="75%",align="center"] A producer is any component that sends messages to a binding destination. The binding destination can be bound to an external message broker with a `Binder` implementation for that broker. diff --git a/pom.xml b/pom.xml index 1be15939d..7c7f938e3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 spring-cloud-stream-parent - 3.2.3-SNAPSHOT + 3.2.4-SNAPSHOT pom org.springframework.cloud @@ -25,7 +25,7 @@ 1.8 2020.0.7 2.1 - 3.2.3-SNAPSHOT + 3.2.5-SNAPSHOT true true true