Fixing issues with respect to non-default Maven outputDirectory setting

This commit is contained in:
Peter Murray
2023-10-19 11:24:33 +00:00
committed by GitHub
parent da1586f5fa
commit 2664882706
6 changed files with 1181 additions and 727 deletions
+10 -4
View File
@@ -1,8 +1,14 @@
{
"image": "ghcr.io/octodemo/container-nodejs-development:base-20220830",
"extensions": [
"Orta.vscode-jest",
],
"image": "ghcr.io/octodemo/development-containers/javascript:base-20230923",
"customizations": {
"vscode": {
"extensions": [
"Orta.vscode-jest",
"GitHub.copilot"
]
}
},
// Install JDK and Maven for testing purposes
"postCreateCommand": ".devcontainer/install_maven.sh",
"postStartCommand": "npm install"
+911 -720
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -21,15 +21,15 @@
},
"homepage": "https://github.com/advanced-security/maven-dependency-tree-action#readme",
"dependencies": {
"@actions/core": "^1.10.0",
"@actions/core": "^1.10.1",
"@github/dependency-submission-toolkit": "^1.2.10",
"commander": "^9.4.0",
"packageurl-js": "^0.0.7"
"packageurl-js": "^1.2.0"
},
"devDependencies": {
"@types/chai": "^4.3.1",
"@types/jest": "^28.1.6",
"@vercel/ncc": "^0.34.0",
"@vercel/ncc": "^0.38.1",
"chai": "^4.3.6",
"jest": "^28.1.3",
"pkg": "^5.8.0",
+9
View File
@@ -60,5 +60,14 @@ describe('snapshot-generator', () => {
expect(snapshot.detector.version).toBe(version);
expect(snapshot.manifests['artifact-with-classifiers'].countDependencies()).toBe(7);
});
it('should process a problematic dependecy-tree 2602', async() => {
const projectDir = getMavenProjectDirectory('dependency-graph-2602');
const snapshot = await generateSnapshot(projectDir);
expect(snapshot.manifests['problem-dependency-graph-2602']).toBeDefined();
expect(snapshot.detector.version).toBe(version);
expect(snapshot.manifests['problem-dependency-graph-2602'].countDependencies()).toBe(230);
});
});
});
+1
View File
@@ -85,6 +85,7 @@ export async function generateDependencyGraph(directory: string, config?: MavenC
const mavenAggregateArguments = [
`com.github.ferstl:depgraph-maven-plugin:${DEPGRAPH_MAVEN_PLUGIN_VERSION}:aggregate`,
'-DgraphFormat=json',
'-DoutputDirectory=target',
'-DoutputFileName=aggregate-depgraph.json'
];
const aggregateResults = await mvn.exec(directory, mavenAggregateArguments);
@@ -0,0 +1,247 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.github</groupId>
<artifactId>problem-dependency-graph-2602</artifactId>
<packaging>jar</packaging>
<version>0.1.0</version>
<build>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>test</testSourceDirectory>
<resources>
<resource>
<directory>resources</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>resources</directory>
</testResource>
</testResources>
<!-- Non standard output directory so we would nee dto discover this or inject it for analysis results -->
<directory>target/uberjar</directory>
<outputDirectory>target/uberjar/classes</outputDirectory>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>env/all</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>central</id>
<url>https://repo1.maven.org/maven2/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>clojars</id>
<url>https://repo.clojars.org/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
<dependencyManagement>
<dependencies/>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure</artifactId>
<version>1.10.3</version>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>tools.logging</artifactId>
<version>1.2.4</version>
</dependency>
<dependency>
<groupId>clojure.java-time</groupId>
<artifactId>clojure.java-time</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.4.11</version>
</dependency>
<dependency>
<groupId>cprop</groupId>
<artifactId>cprop</artifactId>
<version>0.1.19</version>
</dependency>
<dependency>
<groupId>mount</groupId>
<artifactId>mount</artifactId>
<version>0.1.17</version>
</dependency>
<dependency>
<groupId>aleph</groupId>
<artifactId>aleph</artifactId>
<version>0.6.3</version>
</dependency>
<dependency>
<groupId>ring</groupId>
<artifactId>ring-defaults</artifactId>
<version>0.4.0</version>
</dependency>
<dependency>
<groupId>metosin</groupId>
<artifactId>reitit</artifactId>
<version>0.6.0</version>
</dependency>
<dependency>
<groupId>metosin</groupId>
<artifactId>ring-http-response</artifactId>
<version>0.9.3</version>
</dependency>
<dependency>
<groupId>metosin</groupId>
<artifactId>jsonista</artifactId>
<version>0.3.7</version>
</dependency>
<dependency>
<groupId>yleisradio</groupId>
<artifactId>new-reliquary</artifactId>
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>com.climate</groupId>
<artifactId>clj-newrelic</artifactId>
<version>0.2.1</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.6.0</version>
</dependency>
<dependency>
<groupId>seancorfield</groupId>
<artifactId>next.jdbc</artifactId>
<version>1.2.659</version>
</dependency>
<dependency>
<groupId>com.github.seancorfield</groupId>
<artifactId>honeysql</artifactId>
<version>2.4.1066</version>
</dependency>
<dependency>
<groupId>hikari-cp</groupId>
<artifactId>hikari-cp</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>ragtime</groupId>
<artifactId>ragtime</artifactId>
<version>0.8.1</version>
</dependency>
<dependency>
<groupId>buddy</groupId>
<artifactId>buddy-auth</artifactId>
<version>3.0.323</version>
</dependency>
<dependency>
<groupId>buddy</groupId>
<artifactId>buddy-sign</artifactId>
<version>3.5.351</version>
</dependency>
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-tasks</artifactId>
<version>2.24.0</version>
</dependency>
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-translate</artifactId>
<version>2.24.0</version>
</dependency>
<dependency>
<groupId>gcp-ser-clj</groupId>
<artifactId>gcp-ser-clj</artifactId>
<version>0.8.1</version>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>core.async</artifactId>
<version>1.6.681</version>
</dependency>
<dependency>
<groupId>com.taoensso</groupId>
<artifactId>carmine</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>5.0.0</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-sqs</artifactId>
<version>1.12.550</version>
</dependency>
<dependency>
<groupId>net.valerauko</groupId>
<artifactId>harinezumi</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>data.csv</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>tongue</groupId>
<artifactId>tongue</artifactId>
<version>0.4.4</version>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>test.check</artifactId>
<version>1.1.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>tools.namespace</artifactId>
<version>1.4.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>clj-kondo</groupId>
<artifactId>clj-kondo</artifactId>
<version>2023.09.07</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>