Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Deploy PathExpression

on: [workflow_dispatch]

jobs:
deployment:
runs-on: ubuntu-latest
name: PathExpression deployment
steps:
- name: Checkout source code
uses: actions/checkout@v3
# Sets up Java version
- name: Set up Java
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-package: 'jdk'
java-version: '11'
server-id: 'ossrh' # must match the serverId configured for the nexus-staging-maven-plugin
server-username: OSSRH_USERNAME # Env var that holds your OSSRH user name
server-password: OSSRH_PASSWORD # Env var that holds your OSSRH user pw
gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }} # Substituted with the value stored in the referenced secret
gpg-passphrase: SIGN_KEY_PASS # Env var that holds the key's passphrase
# Sets up Maven version
- name: Set up Maven
uses: stCarolas/setup-maven@v4.5
with:
maven-version: 3.6.3
- name: Build & Deploy PathExpression
run: mvn -B -U clean deploy -Pdeployment
env:
SIGN_KEY_PASS: ${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}
OSSRH_USERNAME: ${{ secrets.SONATYPE_USER }}
OSSRH_PASSWORD: ${{ secrets.SONATYPE_PW }}
98 changes: 89 additions & 9 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,88 @@
<groupId>de.fraunhofer.iem</groupId>
<artifactId>pathexpression</artifactId>
<version>1.0.1</version>

<licenses>
<license>
<name>Eclipse Public License - v2.0</name>
<url>https://www.eclipse.org/legal/epl-2.0/</url>
</license>
</licenses>

<scm>
<connection>scm:git:${project.scm.url}</connection>
<developerConnection>scm:git:${project.scm.url}</developerConnection>
<url>git@github.com:johspaeth/PathExpression.git</url>
<tag>${project.version}</tag>
</scm>
<description>Implementation of an algorithm by Tarjan that efficiently computes path expressions based on a labeled graph</description>
<url>https://github.com/johspaeth/PathExpression</url>

<developers>
<developer>
<name>Johannes Spaeth</name>
<email>mail@johspaeth.de</email>
</developer>
</developers>

<profiles>
<!-- 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.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>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<id>attach-source</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<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>
</plugins>
</build>
</profile>
</profiles>


<build>
<plugins>
<plugin>
Expand All @@ -19,12 +101,7 @@
</plugin>
</plugins>
</build>
<scm>
<connection>scm:git:${project.scm.url}</connection>
<developerConnection>scm:git:${project.scm.url}</developerConnection>
<url>git@github.com:johspaeth/PathExpression.git</url>
<tag>${project.version}</tag>
</scm>

<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
Expand All @@ -45,10 +122,13 @@
</dependencies>

<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>github</id>
<name>GitHub Packages</name>
<url>https://maven.pkg.github.com/johspaeth/PathExpression</url>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
</project>