name: Push Builds on: push: branches: [ "master" ] permissions: contents: read jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: "temurin" java-version: "21" - name: Set up Gradle uses: gradle/actions/setup-gradle@v3 with: gradle-home-cache-cleanup: false - name: Grant execute permission for gradlew run: chmod +x gradlew - name: Build run: ./gradlew clean build -x test --no-daemon --stacktrace - name: Remove sources JARs run: | rm -f build/libs/*sources*.jar echo "Removed sources JARs from build/libs" - name: Create timestamped JAR run: | TIMESTAMP=$(date -u +"%Y%m%d-%H%M%S") MAIN_JAR=$(ls build/libs/saturnclient-*.jar | head -1) cp "$MAIN_JAR" "saturnclient-${TIMESTAMP}.jar" echo "Created: saturnclient-${TIMESTAMP}.jar" - name: Upload timestamped artifact uses: actions/upload-artifact@v4 with: name: saturnclient-${{ github.run_number }} path: saturnclient-*.jar if-no-files-found: error