Skip to content

Deploy Latest Release JARs to GitHub Packages #9

Deploy Latest Release JARs to GitHub Packages

Deploy Latest Release JARs to GitHub Packages #9

Workflow file for this run

name: Deploy Latest Release JARs to GitHub Packages
on:
release:
types: [published] # Automatisch bei neuem Release
workflow_dispatch: # Manuell auslösbar
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Download latest release assets
uses: robinraju/release-downloader@v1.9
with:
repository: AbUndMax/Java_ArgsParser
latest: true
fileName: "ArgsParser_v*.jar"
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
server-id: github
settings-path: ${{ github.workspace }}
- name: Get Release Tag Name (keep original)
id: get_tag
run: |
tag_name=$(curl -s https://api.github.com/repos/AbUndMax/Java_ArgsParser/releases/latest | jq -r .tag_name)
echo "release_tag=$tag_name" >> $GITHUB_OUTPUT
- name: Create minimal valid POM
run: |
cat <<EOF > pom.xml
<?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.AbUndMax</groupId>
<artifactId>dummy</artifactId>
<version>1.0.0</version>
</project>
EOF
- name: Deploy JARs to GitHub Packages
run: |
mvn deploy:deploy-file \
-Dfile=ArgsParser_${{ steps.get_tag.outputs.release_tag }}.jar \
-DgroupId=com.github.AbUndMax \
-DartifactId=Java_ArgsParser \
-Dversion=${{ steps.get_tag.outputs.release_tag }} \
-Dpackaging=jar \
-Dsources=ArgsParser_${{ steps.get_tag.outputs.release_tag }}-src.jar \
-Djavadoc=ArgsParser_${{ steps.get_tag.outputs.release_tag }}-doc.jar \
-DrepositoryId=github \
-Durl=https://maven.pkg.github.com/AbUndMax/Java_ArgsParser
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}