name: Build and Deploy on: push: branches: - main jobs: build-and-deploy: runs-on: ubuntu-latest container: image: maven:3.9-eclipse-temurin-17 steps: - name: Checkout run: | git clone --depth=1 --branch=${GITHUB_REF_NAME} \ http://gitea:3000/${GITHUB_REPOSITORY}.git . - name: Configure Maven settings run: | mkdir -p ~/.m2 cat > ~/.m2/settings.xml << 'SETTINGS' nexus * https://nexus.gc-si.dev/repository/maven-public/ nexus ${{ secrets.NEXUS_USERNAME }} ${{ secrets.NEXUS_PASSWORD }} SETTINGS - name: Install Node.js run: | curl -fsSL https://deb.nodesource.com/setup_20.x | bash - apt-get install -y nodejs node --version npm --version - name: Build Frontend run: | cd frontend npm install npm run build cd .. - name: Build Backend run: mvn clean package -DskipTests -Dfrontend.skip=true -B - name: Deploy run: | cp target/snp-connection-monitoring-*.jar /deploy/snp-connection/app.jar date '+%Y-%m-%d %H:%M:%S' > /deploy/snp-connection/.deploy-trigger echo "Deployed at $(cat /deploy/snp-connection/.deploy-trigger)" ls -la /deploy/snp-connection/