diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8fc3827..e7a316e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,23 +8,45 @@ on: [pull_request, push] jobs: build: - runs-on: ubuntu-24.04 + runs-on: ubuntu-latest steps: - name: checkout repository - uses: actions/checkout@v4 - - name: validate gradle wrapper - uses: gradle/actions/wrapper-validation@v4 + uses: https://git.eplg.services/actions/checkout@v4 - name: setup jdk - uses: actions/setup-java@v4 + uses: https://git.eplg.services/actions/setup-java@v4 with: java-version: '21' distribution: 'microsoft' + - name: imfall + run: apt update && apt install tree -y - name: make gradle wrapper executable run: chmod +x ./gradlew - name: build run: ./gradlew build - - name: capture build artifacts - uses: actions/upload-artifact@v4 + - name: Generate release tag + if: github.ref == 'refs/heads/master' + id: tag + run: | + echo "RELEASE_TAG=build-$(date +'%Y%m%d%H%M%S')" >> $GITHUB_ENV + - name: Create artifact archive + if: github.ref == 'refs/heads/master' + run: | + tree + mkdir -p release-files + cd build/libs/ + find . -name "*.jar" -o -name "*.war" -o -name "*.zip" | xargs -I{} cp {} ../../release-files/ + cd ../../ + echo "Build completed on $(date)" > release-files/build-info.txt + echo "Git commit: ${{ github.sha }}" >> release-files/build-info.txt + tar -czvf dacliente-build.tar.gz -C release-files . + mkdir -p release + mv dacliente-build.tar.gz release/ + - name: Publish to Forgejo Releases + if: github.ref == 'refs/heads/master' + uses: https://git.eplg.services/actions/forgejo-release@v2.6.0 with: - name: Artifacts - path: build/libs/ \ No newline at end of file + direction: upload + tag: ${{ env.RELEASE_TAG }} + release-dir: release + release-notes: "Automated build from master branch" + override: true \ No newline at end of file