From 0574827530c9bd46f6fdc76a625d8594f837dcf7 Mon Sep 17 00:00:00 2001 From: Pmoranga Date: Wed, 13 Apr 2022 10:57:57 +0200 Subject: [PATCH] Add GH Actions --- .github/workflows/gradle.yml | 34 +++++++++++++++++++++++++ .github/workflows/release.yml | 48 +++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 .github/workflows/gradle.yml create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml new file mode 100644 index 0000000..91fe15c --- /dev/null +++ b/.github/workflows/gradle.yml @@ -0,0 +1,34 @@ +name: Java CI + +on: [push] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Get Fetch Tags + run: git -c protocol.version=2 fetch --tags --progress --no-recurse-submodules origin + if: "!contains(github.ref, 'refs/tags')" + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Grant execute permission for gradlew + run: chmod +x gradlew + - name: Build with Gradle + run: ./gradlew build + - name: Get Release Version + id: get_version + run: VERSION=$(./gradlew currentVersion -q -Prelease.quiet) && echo ::set-output name=VERSION::$VERSION + - name: show all assets built + run: find build/ -ls + - name: Upload jar + uses: actions/upload-artifact@v1.0.0 + with: + name: ui-job-list-${{ steps.get_version.outputs.VERSION }} + path: build/distributions/ui-job-list-${{ steps.get_version.outputs.VERSION }}.zip \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..311d0bc --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,48 @@ +on: + push: + # Sequence of patterns matched against refs/tags + tags: + - '*' + +name: Upload Release Asset + +jobs: + build: + name: Upload Release Asset + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Build with Gradle + run: ./gradlew build + - name: show all assets built + run: find build/ -ls + - name: Get Release Version + id: get_version + run: VERSION=$(./gradlew currentVersion -q -Prelease.quiet) && echo ::set-output name=VERSION::$VERSION + - name: Create Release + id: create_release + uses: actions/create-release@v1.0.0 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ steps.get_version.outputs.VERSION }} + draft: false + prerelease: false + - name: Upload Release Asset (jar) + id: upload-release-asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: build/distributions/ui-job-list-${{ steps.get_version.outputs.VERSION }}.zip + asset_name: ui-job-list-${{ steps.get_version.outputs.VERSION }}.zip + asset_content_type: application/octet-stream