Files
auctiora/.github/workflows/build.yml
2025-11-27 12:41:36 +01:00

61 lines
1.4 KiB
YAML

name: Build and Deploy Auction App
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
container:
image: maven:3.9.6-eclipse-temurin-17
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Java 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- name: Build with Maven
run: mvn -B clean package
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: auction
path: target/*.jar
deploy:
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: auction
- name: Copy to server
uses: appleboy/scp-action@v0.1.7
with:
host: ${{ secrets.SERVER_IP }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SERVER_SSH_KEY }}
source: "*.jar"
target: "/opt/auction/app.jar"
- name: Restart service
uses: appleboy/ssh-action@v0.1.7
with:
host: ${{ secrets.SERVER_IP }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SERVER_SSH_KEY }}
script: |
sudo systemctl restart auction
echo "Deployment complete"