split up in multiple (parallel) build modules
This commit is contained in:
22
.github/workflows/ci.yml
vendored
22
.github/workflows/ci.yml
vendored
@@ -3,11 +3,25 @@ name: CI
|
||||
on: [push]
|
||||
|
||||
jobs:
|
||||
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
# The MODULE environment variable is evaluated in build-all.sh to run a subset
|
||||
# of the builds. This way, multiple modules can be built in parallel.
|
||||
module:
|
||||
- module1
|
||||
- module2
|
||||
- module3
|
||||
- module4
|
||||
|
||||
steps:
|
||||
|
||||
- name: "Checkout sources"
|
||||
uses: actions/checkout@v1
|
||||
|
||||
- name: "Setup Java"
|
||||
uses: actions/setup-java@v1
|
||||
env:
|
||||
@@ -18,5 +32,9 @@ jobs:
|
||||
AWS_REGION: ${{ secrets.AWSREGION }}
|
||||
with:
|
||||
java-version: 13
|
||||
- name: "Build all modules"
|
||||
run: chmod 755 build-all.sh && ./build-all.sh
|
||||
|
||||
- name: "Build module ${{ matrix.module }}"
|
||||
with:
|
||||
MODULE: ${{ matrix.module }}
|
||||
run: |
|
||||
chmod 755 build-all.sh && ./build-all.sh
|
||||
|
||||
135
build-all.sh
135
build-all.sh
@@ -81,58 +81,85 @@ build_maven_module() {
|
||||
}
|
||||
}
|
||||
|
||||
build_maven_module "spring-boot/spring-boot-kafka"
|
||||
build_maven_module "resilience4j/retry"
|
||||
build_maven_module "solid/lsp"
|
||||
run_gradle_task "spring-boot/thymeleaf-vue" "npmInstall"
|
||||
build_gradle_module "spring-boot/thymeleaf-vue"
|
||||
build_gradle_module "spring-boot/spring-boot-springdoc"
|
||||
build_maven_module "spring-boot/dependency-injection"
|
||||
build_maven_module "spring-boot/spring-boot-openapi"
|
||||
build_maven_module "spring-boot/data-migration/liquibase"
|
||||
build_gradle_module "spring-boot/boundaries"
|
||||
build_gradle_module "spring-boot/argumentresolver"
|
||||
build_gradle_module "spring-data/spring-data-jdbc-converter"
|
||||
build_gradle_module "solid"
|
||||
build_gradle_module "spring-boot/data-migration/flyway"
|
||||
build_gradle_module "reactive"
|
||||
build_gradle_module "junit/assumptions"
|
||||
build_gradle_module "logging"
|
||||
build_gradle_module "pact/pact-feign-consumer"
|
||||
# currently disabled since the consumer build won't run
|
||||
# build_gradle_module "pact/pact-message-consumer"
|
||||
# build_gradle_module "pact/pact-message-producer"
|
||||
build_gradle_module "pact/pact-spring-provider"
|
||||
build_gradle_module "patterns"
|
||||
build_gradle_module "spring-boot/conditionals"
|
||||
build_gradle_module "spring-boot/configuration"
|
||||
build_gradle_module "spring-boot/mocking"
|
||||
build_gradle_module "spring-boot/modular"
|
||||
build_gradle_module "spring-boot/paging"
|
||||
build_gradle_module "spring-boot/rabbitmq-event-brokering"
|
||||
build_gradle_module "spring-boot/spring-boot-logging"
|
||||
build_gradle_module "spring-boot/spring-boot-testing"
|
||||
build_gradle_module "spring-boot/starter"
|
||||
build_gradle_module "spring-boot/startup"
|
||||
build_gradle_module "spring-boot/static"
|
||||
build_gradle_module "spring-boot/validation"
|
||||
build_gradle_module "spring-boot/profiles"
|
||||
build_gradle_module "spring-boot/password-encoding"
|
||||
build_gradle_module "spring-boot/testcontainers"
|
||||
build_gradle_module "spring-boot/hazelcast/hazelcast-embedded-cache"
|
||||
build_gradle_module "spring-boot/hazelcast/hazelcast-client-server"
|
||||
build_gradle_module "spring-boot/cache"
|
||||
build_gradle_module "spring-cloud/feign-with-spring-data-rest"
|
||||
build_gradle_module "spring-cloud/sleuth-downstream-service"
|
||||
build_gradle_module "spring-cloud/sleuth-upstream-service"
|
||||
build_gradle_module "spring-cloud/spring-cloud-contract-consumer"
|
||||
build_gradle_module "spring-cloud/spring-cloud-contract-provider"
|
||||
build_gradle_module "spring-data/spring-data-rest-associations"
|
||||
build_gradle_module "spring-data/spring-data-rest-springfox"
|
||||
build_gradle_module "tools/jacoco"
|
||||
build_maven_module "aws/localstack"
|
||||
if [[ "$MODULE" == "module1" ]]
|
||||
then
|
||||
build_maven_module "spring-boot/spring-boot-kafka"
|
||||
build_gradle_module "spring-boot/thymeleaf-vue"
|
||||
build_gradle_module "spring-boot/spring-boot-springdoc"
|
||||
build_maven_module "spring-boot/dependency-injection"
|
||||
build_maven_module "spring-boot/spring-boot-openapi"
|
||||
build_maven_module "spring-boot/data-migration/liquibase"
|
||||
build_gradle_module "spring-boot/boundaries"
|
||||
build_gradle_module "spring-boot/argumentresolver"
|
||||
build_gradle_module "spring-boot/data-migration/flyway"
|
||||
run_gradle_task "spring-boot/thymeleaf-vue" "npmInstall"
|
||||
build_gradle_module "spring-boot/conditionals"
|
||||
build_gradle_module "spring-boot/configuration"
|
||||
|
||||
echo ""
|
||||
echo "+++"
|
||||
echo "+++ ALL MODULES SUCCESSFUL"
|
||||
echo "+++"
|
||||
echo ""
|
||||
echo "+++"
|
||||
echo "+++ MODULE 1 SUCCESSFUL"
|
||||
echo "+++"
|
||||
fi
|
||||
|
||||
if [[ "$MODULE" == "module2" ]]
|
||||
then
|
||||
build_maven_module "resilience4j/retry"
|
||||
build_maven_module "solid/lsp"
|
||||
build_gradle_module "spring-data/spring-data-jdbc-converter"
|
||||
build_gradle_module "solid"
|
||||
build_gradle_module "reactive"
|
||||
build_gradle_module "junit/assumptions"
|
||||
build_gradle_module "logging"
|
||||
build_gradle_module "pact/pact-feign-consumer"
|
||||
|
||||
echo ""
|
||||
echo "+++"
|
||||
echo "+++ MODULE 2 SUCCESSFUL"
|
||||
echo "+++"
|
||||
fi
|
||||
|
||||
if [[ "$MODULE" == "module3" ]]
|
||||
then
|
||||
build_gradle_module "pact/pact-spring-provider"
|
||||
build_gradle_module "patterns"
|
||||
build_gradle_module "spring-cloud/feign-with-spring-data-rest"
|
||||
build_gradle_module "spring-cloud/sleuth-downstream-service"
|
||||
build_gradle_module "spring-cloud/sleuth-upstream-service"
|
||||
build_gradle_module "spring-cloud/spring-cloud-contract-consumer"
|
||||
build_gradle_module "spring-cloud/spring-cloud-contract-provider"
|
||||
build_gradle_module "spring-data/spring-data-rest-associations"
|
||||
build_gradle_module "spring-data/spring-data-rest-springfox"
|
||||
build_gradle_module "tools/jacoco"
|
||||
build_maven_module "aws/localstack"
|
||||
|
||||
echo ""
|
||||
echo "+++"
|
||||
echo "+++ MODULE 3 SUCCESSFUL"
|
||||
echo "+++"
|
||||
fi
|
||||
|
||||
if [[ "$MODULE" == "module4" ]]
|
||||
then
|
||||
build_gradle_module "spring-boot/mocking"
|
||||
build_gradle_module "spring-boot/modular"
|
||||
build_gradle_module "spring-boot/paging"
|
||||
build_gradle_module "spring-boot/rabbitmq-event-brokering"
|
||||
build_gradle_module "spring-boot/spring-boot-logging"
|
||||
build_gradle_module "spring-boot/spring-boot-testing"
|
||||
build_gradle_module "spring-boot/starter"
|
||||
build_gradle_module "spring-boot/startup"
|
||||
build_gradle_module "spring-boot/static"
|
||||
build_gradle_module "spring-boot/validation"
|
||||
build_gradle_module "spring-boot/profiles"
|
||||
build_gradle_module "spring-boot/password-encoding"
|
||||
build_gradle_module "spring-boot/testcontainers"
|
||||
build_gradle_module "spring-boot/hazelcast/hazelcast-embedded-cache"
|
||||
build_gradle_module "spring-boot/hazelcast/hazelcast-client-server"
|
||||
build_gradle_module "spring-boot/cache"
|
||||
|
||||
echo ""
|
||||
echo "+++"
|
||||
echo "+++ MODULE 4 SUCCESSFUL"
|
||||
echo "+++"
|
||||
fi
|
||||
0
patterns/gradlew
vendored
Normal file → Executable file
0
patterns/gradlew
vendored
Normal file → Executable file
@@ -6,7 +6,7 @@ plugins {
|
||||
|
||||
group = 'io.reflectoring'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
sourceCompatibility = '13'
|
||||
sourceCompatibility = '11'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -5,7 +5,7 @@ plugins {
|
||||
|
||||
group = 'io.reflectoring'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
sourceCompatibility = '13'
|
||||
sourceCompatibility = '11'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
Reference in New Issue
Block a user