Skip to content

Commit dcad8c0

Browse files
build: use OSV-Scanner v2 for vulnerability scanning (#365)
1 parent 3852640 commit dcad8c0

File tree

6 files changed

+20
-43
lines changed

6 files changed

+20
-43
lines changed

.github/workflows/pr.yml

+12-26
Original file line numberDiff line numberDiff line change
@@ -33,27 +33,8 @@ jobs:
3333
runs-on: ubuntu-latest
3434
steps:
3535
- uses: actions/checkout@v4
36-
- uses: gradle/actions/wrapper-validation@v3
37-
cyclonedx-sbom:
38-
runs-on: ubuntu-latest
39-
steps:
40-
- uses: actions/checkout@v4
41-
- uses: actions/setup-java@v4
42-
with:
43-
java-version: '17'
44-
distribution: 'temurin'
45-
- name: Generate SBOMs
46-
run: ./gradlew cyclonedxBom
47-
- name: Upload SBOMs
48-
uses: actions/upload-artifact@v4
49-
with:
50-
name: cyclonedx-sbom
51-
path: |
52-
core/build/reports/bom.json
53-
isthmus/build/reports/bom.json
54-
isthmus-cli/build/reports/bom.json
36+
- uses: gradle/actions/wrapper-validation@v4
5537
osv-scanner:
56-
needs: cyclonedx-sbom
5738
runs-on: ubuntu-latest
5839
continue-on-error: true
5940
strategy:
@@ -64,12 +45,17 @@ jobs:
6445
- isthmus
6546
- isthmus-cli
6647
steps:
67-
- name: Download SBOMs
68-
uses: actions/download-artifact@v4
48+
- uses: actions/checkout@v4
49+
- uses: actions/setup-java@v4
6950
with:
70-
name: cyclonedx-sbom
51+
java-version: '17'
52+
distribution: 'temurin'
53+
- name: Setup Gradle
54+
uses: gradle/actions/setup-gradle@v4
55+
- name: Create Gradle lockfile
56+
run: ./gradlew :${{ matrix.project }}:dependencies --write-locks
7157
- name: Scan
72-
run: docker run --rm -v "${PWD}/${{ matrix.project }}/build/reports/bom.json:/bom.json" ghcr.io/google/osv-scanner:v1.9.2 --sbom /bom.json
58+
run: docker run --rm -v "${PWD}/${{ matrix.project }}/gradle.lockfile:/gradle.lockfile" ghcr.io/google/osv-scanner:v2.0.0 scan --lockfile /gradle.lockfile
7359
java:
7460
name: Build and Test Java
7561
runs-on: ubuntu-latest
@@ -83,7 +69,7 @@ jobs:
8369
java-version: '17'
8470
distribution: 'temurin'
8571
- name: Setup Gradle
86-
uses: gradle/actions/setup-gradle@v3
72+
uses: gradle/actions/setup-gradle@v4
8773
- name: Build with Gradle
8874
run: gradle build --rerun-tasks
8975
examples:
@@ -124,7 +110,7 @@ jobs:
124110
# helps avoid rate-limiting issues
125111
github-token: ${{ secrets.GITHUB_TOKEN }}
126112
- name: Setup Gradle
127-
uses: gradle/actions/setup-gradle@v3
113+
uses: gradle/actions/setup-gradle@v4
128114
- name: Report Java Version
129115
run: java -version
130116
- name: Install GraalVM native image

.github/workflows/release.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
# helps avoid rate-limiting issues
3030
github-token: ${{ secrets.GITHUB_TOKEN }}
3131
- name: Setup Gradle
32-
uses: gradle/actions/setup-gradle@v3
32+
uses: gradle/actions/setup-gradle@v4
3333
- name: Report Java Version
3434
run: java -version
3535
- name: Install GraalVM native image
@@ -67,7 +67,7 @@ jobs:
6767
with:
6868
node-version: '20'
6969
- name: Setup Gradle
70-
uses: gradle/actions/setup-gradle@v3
70+
uses: gradle/actions/setup-gradle@v4
7171
- name: Download isthmus-ubuntu-latest binary
7272
uses: actions/download-artifact@v4
7373
with:

build.gradle.kts

-15
Original file line numberDiff line numberDiff line change
@@ -69,21 +69,6 @@ allprojects {
6969
}
7070
}
7171
}
72-
73-
if (listOf("core", "isthmus", "isthmus-cli").contains(project.name)) {
74-
apply(plugin = "org.cyclonedx.bom")
75-
tasks.cyclonedxBom {
76-
setIncludeConfigs(listOf("runtimeClasspath"))
77-
setSkipConfigs(listOf("compileClasspath", "testCompileClasspath"))
78-
setProjectType("library")
79-
setSchemaVersion("1.5")
80-
setDestination(project.file("build/reports"))
81-
setOutputName("bom")
82-
setOutputFormat("json")
83-
setIncludeBomSerialNumber(false)
84-
setIncludeLicenseText(false)
85-
}
86-
}
8772
}
8873

8974
nexusPublishing {

core/build.gradle.kts

+2
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,8 @@ java {
124124
}
125125
}
126126

127+
configurations { runtimeClasspath { resolutionStrategy.activateDependencyLocking() } }
128+
127129
tasks.named("sourcesJar") { mustRunAfter("generateGrammarSource") }
128130

129131
sourceSets {

isthmus-cli/build.gradle.kts

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ java {
1111
withSourcesJar()
1212
}
1313

14+
configurations { runtimeClasspath { resolutionStrategy.activateDependencyLocking() } }
15+
1416
val CALCITE_VERSION = properties.get("calcite.version")
1517
val GUAVA_VERSION = properties.get("guava.version")
1618
val IMMUTABLES_VERSION = properties.get("immutables.version")

isthmus/build.gradle.kts

+2
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@ java {
7171
withSourcesJar()
7272
}
7373

74+
configurations { runtimeClasspath { resolutionStrategy.activateDependencyLocking() } }
75+
7476
val CALCITE_VERSION = properties.get("calcite.version")
7577
val GUAVA_VERSION = properties.get("guava.version")
7678
val IMMUTABLES_VERSION = properties.get("immutables.version")

0 commit comments

Comments
 (0)