From 66b153560addf30802f88b1b54837cc02cd56be0 Mon Sep 17 00:00:00 2001 From: Stefan Botez Date: Tue, 8 Dec 2020 11:22:33 +0000 Subject: [PATCH 1/2] Separate GitHub actions workflows --- ...build-all.yml => aws-lambda-java-core.yml} | 17 +++++---- ...aws-lambda-java-events-sdk-transformer.yml | 31 ++++++++++++++++ .github/workflows/aws-lambda-java-events.yml | 37 +++++++++++++++++++ .github/workflows/aws-lambda-java-log4j2.yml | 31 ++++++++++++++++ ...s-lambda-java-runtime-interface-client.yml | 32 ++++++++++++++++ .../aws-lambda-java-serialization.yml | 36 ++++++++++++++++++ 6 files changed, 176 insertions(+), 8 deletions(-) rename .github/workflows/{maven-build-all.yml => aws-lambda-java-core.yml} (59%) create mode 100644 .github/workflows/aws-lambda-java-events-sdk-transformer.yml create mode 100644 .github/workflows/aws-lambda-java-events.yml create mode 100644 .github/workflows/aws-lambda-java-log4j2.yml create mode 100644 .github/workflows/aws-lambda-java-runtime-interface-client.yml create mode 100644 .github/workflows/aws-lambda-java-serialization.yml diff --git a/.github/workflows/maven-build-all.yml b/.github/workflows/aws-lambda-java-core.yml similarity index 59% rename from .github/workflows/maven-build-all.yml rename to .github/workflows/aws-lambda-java-core.yml index 13a2b9ea..545296a2 100644 --- a/.github/workflows/maven-build-all.yml +++ b/.github/workflows/aws-lambda-java-core.yml @@ -1,12 +1,17 @@ -# This workflow will build all Java packages in this project with Maven (Java 8) +# This workflow will be triggered if there will be changes to aws-lambda-java-core +# package and it builds the package and the packages that depend on it. -name: Java CI with Maven +name: Java CI aws-lambda-java-core on: push: branches: [ master ] + paths: + - 'aws-lambda-java-core/**' pull_request: branches: [ '*' ] + paths: + - 'aws-lambda-java-core/**' jobs: build: @@ -20,15 +25,11 @@ jobs: with: java-version: 1.8 - # Install base modules + # Install base module - name: Build core with Maven run: mvn -B install --file aws-lambda-java-core/pom.xml - - name: Build events with Maven - run: mvn -B install --file aws-lambda-java-events/pom.xml - # Package modules that depend on base modules - - name: Build events-sdk-transformer with Maven - run: mvn -B package --file aws-lambda-java-events-sdk-transformer/pom.xml + # Package modules that depend on base module - name: Build log4j2 with Maven run: mvn -B package --file aws-lambda-java-log4j2/pom.xml diff --git a/.github/workflows/aws-lambda-java-events-sdk-transformer.yml b/.github/workflows/aws-lambda-java-events-sdk-transformer.yml new file mode 100644 index 00000000..5396ea7f --- /dev/null +++ b/.github/workflows/aws-lambda-java-events-sdk-transformer.yml @@ -0,0 +1,31 @@ +# This workflow will be triggered if there will be changes to +# aws-lambda-java-events-sdk-transformer package and it builds the package. + +name: Java CI aws-lambda-java-events-sdk-transformer + +on: + push: + branches: [ master ] + paths: + - 'aws-lambda-java-events-sdk-transformer/**' + pull_request: + branches: [ '*' ] + paths: + - 'aws-lambda-java-events-sdk-transformer/**' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Install base module + - name: Build events-sdk-transformer with Maven + run: mvn -B install --file aws-lambda-java-events-sdk-transformer/pom.xml + diff --git a/.github/workflows/aws-lambda-java-events.yml b/.github/workflows/aws-lambda-java-events.yml new file mode 100644 index 00000000..6b7e2f81 --- /dev/null +++ b/.github/workflows/aws-lambda-java-events.yml @@ -0,0 +1,37 @@ +# This workflow will be triggered if there will be changes to aws-lambda-java-events +# package and it builds the package and the packages that depend on it. + +name: Java CI aws-lambda-java-events + +on: + push: + branches: [ master ] + paths: + - 'aws-lambda-java-events/**' + pull_request: + branches: [ '*' ] + paths: + - 'aws-lambda-java-events/**' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Install base module + - name: Build events with Maven + run: mvn -B install --file aws-lambda-java-events/pom.xml + + # Package modules that depend on base module + - name: Build serialization with Maven + run: mvn -B package --file aws-lambda-java-serialization/pom.xml + - name: Build events-sdk-transformer with Maven + run: mvn -B package --file aws-lambda-java-events-sdk-transformer/pom.xml + diff --git a/.github/workflows/aws-lambda-java-log4j2.yml b/.github/workflows/aws-lambda-java-log4j2.yml new file mode 100644 index 00000000..1fb1635d --- /dev/null +++ b/.github/workflows/aws-lambda-java-log4j2.yml @@ -0,0 +1,31 @@ +# This workflow will be triggered if there will be changes to +# aws-lambda-java-log4j2 package and it builds the package. + +name: Java CI aws-lambda-java-log4j2 + +on: + push: + branches: [ master ] + paths: + - 'aws-lambda-java-log4j2/**' + pull_request: + branches: [ '*' ] + paths: + - 'aws-lambda-java-log4j2/**' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Install base module + - name: Build log4j2 with Maven + run: mvn -B install --file aws-lambda-java-log4j2/pom.xml + diff --git a/.github/workflows/aws-lambda-java-runtime-interface-client.yml b/.github/workflows/aws-lambda-java-runtime-interface-client.yml new file mode 100644 index 00000000..c5c8d36e --- /dev/null +++ b/.github/workflows/aws-lambda-java-runtime-interface-client.yml @@ -0,0 +1,32 @@ +# This workflow will be triggered if there will be changes to +# aws-lambda-java-runtime-interface-client package and it builds the package. + +name: Java CI aws-lambda-java-runtime-interface-client + +on: + push: + branches: [ master ] + paths: + - 'aws-lambda-java-runtime-interface-client/**' + pull_request: + branches: [ '*' ] + paths: + - 'aws-lambda-java-runtime-interface-client/**' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Test Runtime Interface Client + - name: Run 'pr' target + working-directory: ./aws-lambda-java-runtime-interface-client + run: make pr + diff --git a/.github/workflows/aws-lambda-java-serialization.yml b/.github/workflows/aws-lambda-java-serialization.yml new file mode 100644 index 00000000..f25aaa93 --- /dev/null +++ b/.github/workflows/aws-lambda-java-serialization.yml @@ -0,0 +1,36 @@ +# This workflow will be triggered if there will be changes to aws-lambda-java-serialization +# package and it builds the package and the packages that depend on it. + +name: Java CI aws-lambda-java-serialization + +on: + push: + branches: [ master ] + paths: + - 'aws-lambda-java-serialization/**' + pull_request: + branches: [ '*' ] + paths: + - 'aws-lambda-java-serialization/**' + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + # Install base module + - name: Build serialization with Maven + run: mvn -B install --file aws-lambda-java-serialization/pom.xml + + # Test Runtime Interface Client + - name: Run 'pr' target + working-directory: ./aws-lambda-java-runtime-interface-client + run: make pr + From 8a88167b01f576ff4c5c673393fa9bf0af166e22 Mon Sep 17 00:00:00 2001 From: Stefan Botez Date: Tue, 8 Dec 2020 13:43:59 +0000 Subject: [PATCH 2/2] Include building dependency modules in workflows --- .../workflows/aws-lambda-java-events-sdk-transformer.yml | 7 +++++-- .github/workflows/aws-lambda-java-log4j2.yml | 5 ++++- .../workflows/aws-lambda-java-runtime-interface-client.yml | 5 +++++ .github/workflows/aws-lambda-java-serialization.yml | 3 +++ 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/.github/workflows/aws-lambda-java-events-sdk-transformer.yml b/.github/workflows/aws-lambda-java-events-sdk-transformer.yml index 5396ea7f..b4d6d375 100644 --- a/.github/workflows/aws-lambda-java-events-sdk-transformer.yml +++ b/.github/workflows/aws-lambda-java-events-sdk-transformer.yml @@ -24,8 +24,11 @@ jobs: uses: actions/setup-java@v1 with: java-version: 1.8 - + # Install base module + - name: Build events with Maven + run: mvn -B install --file aws-lambda-java-events/pom.xml + # Package target module - name: Build events-sdk-transformer with Maven - run: mvn -B install --file aws-lambda-java-events-sdk-transformer/pom.xml + run: mvn -B package --file aws-lambda-java-events-sdk-transformer/pom.xml diff --git a/.github/workflows/aws-lambda-java-log4j2.yml b/.github/workflows/aws-lambda-java-log4j2.yml index 1fb1635d..2e5b5270 100644 --- a/.github/workflows/aws-lambda-java-log4j2.yml +++ b/.github/workflows/aws-lambda-java-log4j2.yml @@ -26,6 +26,9 @@ jobs: java-version: 1.8 # Install base module + - name: Build core with Maven + run: mvn -B install --file aws-lambda-java-core/pom.xml + # Package target module - name: Build log4j2 with Maven - run: mvn -B install --file aws-lambda-java-log4j2/pom.xml + run: mvn -B package --file aws-lambda-java-log4j2/pom.xml diff --git a/.github/workflows/aws-lambda-java-runtime-interface-client.yml b/.github/workflows/aws-lambda-java-runtime-interface-client.yml index c5c8d36e..3e1e41ed 100644 --- a/.github/workflows/aws-lambda-java-runtime-interface-client.yml +++ b/.github/workflows/aws-lambda-java-runtime-interface-client.yml @@ -25,6 +25,11 @@ jobs: with: java-version: 1.8 + # Install base modules + - name: Build core with Maven + run: mvn -B install --file aws-lambda-java-core/pom.xml + - name: Build serialization with Maven + run: mvn -B install --file aws-lambda-java-serialization/pom.xml # Test Runtime Interface Client - name: Run 'pr' target working-directory: ./aws-lambda-java-runtime-interface-client diff --git a/.github/workflows/aws-lambda-java-serialization.yml b/.github/workflows/aws-lambda-java-serialization.yml index f25aaa93..c1c402fe 100644 --- a/.github/workflows/aws-lambda-java-serialization.yml +++ b/.github/workflows/aws-lambda-java-serialization.yml @@ -26,6 +26,9 @@ jobs: java-version: 1.8 # Install base module + - name: Build events with Maven + run: mvn -B install --file aws-lambda-java-events/pom.xml + # Install target module - name: Build serialization with Maven run: mvn -B install --file aws-lambda-java-serialization/pom.xml