mirror of
https://github.com/gnmyt/LicenseAPI.git
synced 2026-01-11 02:31:46 +00:00
53 lines
1.9 KiB
YAML
53 lines
1.9 KiB
YAML
name: Deploy to GitHub Maven
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- 'integrations/java/pom.xml'
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up JDK 8
|
|
uses: actions/setup-java@v3
|
|
with:
|
|
distribution: 'adopt'
|
|
java-version: '8'
|
|
|
|
- name: Cache Maven packages
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: ~/.m2/repository
|
|
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-maven-
|
|
|
|
- name: Verify version change
|
|
id: get_version
|
|
run: |
|
|
echo "VERSION=$(mvn -f integrations/java/pom.xml help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_ENV
|
|
echo "VERSION: $VERSION"
|
|
|
|
- name: Check if version changed
|
|
id: version_check
|
|
run: |
|
|
git fetch origin main
|
|
LAST_VERSION=$(git show origin/main:integrations/java/pom.xml | grep -m1 '<version>' | sed -E 's/.*<version>([^<]+)<\/version>.*/\1/')
|
|
echo "LAST_VERSION: $LAST_VERSION"
|
|
if [ -z "$LAST_VERSION" ] || [ "$LAST_VERSION" == "$VERSION" ]; then
|
|
echo "Version did not change or no previous version found. Skipping deployment."
|
|
exit 0
|
|
fi
|
|
|
|
- name: Build and deploy
|
|
if: steps.version_check.outputs.LAST_VERSION != steps.get_version.outputs.VERSION || steps.version_check.outputs.LAST_VERSION == ''
|
|
run: |
|
|
echo "<settings><servers><server><id>github</id><username>${{ github.actor }}</username><password>${{ github.token }}</password></server></servers></settings>" > ~/.m2/settings.xml
|
|
mvn -f integrations/java/pom.xml deploy \
|
|
-DskipTests \
|
|
-DaltDeploymentRepository=github::default::https://maven.pkg.github.com/${{ github.repository }} |