Skip to content

Commit 992cf9f

Browse files
author
Davide Melfi
committed
chore: parallelizing multiple builds
1 parent ad53eb0 commit 992cf9f

File tree

1 file changed

+39
-8
lines changed

1 file changed

+39
-8
lines changed

.github/workflows/runtime-interface-client_pr.yml

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ jobs:
4848
env:
4949
IS_JAVA_8: ${{ matrix.java-version == 8 }}
5050

51-
build:
51+
build-base:
5252
runs-on: ubuntu-latest
5353
steps:
5454
- uses: actions/checkout@v5
@@ -68,9 +68,6 @@ jobs:
6868
with:
6969
install: true
7070

71-
- name: Available buildx platforms
72-
run: echo ${{ steps.buildx.outputs.platforms }}
73-
7471
- name: Build and install core dependency locally
7572
working-directory: ./aws-lambda-java-core
7673
run: mvn clean install
@@ -79,11 +76,9 @@ jobs:
7976
working-directory: ./aws-lambda-java-serialization
8077
run: mvn clean install
8178

82-
- name: Test Runtime Interface Client xplatform build - Run 'build' target
79+
- name: Build and test RIC (host arch only)
8380
working-directory: ./aws-lambda-java-runtime-interface-client
84-
run: make build
85-
env:
86-
IS_JAVA_8: true
81+
run: mvn clean install -DmultiArch=false -DargLineForReflectionTestOnly=""
8782

8883
- name: Save the built jar
8984
uses: actions/upload-artifact@v4
@@ -96,3 +91,39 @@ jobs:
9691
uses: codecov/codecov-action@v5
9792
env:
9893
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
94+
95+
build-native:
96+
needs: build-base
97+
runs-on: ubuntu-latest
98+
strategy:
99+
matrix:
100+
profile: [linux-x86_64, linux_musl-x86_64, linux-aarch64, linux_musl-aarch64]
101+
steps:
102+
- uses: actions/checkout@v5
103+
104+
- name: Set up JDK 1.8
105+
uses: actions/setup-java@v4
106+
with:
107+
java-version: 8
108+
distribution: corretto
109+
cache: maven
110+
111+
- name: Set up QEMU
112+
uses: docker/setup-qemu-action@v3
113+
114+
- name: Set up Docker Buildx
115+
uses: docker/setup-buildx-action@v3
116+
with:
117+
install: true
118+
119+
- name: Build and install core dependency locally
120+
working-directory: ./aws-lambda-java-core
121+
run: mvn clean install
122+
123+
- name: Build and install serialization dependency locally
124+
working-directory: ./aws-lambda-java-serialization
125+
run: mvn clean install
126+
127+
- name: Build native - ${{ matrix.profile }}
128+
working-directory: ./aws-lambda-java-runtime-interface-client
129+
run: mvn install -P ${{ matrix.profile }} -DargLineForReflectionTestOnly=""

0 commit comments

Comments
 (0)