diff --git a/Makefile b/Makefile
index d0c74098b..26f6ef780 100644
--- a/Makefile
+++ b/Makefile
@@ -38,7 +38,7 @@ BOOTSTRAP_CACHE="c7afb99ad"
DISTDIR=./dist
SNAPSHOTDIR=./snapshot
OS=$(shell uname | tr '[:upper:]' '[:lower:]')
-SNAPSHOT_BIN=$(shell realpath $(shell pwd)/$(SNAPSHOTDIR)/$(OS)-build_$(OS)_amd64_v1/$(BIN))
+SNAPSHOT_BIN=$(realpath $(shell pwd)/$(SNAPSHOTDIR)/$(OS)-build_$(OS)_amd64_v1/$(BIN))
## Variable assertions
@@ -111,13 +111,13 @@ $(TEMPDIR):
.PHONY: bootstrap-tools
bootstrap-tools: $(TEMPDIR)
- GO111MODULE=off GOBIN=$(shell realpath $(TEMPDIR)) go get -u golang.org/x/perf/cmd/benchstat
+ GO111MODULE=off GOBIN=$(realpath $(TEMPDIR)) go get -u golang.org/x/perf/cmd/benchstat
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(TEMPDIR)/ $(GOLANGCILINT_VERSION)
curl -sSfL https://raw.githubusercontent.com/wagoodman/go-bouncer/master/bouncer.sh | sh -s -- -b $(TEMPDIR)/ $(BOUNCER_VERSION)
curl -sSfL https://raw.githubusercontent.com/anchore/chronicle/main/install.sh | sh -s -- -b $(TEMPDIR)/ $(CHRONICLE_VERSION)
.github/scripts/goreleaser-install.sh -d -b $(TEMPDIR)/ $(GORELEASER_VERSION)
- GOBIN="$(shell realpath $(TEMPDIR))" go install github.com/neilpa/yajsv@$(YAJSV_VERSION)
- GOBIN="$(shell realpath $(TEMPDIR))" go install github.com/sigstore/cosign/cmd/cosign@$(COSIGN_VERSION)
+ GOBIN="$(realpath $(TEMPDIR))" go install github.com/neilpa/yajsv@$(YAJSV_VERSION)
+ GOBIN="$(realpath $(TEMPDIR))" go install github.com/sigstore/cosign/cmd/cosign@$(COSIGN_VERSION)
.PHONY: bootstrap-go
bootstrap-go:
diff --git a/syft/pkg/cataloger/java/archive_parser_test.go b/syft/pkg/cataloger/java/archive_parser_test.go
index 7af900c99..64d181496 100644
--- a/syft/pkg/cataloger/java/archive_parser_test.go
+++ b/syft/pkg/cataloger/java/archive_parser_test.go
@@ -104,27 +104,29 @@ func TestParseJar(t *testing.T) {
Manifest: &pkg.JavaManifest{
Main: map[string]string{
"Manifest-Version": "1.0",
- "Specification-Title": "The Jenkins Plugins Parent POM Project",
- "Implementation-Title": "example-jenkins-plugin",
+ "Specification-Title": "Example Jenkins Plugin",
+ "Specification-Version": "1.0",
+ "Implementation-Title": "Example Jenkins Plugin",
"Implementation-Version": "1.0-SNAPSHOT",
// extra fields...
- "Archiver-Version": "Plexus Archiver",
+ //"Archiver-Version": "Plexus Archiver",
"Plugin-License-Url": "https://opensource.org/licenses/MIT",
"Plugin-License-Name": "MIT License",
- "Created-By": "Apache Maven",
+ "Created-By": "Maven Archiver 3.6.0",
//"Built-By": "?",
//"Build-Jdk": "14.0.1",
- "Jenkins-Version": "2.164.3",
- "Minimum-Java-Version": "1.8",
- "Plugin-Developers": "",
- "Plugin-ScmUrl": "https://github.com/jenkinsci/plugin-pom/example-jenkins-plugin",
- "Extension-Name": "example-jenkins-plugin",
- "Short-Name": "example-jenkins-plugin",
- "Group-Id": "io.jenkins.plugins",
- "Plugin-Dependencies": "structs:1.20",
+ "Build-Jdk-Spec": "18",
+ "Jenkins-Version": "2.204",
+ //"Minimum-Java-Version": "1.8",
+ "Plugin-Developers": "",
+ "Plugin-ScmUrl": "https://github.com/jenkinsci/plugin-pom/example-jenkins-plugin",
+ //"Extension-Name": "example-jenkins-plugin",
+ "Short-Name": "example-jenkins-plugin",
+ "Group-Id": "io.jenkins.plugins",
+ "Plugin-Dependencies": "structs:1.20",
//"Plugin-Version": "1.0-SNAPSHOT (private-07/09/2020 13:30-?)",
- "Hudson-Version": "2.164.3",
- "Long-Name": "TODO Plugin",
+ "Hudson-Version": "2.204",
+ "Long-Name": "Example Jenkins Plugin",
},
},
PomProperties: &pkg.PomProperties{
@@ -180,7 +182,7 @@ func TestParseJar(t *testing.T) {
"Manifest-Version": "1.0",
// extra fields...
"Archiver-Version": "Plexus Archiver",
- "Created-By": "Apache Maven 3.6.3",
+ "Created-By": "Apache Maven 3.8.6",
//"Built-By": "?",
//"Build-Jdk": "14.0.1",
"Main-Class": "hello.HelloWorld",
diff --git a/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-java-app-maven.sh b/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-java-app-maven.sh
index 575afc5ee..2521a37f2 100755
--- a/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-java-app-maven.sh
+++ b/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-java-app-maven.sh
@@ -4,7 +4,7 @@ set -uxe
# note: this can be easily done in a 1-liner, however circle CI does NOT allow volume mounts from the host in docker executors (since they are on remote hosts, where the host files are inaccessible)
PKGSDIR=$1
-CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-java-app -w /example-java-app maven:3.6.3-openjdk-14 mvn -Duser.home=/tmp -DskipTests package)
+CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-java-app -w /example-java-app maven:3.8.6-openjdk-18 mvn -Duser.home=/tmp -DskipTests package)
function cleanup() {
docker rm "${CTRID}"
@@ -16,4 +16,4 @@ set +e
docker cp "$(pwd)/example-java-app" "${CTRID}:/"
docker start -a "${CTRID}"
mkdir -p "$PKGSDIR"
-docker cp "${CTRID}:/example-java-app/target/example-java-app-maven-0.1.0.jar" "$PKGSDIR"
\ No newline at end of file
+docker cp "${CTRID}:/example-java-app/target/example-java-app-maven-0.1.0.jar" "$PKGSDIR"
diff --git a/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-jenkins-plugin.sh b/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-jenkins-plugin.sh
index 1be56c43d..3c24b582a 100755
--- a/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-jenkins-plugin.sh
+++ b/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-jenkins-plugin.sh
@@ -4,7 +4,7 @@ set -uxe
# note: this can be easily done in a 1-liner, however circle CI does NOT allow volume mounts from the host in docker executors (since they are on remote hosts, where the host files are inaccessible)
PKGSDIR=$1
-CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-jenkins-plugin -w /example-jenkins-plugin maven:3.6.3-openjdk-14 mvn -Duser.home=/tmp -DskipTests package)
+CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-jenkins-plugin -w /example-jenkins-plugin maven:3.8.6-openjdk-18 mvn -Duser.home=/tmp -DskipTests package)
function cleanup() {
docker rm "${CTRID}"
@@ -17,4 +17,4 @@ docker cp "$(pwd)/example-jenkins-plugin" "${CTRID}:/"
docker start -a "${CTRID}"
mkdir -p "$PKGSDIR"
docker cp "${CTRID}:/example-jenkins-plugin/target/example-jenkins-plugin.hpi" "$PKGSDIR"
-docker cp "${CTRID}:/example-jenkins-plugin/target/example-jenkins-plugin.jar" "$PKGSDIR"
\ No newline at end of file
+docker cp "${CTRID}:/example-jenkins-plugin/target/example-jenkins-plugin.jar" "$PKGSDIR"
diff --git a/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-sb-app-nestedjar.sh b/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-sb-app-nestedjar.sh
index d377b96ef..80dfbeb12 100755
--- a/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-sb-app-nestedjar.sh
+++ b/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-sb-app-nestedjar.sh
@@ -4,7 +4,7 @@ set -uxe
# note: this can be easily done in a 1-liner, however circle CI does NOT allow volume mounts from the host in docker executors (since they are on remote hosts, where the host files are inaccessible)
PKGSDIR=$1
-CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-sb-app -w /example-sb-app maven:3.6.3-openjdk-14 mvn -Duser.home=/tmp -DskipTests package spring-boot:repackage)
+CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-sb-app -w /example-sb-app maven:3.8.6-openjdk-18 mvn -Duser.home=/tmp -DskipTests package spring-boot:repackage)
function cleanup() {
docker rm "${CTRID}"
@@ -16,4 +16,4 @@ set +e
docker cp "$(pwd)/example-sb-app" "${CTRID}:/"
docker start -a "${CTRID}"
mkdir -p "$PKGSDIR"
-docker cp "${CTRID}:/example-sb-app/target/spring-boot-0.0.1-SNAPSHOT.jar" "$PKGSDIR"
\ No newline at end of file
+docker cp "${CTRID}:/example-sb-app/target/spring-boot-0.0.1-SNAPSHOT.jar" "$PKGSDIR"
diff --git a/syft/pkg/cataloger/java/test-fixtures/java-builds/example-jenkins-plugin/pom.xml b/syft/pkg/cataloger/java/test-fixtures/java-builds/example-jenkins-plugin/pom.xml
index fe544a23a..e1abe106b 100644
--- a/syft/pkg/cataloger/java/test-fixtures/java-builds/example-jenkins-plugin/pom.xml
+++ b/syft/pkg/cataloger/java/test-fixtures/java-builds/example-jenkins-plugin/pom.xml
@@ -4,7 +4,7 @@
org.jenkins-ci.plugins
plugin
- 3.50
+ 4.46
io.jenkins.plugins
@@ -13,7 +13,7 @@
hpi
- 2.164.3
+ 2.204
8
- TODO Plugin
+ Example Jenkins Plugin
diff --git a/test/integration/package_deduplication_test.go b/test/integration/package_deduplication_test.go
index cee5f675f..4e9171b18 100644
--- a/test/integration/package_deduplication_test.go
+++ b/test/integration/package_deduplication_test.go
@@ -1,3 +1,5 @@
+//go:build !arm64
+
package integration
import (
diff --git a/test/integration/test-fixtures/image-java-no-main-package/Dockerfile b/test/integration/test-fixtures/image-java-no-main-package/Dockerfile
index c6100ae44..7e1ac4de7 100644
--- a/test/integration/test-fixtures/image-java-no-main-package/Dockerfile
+++ b/test/integration/test-fixtures/image-java-no-main-package/Dockerfile
@@ -1,4 +1,4 @@
-FROM jenkins:2.60.3
+FROM jenkins/jenkins:2.346.3-slim-jdk17
USER root