diff --git a/.github/workflows/buildAndTest.yml b/.github/workflows/buildAndTest.yml index 935b7c8..fc4dc7c 100644 --- a/.github/workflows/buildAndTest.yml +++ b/.github/workflows/buildAndTest.yml @@ -22,9 +22,10 @@ jobs: - name: upload build artifacts uses: actions/upload-artifact@v4 with: - with: normal + name: normal path: build/libs/*.jar compression-level: 1 + build_5: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..f9a44b9 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,81 @@ +name: Publish Jars + +permissions: + contents: write + +on: + workflow_dispatch: + inputs: + release_name: + description: 'The name of the release' + required: true + type: string + release_body: + description: 'The description of the release' + required: true + type: string + +jobs: + build_latest: + runs-on: ubuntu-latest + steps: + - name: checkout sources + uses: actions/checkout@v4 + - name: validate gradle wrapper + uses: gradle/wrapper-validation-action@v2 + - name: setup java + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 21 + - name: Test + run: | + chmod +x ./gradlew + ./gradlew runMainTest + - name: upload build artifacts + uses: actions/upload-artifact@v4 + with: + name: normal + path: build/libs/*.jar + compression-level: 1 + + build_5: + runs-on: ubuntu-latest + steps: + - name: checkout sources + uses: actions/checkout@v4 + - name: validate gradle wrapper + uses: gradle/wrapper-validation-action@v2 + - name: setup java + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 8 + - name: setup gradle + uses: gradle/actions/setup-gradle@v4 + - name: run test + run: | + chmod +x ./gradlew + ./gradlew java5Jar + - name: upload build artifacts + uses: actions/upload-artifact@v4 + with: + name: java-5 + path: build/libs/*.jar + compression-level: 1 + + publish: + runs-on: ubuntu-latest + steps: + - name: download artifacts + uses: actions/download-artifact@v4 + with: + path: artifacts/ + merge-multiple: true + - name: create release + uses: softprops/action-gh-release@v2 + with: + name: ${{ inputs.release_name }} + body: ${{ inputs.release_body }} + files: ${{ ls -1 }} + tag_name: ${{ ls -AU artifacts | head -1 }} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 7e80678..5ca8b0d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ .gradle build/ -generated/ +artifacts/ !gradle/wrapper/gradle-wrapper.jar !**/src/main/**/build/ !**/src/test/**/build/