From 378ac3b06c270829ef9f2871988531e455538ad2 Mon Sep 17 00:00:00 2001 From: arcuri82 Date: Wed, 11 Oct 2023 11:19:22 +0200 Subject: [PATCH] changed release action --- .github/workflows/ci.yml | 40 ++++++++++---------- .github/workflows/release.yml | 69 ++++++++++++++++++++++------------- 2 files changed, 63 insertions(+), 46 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ddcea9d1bc..03428edd82 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,14 +32,14 @@ jobs: runs-on: ubuntu-latest steps: # Checkout code - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # Build/test for JDK - name: Setup JDK ${{env.build-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.build-jdk}} - name: Cache Maven packages - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} @@ -49,7 +49,7 @@ jobs: env: CI_env: GithubAction - name: Upload evomaster.jar - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.jar path: core/target/evomaster.jar @@ -84,13 +84,13 @@ jobs: base-build-mac: runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.latest-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.latest-jdk}} - name: Cache Maven packages - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} @@ -103,13 +103,13 @@ jobs: base-build-windows: runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.latest-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.latest-jdk}} - name: Cache Maven packages - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} @@ -128,13 +128,13 @@ jobs: # runs-on: windows-latest runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.latest-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.latest-jdk}} - name: Cache Maven packages - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} @@ -150,7 +150,7 @@ jobs: needs: full-build-base runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # Build/test for JavaScript - name: Use Node.js uses: actions/setup-node@v1 @@ -173,7 +173,7 @@ jobs: with: java-version: ${{env.build-jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -221,13 +221,13 @@ jobs: needs: full-build-base runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@4 - name: Setup JDK ${{env.release-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.release-jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -235,7 +235,7 @@ jobs: shell: bash run: bash makeExecutable.sh WINDOWS - name: Upload installation file - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.msi path: release/evomaster-${{env.evomaster-version}}.msi @@ -246,13 +246,13 @@ jobs: needs: full-build-base runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - name: Setup JDK ${{env.release-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.release-jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -260,7 +260,7 @@ jobs: shell: bash run: bash makeExecutable.sh OSX - name: Upload installation file - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.dmg path: release/evomaster-${{env.evomaster-version}}.dmg @@ -271,13 +271,13 @@ jobs: needs: full-build-base runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.release-jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.release-jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -285,7 +285,7 @@ jobs: shell: bash run: bash makeExecutable.sh DEBIAN - name: Upload installation file - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.deb path: release/evomaster_${{env.evomaster-version}}-1_amd64.deb diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 42ef0b857c..079b52ab0a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,5 +1,7 @@ name: Release on GitHub + +## Run only when we push a tag. See "docs/release.md" instructions on: push: tags: @@ -9,31 +11,33 @@ env: evomaster-version: 1.6.2 jdk: 17 retention-days: 1 - - + installer-windows: evomaster-${{env.evomaster-version}}.msi + installer-osx: evomaster-${{env.evomaster-version}}.dmg + installer-debian: evomaster_${{env.evomaster-version}}-1_amd64.deb jobs: build-base: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.jdk}} - name: Cache Maven packages - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.m2 key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Build with Maven + # Don't run any test, as build should had already been verified (and it takes hours...) run: mvn clean verify -DskipTests env: CI_env: GithubAction - name: Upload evomaster.jar - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.jar path: core/target/evomaster.jar @@ -44,13 +48,13 @@ jobs: needs: build-base runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -58,10 +62,10 @@ jobs: shell: bash run: bash makeExecutable.sh WINDOWS - name: Upload installation file - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.msi - path: release/evomaster-${{env.evomaster-version}}.msi + path: release/${{env.installer-windows}} retention-days: ${{env.retention-days}} if-no-files-found: error @@ -69,13 +73,13 @@ jobs: needs: build-base runs-on: macos-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -83,10 +87,10 @@ jobs: shell: bash run: bash makeExecutable.sh OSX - name: Upload installation file - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.dmg - path: release/evomaster-${{env.evomaster-version}}.dmg + path: release/${{env.installer-osx}} retention-days: ${{env.retention-days}} if-no-files-found: error @@ -94,13 +98,13 @@ jobs: needs: build-base runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup JDK ${{env.jdk}} uses: actions/setup-java@v1 with: java-version: ${{env.jdk}} - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar path: core/target @@ -108,10 +112,10 @@ jobs: shell: bash run: bash makeExecutable.sh DEBIAN - name: Upload installation file - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: evomaster.deb - path: release/evomaster_${{env.evomaster-version}}-1_amd64.deb + path: release/${{env.installer-debian}} retention-days: ${{env.retention-days}} if-no-files-found: error @@ -123,30 +127,43 @@ jobs: steps: - name: Download fat jar - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.jar - name: Download - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.deb - name: Download - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.dmg - name: Download - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: evomaster.msi - - uses: "marvinpinto/action-automatic-releases@latest" +## Doesn't seem any longer mantained... plus usability issues +# - uses: "marvinpinto/action-automatic-releases@latest" +# with: +# repo_token: "${{ secrets.GITHUB_TOKEN }}" +# prerelease: false +# files: | +# evomaster.jar +# ${{env.installer-windows}} +# ${{env.installer-osx}} +# ${{env.installer-debian}} + + - name: Release + uses: softprops/action-gh-release@v1 with: - repo_token: "${{ secrets.GITHUB_TOKEN }}" prerelease: false + draft: false + fail_on_unmatched_files: true files: | evomaster.jar - evomaster.deb - evomaster.dmg - evomaster.msi + ${{env.installer-windows}} + ${{env.installer-osx}} + ${{env.installer-debian}}