Skip to content

Commit

Permalink
changed release action
Browse files Browse the repository at this point in the history
  • Loading branch information
arcuri82 committed Oct 11, 2023
1 parent 8001a5e commit 378ac3b
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 46 deletions.
40 changes: 20 additions & 20 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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') }}
Expand All @@ -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
Expand Down Expand Up @@ -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') }}
Expand All @@ -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') }}
Expand All @@ -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') }}
Expand All @@ -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
Expand All @@ -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
Expand Down Expand Up @@ -221,21 +221,21 @@ 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
- name: Build installation file
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
Expand All @@ -246,21 +246,21 @@ 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
- name: Build installation file
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
Expand All @@ -271,21 +271,21 @@ 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
- name: Build installation file
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
Expand Down
69 changes: 43 additions & 26 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
name: Release on GitHub


## Run only when we push a tag. See "docs/release.md" instructions
on:
push:
tags:
Expand All @@ -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
Expand All @@ -44,74 +48,74 @@ 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
- name: Build installation file
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

installer-for-osx:
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
- name: Build installation file
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

installer-for-debian:
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
- name: Build installation file
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

Expand All @@ -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}}

0 comments on commit 378ac3b

Please sign in to comment.