mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-06-05 21:59:02 -04:00
add installer builds to artifacts w/ GH action (#864)
This commit is contained in:
parent
06102054fb
commit
de07a926c2
2 changed files with 140 additions and 25 deletions
108
.github/workflows/artifacts.yml
vendored
Normal file
108
.github/workflows/artifacts.yml
vendored
Normal file
|
@ -0,0 +1,108 @@
|
||||||
|
name: Build Haveno Installers
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-linux:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Set up JDK
|
||||||
|
uses: actions/setup-java@v2
|
||||||
|
with:
|
||||||
|
distribution: 'adopt'
|
||||||
|
java-version: '21'
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y rpm
|
||||||
|
|
||||||
|
- name: Build Haveno Installer for Linux
|
||||||
|
run: |
|
||||||
|
./gradlew clean build --refresh-keys --refresh-dependencies
|
||||||
|
./gradlew packageInstallers
|
||||||
|
working-directory: .
|
||||||
|
|
||||||
|
- name: Move Release Files
|
||||||
|
run: |
|
||||||
|
mkdir ${{ github.workspace }}/release
|
||||||
|
mv desktop/build/temp-*/binaries/haveno-*.rpm ${{ github.workspace }}/release
|
||||||
|
mv desktop/build/temp-*/binaries/haveno_*.deb ${{ github.workspace }}/release
|
||||||
|
mv desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: HavenoInstaller-linux
|
||||||
|
path: ${{ github.workspace }}/release
|
||||||
|
|
||||||
|
|
||||||
|
build-macos:
|
||||||
|
runs-on: macos-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Set up JDK
|
||||||
|
uses: actions/setup-java@v2
|
||||||
|
with:
|
||||||
|
distribution: 'adopt'
|
||||||
|
java-version: '21'
|
||||||
|
|
||||||
|
- name: Build Haveno Installer for macOS
|
||||||
|
run: |
|
||||||
|
./gradlew clean build --refresh-keys --refresh-dependencies
|
||||||
|
./gradlew packageInstallers
|
||||||
|
working-directory: .
|
||||||
|
|
||||||
|
- name: Move Release Files
|
||||||
|
run: |
|
||||||
|
mkdir ${{ github.workspace }}/release
|
||||||
|
mv desktop/build/temp-*/binaries/Haveno-*.dmg ${{ github.workspace }}/release
|
||||||
|
mv desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: HavenoInstaller-macos
|
||||||
|
path: ${{ github.workspace }}/release
|
||||||
|
|
||||||
|
build-windows:
|
||||||
|
runs-on: windows-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Set up JDK
|
||||||
|
uses: actions/setup-java@v2
|
||||||
|
with:
|
||||||
|
distribution: 'adopt'
|
||||||
|
java-version: '21'
|
||||||
|
|
||||||
|
- name: Install WiX Toolset
|
||||||
|
run: |
|
||||||
|
Invoke-WebRequest -Uri 'https://github.com/wixtoolset/wix3/releases/download/wix314rtm/wix314.exe' -OutFile wix314.exe
|
||||||
|
.\wix314.exe /quiet /norestart
|
||||||
|
shell: powershell
|
||||||
|
|
||||||
|
- name: Build Haveno Installer for Windows
|
||||||
|
run: |
|
||||||
|
./gradlew clean build --refresh-keys --refresh-dependencies
|
||||||
|
./gradlew packageInstallers
|
||||||
|
working-directory: .
|
||||||
|
|
||||||
|
- name: Move Release Files
|
||||||
|
run: |
|
||||||
|
mkdir ${{ github.workspace }}/release
|
||||||
|
Move-Item -Path desktop\build\temp-*/binaries\Haveno-*.exe -Destination ${{ github.workspace }}/release
|
||||||
|
Move-Item -Path desktop\build\temp-*/binaries\desktop-*.jar.SHA-256 -Destination ${{ github.workspace }}/release
|
||||||
|
shell: powershell
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: HavenoInstaller-windows
|
||||||
|
path: ${{ github.workspace }}/release
|
|
@ -6,6 +6,7 @@ task jpackageSanityChecks {
|
||||||
description 'Interactive sanity checks on the version of the code that will be packaged'
|
description 'Interactive sanity checks on the version of the code that will be packaged'
|
||||||
|
|
||||||
doLast {
|
doLast {
|
||||||
|
if (!System.getenv("CI")) {
|
||||||
executeCmd("git --no-pager log -5 --oneline")
|
executeCmd("git --no-pager log -5 --oneline")
|
||||||
ant.input(message: "Above you see the current HEAD and its recent history.\n" +
|
ant.input(message: "Above you see the current HEAD and its recent history.\n" +
|
||||||
"Is this the right commit for packaging? (y=continue, n=abort)",
|
"Is this the right commit for packaging? (y=continue, n=abort)",
|
||||||
|
@ -34,6 +35,12 @@ task jpackageSanityChecks {
|
||||||
if (ant.properties['sanity-check-3'] == 'n') {
|
if (ant.properties['sanity-check-3'] == 'n') {
|
||||||
ant.fail('Aborting')
|
ant.fail('Aborting')
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
println "CI environment detected, skipping interactive sanity checks"
|
||||||
|
executeCmd("git --no-pager log -5 --oneline")
|
||||||
|
executeCmd("git status --short --branch")
|
||||||
|
executeCmd("java --version")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue