Skip to content

Commit e6ac957

Browse files
committed
Add an FFI smoke tests workflow
1 parent 6cc360c commit e6ac957

1 file changed

Lines changed: 67 additions & 0 deletions

File tree

.github/workflows/smoke-tests.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: 🔥 Smoke Tests for FFI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
jobs:
10+
smoke-test-native:
11+
name: Smoke Test (${{ matrix.os }}, Java 21)
12+
runs-on: ${{ matrix.os }}
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
os: [ubuntu-latest, macos-latest]
17+
steps:
18+
- name: Check out code
19+
uses: actions/checkout@v4
20+
21+
- name: Set up JDK 21
22+
uses: actions/setup-java@v4
23+
with:
24+
java-version: '21'
25+
distribution: 'temurin'
26+
27+
- name: Build with Gradle
28+
working-directory: ./
29+
run: |
30+
chmod +x gradlew
31+
make binaries
32+
make build
33+
34+
- name: Run RustSQLInterfaceTest
35+
working-directory: ./
36+
run: |
37+
./gradlew test --tests "vulnerabilities.RustSQLInterfaceTest" --info
38+
39+
smoke-test-musl:
40+
name: Smoke Test (${{matrix.image}}, Java 21)
41+
runs-on: ubuntu-latest
42+
strategy:
43+
fail-fast: false
44+
matrix:
45+
image: [
46+
"eclipse-temurin:21-jdk-alpine",
47+
"amazoncorretto:21-alpine",
48+
"azul/zulu-openjdk-alpine:21",
49+
"bellsoft/liberica-openjdk-alpine:21"
50+
]
51+
steps:
52+
- name: Check out code
53+
uses: actions/checkout@v4
54+
55+
- name: Build with Gradle (native)
56+
working-directory: ./
57+
run: |
58+
chmod +x gradlew
59+
make binaries
60+
make build
61+
62+
- name: Run RustSQLInterfaceTest on ${{matrix.image}}
63+
run: |
64+
docker run --rm -v "$(pwd):/app" -w /app ${{matrix.image}} sh -c "
65+
chmod +x gradlew && \
66+
AIKIDO_DEBUG=true ./gradlew test --tests 'vulnerabilities.RustSQLInterfaceTest' --info
67+
"

0 commit comments

Comments
 (0)