Skip to content

Commit

Permalink
Merge pull request #38 from smeyer198/master
Browse files Browse the repository at this point in the history
Add components for deployment to Maven Central
  • Loading branch information
johspaeth authored Mar 17, 2024
2 parents d0f0c47 + b856b7a commit 6f270ed
Show file tree
Hide file tree
Showing 4 changed files with 63 additions and 36 deletions.
19 changes: 3 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,31 +7,18 @@ Additionally, it contains an implementation of [Boomerang](boomerangPDS) and [ID

# Use as Maven dependency

All projects inside this repository are pushed to GitHub's Maven repository for every release.

To include a dependency from this repository to your poject, you first have to add the repository to your pom file:

The projects are released on [Maven Central](https://central.sonatype.com/artifact/de.fraunhofer.iem/SPDS) and can be included as a dependency in `.pom` files:

```.xml
<dependencies>
<dependency>
<groupId>de.fraunhofer.iem</groupId>
<artifactId>WPDS</artifactId>
<version>3.1.1</version>
<artifactId>SPDS</artifactId>
<version>3.1.2</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>github</id>
<url>https://maven.pkg.github.com/CodeShield-Security/SPDS/</url>
</repository>
</repositories>
```

To access the GitHub packages repository, you also need to set up GitHub credentials in your Maven's `settings.xml` file. Therefore, you need to add a `server` block with the id `github`, your username and an access token that has `package:read` rights to your `setting.xml`.
An in-depth documentation on how to do this can be found [here](https://docs.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-apache-maven-for-use-with-github-packages#authenticating-to-github-packages).


# Checkout, Build and Install

To build and install SPDS into your local repository, run
Expand Down
2 changes: 1 addition & 1 deletion SynchronizedPDS/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
</dependency>
<dependency>
<groupId>de.fraunhofer.iem</groupId>
<artifactId>PathExpression</artifactId>
<artifactId>pathexpression</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
Expand Down
2 changes: 1 addition & 1 deletion WPDS/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
</dependency>
<dependency>
<groupId>de.fraunhofer.iem</groupId>
<artifactId>PathExpression</artifactId>
<artifactId>pathexpression</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
Expand Down
76 changes: 58 additions & 18 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
<version>3.1.2</version>
<packaging>pom</packaging>
<name>SPDS</name>
<description>Synchronized Pushdown Systems for Pointer and Data-Flow Analysis</description>
<url>https://github.com/CodeShield-Security/SPDS</url>

<licenses>
<license>
Expand Down Expand Up @@ -165,8 +167,8 @@
</dependency>
<dependency>
<groupId>de.fraunhofer.iem</groupId>
<artifactId>PathExpression</artifactId>
<version>1.0.0</version>
<artifactId>pathexpression</artifactId>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>org.soot-oss</groupId>
Expand Down Expand Up @@ -207,26 +209,16 @@
</dependencyManagement>

<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>github</id>
<name>GitHub CodeShield-Security Apache Maven Packages</name>
<url>https://maven.pkg.github.com/CodeShield-Security/SPDS/</url>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>

<repositories>
<repository>
<id>sonatype-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
<repository>
<id>swt</id>
<url>https://soot-build.cs.uni-paderborn.de/nexus/repository/swt-upb/</url>
</repository>
</repositories>
<profiles>
<profile>
<id>ci</id>
Expand All @@ -244,5 +236,53 @@
</plugins>
</build>
</profile>
<!-- This profile is used to avoid running the deployment in non-deployment
contexts because they require specific keys from the Github remote. Include
this profile by setting the -Pdeployment flag. -->
<profile>
<id>deployment</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.0.1</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>3.0.1</version>
<configuration>
<tagNameFormat>@{project.version}</tagNameFormat>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.13</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://s01.oss.sonatype.org</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>

0 comments on commit 6f270ed

Please sign in to comment.