Replace Bamboo SCDF samples build w/ GitHub actions (#159)

Add GitHub actions based CI pipeline

Resolves #155
This commit is contained in:
Chris Bono
2022-01-21 11:31:06 -06:00
committed by GitHub
parent 547f87027b
commit ef1a52efd9
11 changed files with 501 additions and 91 deletions

View File

@@ -0,0 +1,76 @@
name: 'Build Sample App'
description: 'Builds a sample app and optionally publishes to Artifactory and pushes to a Docker registry'
inputs:
app-dir:
description: 'relative path to the app directory'
required: true
mvn-build-commands:
description: 'commands passed to \"mvnw" to build the app'
required: false
default: '-B clean verify'
artifactory-publish:
description: 'whether or not to publish to artifactory'
required: false
default: 'false'
jf-artifactory-spring:
description: 'encoded JFrog server id configuration'
required: false
jf-mvn-build-commands:
description: 'commands passed to \"jfrog rt mvn\" to publish the app'
required: false
default: '-B clean install -DskipTests'
docker-push:
description: 'whether or not to push docker image to docker hub'
required: false
default: 'false'
docker-registry:
description: 'docker registry'
required: false
docker-username:
description: 'docker username'
required: false
docker-password:
description: 'docker password'
required: false
docker-images:
description: 'csv of docker images to push'
required: false
docker-images-override:
description: 'csv of docker image tags to use when pushing (parallel array to docker-images)'
required: false
runs:
using: "composite"
steps:
- uses: actions/checkout@v2
- uses: jvalkeal/setup-maven@v1
with:
maven-version: 3.8.4
- uses: actions/setup-java@v2
with:
distribution: adopt
java-version: 8
cache: maven
- name: Maven build
shell: bash
run: ./mvnw ${{ inputs.mvn-build-commands }}
working-directory: ${{ inputs.app-dir }}
- uses: ./.github/actions/build-sample-app/artifactory-publish
if: ${{ inputs.artifactory-publish == 'true' }}
with:
app-dir: ${{ inputs.app-dir }}
jf-artifactory-spring: ${{ inputs.jf-artifactory-spring }}
jf-mvn-build-commands: ${{ inputs.jf-mvn-build-commands }}
- uses: ./.github/actions/build-sample-app/docker-push
if: ${{ inputs.docker-push == 'true' }}
with:
app-dir: ${{ inputs.app-dir }}
docker-registry: ${{ inputs.docker-registry }}
docker-username: ${{ inputs.docker-username }}
docker-password: ${{ inputs.docker-password }}
docker-images: ${{ inputs.docker-images }}
docker-images-override: ${{ inputs.docker-images-override }}

View File

@@ -0,0 +1,45 @@
name: 'Sample App Publish'
description: 'Publishes a sample app to Artifactory'
inputs:
app-dir:
description: 'relative path to the app directory'
required: true
jf-artifactory-spring:
description: 'encoded JFrog server id configuration'
required: true
jf-mvn-build-commands:
description: 'commands passed to \"jfrog rt mvn\" to publish the app'
required: false
default: '-B clean install -DskipTests'
runs:
using: "composite"
steps:
- name: Setup JFrog CLI
uses: jfrog/setup-jfrog-cli@v1
with:
version: 1.46.4
env:
JF_ARTIFACTORY_SPRING: ${{ inputs.jf-artifactory-spring }}
- name: Configure JFrog Cli
shell: bash
run: |
jfrog rt mvnc \
--server-id-resolve=repo.spring.io \
--server-id-deploy=repo.spring.io \
--repo-resolve-releases=libs-milestone \
--repo-resolve-snapshots=libs-snapshot \
--repo-deploy-releases=release \
--repo-deploy-snapshots=snapshot
echo JFROG_CLI_BUILD_NAME=spring-cloud-dataflow-samples >> $GITHUB_ENV
echo JFROG_CLI_BUILD_NUMBER=$GITHUB_RUN_NUMBER >> $GITHUB_ENV
working-directory: ${{ inputs.app-dir }}
- name: Publish to Artifactory
shell: bash
run: |
jfrog rt mvn ${{ inputs.jf-mvn-build-commands }}
jfrog rt build-publish
working-directory: ${{ inputs.app-dir }}

View File

@@ -0,0 +1,73 @@
name: 'Sample App Push'
description: 'Pushes a containerized sample app to Docker'
inputs:
app-dir:
description: 'relative path to the app directory'
required: true
docker-registry:
description: 'docker registry'
required: false
docker-username:
description: 'docker username'
required: true
docker-password:
description: 'docker password'
required: true
docker-images:
description: 'csv of docker images to push'
required: true
docker-images-override:
description: 'csv of docker image tags to use when pushing (parallel array to docker-images)'
required: false
runs:
using: "composite"
steps:
- name: Login Dockerhub
uses: docker/login-action@v1
with:
registry: ${{ inputs.docker-registry }}
username: ${{ inputs.docker-username }}
password: ${{ inputs.docker-password }}
- name: Push images to Dockerhub
env:
DOCKER_REGISTRY: ${{ inputs.docker-registry }}
DOCKER_IMAGES: ${{ inputs.docker-images }}
DOCKER_IMAGES_OVERRIDE: ${{ inputs.docker-images-override }}
working-directory: ${{ inputs.app-dir }}
shell: bash
run: |
# read the images into arrays
read -r -a images <<< "$DOCKER_IMAGES"
read -r -a imagesOverride <<< "$DOCKER_IMAGES_OVERRIDE"
# validate lengths if override specified
numImages=${#images[@]}
numImagesOverride=${#imagesOverride[@]}
if [[ $numImagesOverride -gt 0 && $numImages -ne $numImagesOverride ]]; then
echo "when 'docker-images-override' is specified it must be the same length as 'docker-images'"
exit 1
fi
# determine the target images name based on registry and override
for idx in "${!images[@]}"
do
# use override if specified
if [[ $numImagesOverride -gt 0 ]]; then
image="${imagesOverride[idx]}"
else
image="${images[idx]}"
fi
# pre-pend registry if specified
if [[ "$DOCKER_REGISTRY" != "" ]]; then
image="$DOCKER_REGISTRY/$image"
fi
# tag the original image if it has changed (override and/or registry)
originalImage="${images[idx]}"
if [[ "$image" != "$originalImage" ]]; then
docker tag ${originalImage} ${image}
fi
docker push ${image}
done

View File

@@ -5,18 +5,11 @@ on:
jobs:
build:
runs-on: ubuntu-latest
name: CI PR Build
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
with:
distribution: adopt
java-version: 8
cache: maven
- name: Build kafka-samples
run: ./mvnw -B package
working-directory: kafka-samples
- name: Build multio-samples/ticktock
run: ./mvnw -B package
working-directory: multio-samples/ticktock
name: Call Build Workflow
uses: spring-cloud/spring-cloud-dataflow-samples/.github/workflows/ci.yml@main
with:
maven-build-only: true
secrets:
JF_ARTIFACTORY_SPRING: ${{ secrets.JF_ARTIFACTORY_SPRING }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_TOKEN: ${{ secrets.DOCKER_TOKEN }}

View File

@@ -1,41 +0,0 @@
name: CI Publish
on:
workflow_call:
secrets:
jfArtifactorySpring:
required: true
jobs:
publish:
runs-on: ubuntu-latest
name: CI Publish
steps:
- uses: actions/checkout@v2
- uses: jvalkeal/setup-maven@v1
with:
maven-version: 3.8.4
- uses: actions/setup-java@v2
with:
distribution: adopt
java-version: 8
- uses: jfrog/setup-jfrog-cli@v1
with:
version: 1.46.4
env:
JF_ARTIFACTORY_SPRING: ${{ secrets.jfArtifactorySpring }}
- name: Configure JFrog Cli
run: |
jfrog rt mvnc \
--server-id-resolve=repo.spring.io \
--server-id-deploy=repo.spring.io \
--repo-resolve-releases=libs-milestone \
--repo-resolve-snapshots=libs-snapshot \
--repo-deploy-releases=release \
--repo-deploy-snapshots=snapshot
echo JFROG_CLI_BUILD_NAME=spring-shell-main >> $GITHUB_ENV
echo JFROG_CLI_BUILD_NUMBER=$GITHUB_RUN_NUMBER >> $GITHUB_ENV
- name: Build and Publish
run: |
jfrog rt mvn -B clean install -DskipTests
jfrog rt build-publish

View File

@@ -1,38 +1,296 @@
name: CI
on:
workflow_dispatch:
# Called when code gets pushed to the main branch
push:
# branches:
# - 'main'
# paths:
# - 'scenario-task'
branches:
- main
paths-ignore:
- '.github/**'
# Called by UI
workflow_dispatch:
# Called by the CI PR workflow (invokes main CI but skips publish and push)
workflow_call:
inputs:
maven-build-only:
type: boolean
description: Skip Artifactory publish and Docker push for all apps
required: false
default: 'false'
secrets:
JF_ARTIFACTORY_SPRING:
description: 'encoded JFrog server id configuration'
required: false
DOCKER_USERNAME:
description: 'docker username'
required: false
DOCKER_TOKEN:
description: 'docker password'
required: false
jobs:
build:
kafka-samples:
runs-on: ubuntu-latest
strategy:
fail-fast: false
name: CI Build
steps:
- uses: actions/checkout@v2
- uses: actions/setup-java@v2
- uses: ./.github/actions/build-sample-app
with:
distribution: adopt
java-version: 8
cache: maven
- name: Build kafka-samples
run: ./mvnw -B package
working-directory: kafka-samples
- name: Build multio-samples/ticktock
run: ./mvnw -B package
working-directory: multio-samples/ticktock
app-dir: 'kafka-samples'
mvn-build-commands: '-B clean verify -Pspring'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
# publish:
# needs: [build]
# name: Call Publish Snapshot
# uses: spring-cloud/spring-cloud-dataflow-samples/.github/workflows/ci-publish.yml@main
# secrets:
# jfArtifactorySpring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
multi-io-ticktock:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'multi-io-samples/ticktock'
mvn-build-commands: '-B clean install -Dmaven.javadoc.skip=true jib:dockerBuild -pl multi-output-time-rabbit,multi-input-log-rabbit,multi-output-time-kafka,multi-input-log-kafka'
multi-io-http-purchase-orders:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'multi-io-samples/purchase-orders/http-purchase-orders'
mvn-build-commands: '-B clean install jib:dockerBuild'
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/multi-io-sample-http-purchase-orders:1.0.0-SNAPSHOT
user-clicks-per-region-12x:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'multi-io-samples/kafka-streams/user-clicks-per-region-1.2.x'
mvn-build-commands: '-B clean install jib:dockerBuild -pl http-click-ingest,http-region-ingest,http-clicks-and-region-ingest,user-clicks-per-region-processor,log-user-clicks-per-region'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/multi-io-sample-http-click-ingest:1.2.0-SNAPSHOT
springcloudstream/multi-io-sample-http-region-ingest:1.2.0-SNAPSHOT
springcloudstream/multi-io-sample-http-clicks-and-region-ingest:1.2.0-SNAPSHOT
springcloudstream/multi-io-sample-user-clicks-per-region-processor:1.2.0-SNAPSHOT
springcloudstream/multi-io-sample-log-user-clicks-per-region:1.2.0-SNAPSHOT
function-samples:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'function-samples'
mvn-build-commands: '-B clean verify -Pspring'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
function-samples-uppercase-processor:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'function-samples/uppercase-processor'
mvn-build-commands: '-B clean install jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/uppercase-processor:1.0.0-SNAPSHOT
stream-dev-guides-standalone-stream-kafka:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/stream-developer-guides/streams/standalone-stream-sample'
mvn-build-commands: '-B clean install jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/usage-detail-sender-kafka:0.0.1-SNAPSHOT
springcloudstream/usage-cost-processor-kafka:0.0.1-SNAPSHOT
springcloudstream/usage-cost-logger-kafka:0.0.1-SNAPSHOT
stream-dev-guides-standalone-stream-rabbitmq:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/stream-developer-guides/streams/standalone-stream-sample'
mvn-build-commands: '-B clean install -Prabbit jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
jf-mvn-build-commands: '-B clean install -Prabbit -DskipTests'
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/usage-detail-sender-rabbit:0.0.1-SNAPSHOT
springcloudstream/usage-cost-processor-rabbit:0.0.1-SNAPSHOT
springcloudstream/usage-cost-logger-rabbit:0.0.1-SNAPSHOT
batch-dev-guides-batchsamples:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/batch-developer-guides/batch/batchsamples'
mvn-build-commands: '-B clean install spring-boot:build-image -Dspring-boot.build-image.imageName=springcloudtask/billsetuptask:0.0.1-SNAPSHOT'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudtask/billsetuptask:0.0.1-SNAPSHOT
stream-dev-guides-composed-http-transformer-kafka:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-kafka'
mvn-build-commands: '-B clean install jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/composed-http-transformer-kafka:0.0.1-SNAPSHOT
stream-dev-guides-composed-http-transformer-kotlin-kafka:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-kotlin-kafka'
mvn-build-commands: '-B clean install jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/composed-http-transformer-kotlin-kafka:0.0.1-SNAPSHOT
stream-dev-guides-composed-http-transformer-rabbitmq:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-rabbitmq'
mvn-build-commands: '-B clean install jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/composed-http-transformer-rabbitmq:0.0.1-SNAPSHOT
stream-dev-guides-composed-http-transformer-kotlin-rabbitmq:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'dataflow-website/stream-developer-guides/feature-guides/streams/function-composition/composed-http-transformer-kotlin-rabbitmq'
mvn-build-commands: '-B clean install jib:dockerBuild'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudstream/composed-http-transformer-kotlin-rabbitmq:0.0.1-SNAPSHOT
task-demo-metrics-prometheus:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'monitoring-samples/task-apps/task-demo-metrics-prometheus'
mvn-build-commands: '-B clean install docker:build'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudtask/task-demo-metrics-prometheus:0.0.4-SNAPSHOT
scenario-task:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'scenario-task'
mvn-build-commands: '-B clean install spring-boot:build-image -Dspring-boot.build-image.imageName=springcloudtask/scenario-task:0.0.1-SNAPSHOT'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudtask/scenario-task:0.0.1-SNAPSHOT
timestamp-task:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'timestamp-task'
mvn-build-commands: '-B clean install spring-boot:build-image -Dspring-boot.build-image.imageName=springcloudtask/timestamp-task:1.0.0'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudtask/timestamp-task:1.0.0
timestamp-batch:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./.github/actions/build-sample-app
with:
app-dir: 'timestamp-batch'
mvn-build-commands: '-B clean install spring-boot:build-image -Dspring-boot.build-image.imageName=springcloudtask/timestamp-batch-task:1.0.0'
artifactory-publish: ${{ inputs.maven-build-only != 'true' }}
jf-artifactory-spring: ${{ secrets.JF_ARTIFACTORY_SPRING }}
docker-push: ${{ inputs.maven-build-only != 'true' }}
docker-username: ${{ secrets.DOCKERHUB_USERNAME }}
docker-password: ${{ secrets.DOCKERHUB_TOKEN }}
docker-images: >-
springcloudtask/timestamp-batch-task:1.0.0

View File

@@ -68,6 +68,9 @@
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<binder>kafka</binder>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
@@ -77,6 +80,9 @@
</profile>
<profile>
<id>rabbit</id>
<properties>
<binder>rabbit</binder>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>

View File

@@ -9,9 +9,9 @@
<relativePath>..</relativePath>
</parent>
<artifactId>usage-cost-logger</artifactId>
<name>usage-cost-logger</name>
<description>Demo project for Spring Boot</description>
<artifactId>usage-cost-logger-${binder}</artifactId>
<name>usage-cost-logger-${binder}</name>
<description>Demo project for Spring Boot (${binder})</description>
<dependencies>
<dependency>

View File

@@ -8,9 +8,9 @@
<version>0.0.1-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>usage-cost-processor</artifactId>
<name>usage-cost-processor</name>
<description>Demo project for Spring Boot</description>
<artifactId>usage-cost-processor-${binder}</artifactId>
<name>usage-cost-processor-${binder}</name>
<description>Demo project for Spring Boot (${binder})</description>
<dependencies>
<dependency>

View File

@@ -8,9 +8,9 @@
<version>0.0.1-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>usage-detail-sender</artifactId>
<name>usage-detail-sender</name>
<description>Demo project for Spring Boot</description>
<artifactId>usage-detail-sender-${binder}</artifactId>
<name>usage-detail-sender-${binder}</name>
<description>Demo project for Spring Boot (${binder})</description>
<dependencies>
<dependency>

View File

@@ -17,7 +17,7 @@
<properties>
<java.version>8</java.version>
<spring-cloud.version>Hoxton.SR9</spring-cloud.version>
<test-container-version>1.15.0</test-container-version>
<test-container-version>1.15.3</test-container-version>
</properties>
<dependencies>