Skip to content

Release

Release #2

Workflow file for this run

name: Manual Release
on:
workflow_dispatch:
inputs:
version:
description: 'Release version'
required: true
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.22
- name: Install fyne-cross
run: go install github.com/fyne-io/fyne-cross@latest
- name: Cross-compile for Linux
run: fyne-cross linux
- name: Prepare DEB package
run: |
mkdir -p .debpkg/DEBIAN
echo "Package: SoundscapeSync" > .debpkg/DEBIAN/control
echo "Version: 1.0" >> .debpkg/DEBIAN/control
echo "Architecture: amd64" >> .debpkg/DEBIAN/control
echo "Maintainer: Dominik Polakovics <[email protected]>" >> .debpkg/DEBIAN/control
mkdir -p .debpkg/usr/bin
cp fyne-cross/bin/linux-amd64/soundscape-sync .debpkg/usr/bin
- name: Create DEB package
uses: jiro4989/build-deb-action@v3
with:
package: SoundscapeSync
package_root: .debpkg
maintainer: "Dominik Polakovics <[email protected]>"
version: 1.0
arch: 'amd64'
desc: 'This is my sample package.'
depends: 'ffmpeg'
- name: get file name
run: |
mv *.deb soundscapesync-1.0.deb
- name: Upload Linux artifact
uses: actions/upload-artifact@v3
with:
name: linux-build
path: fyne-cross/bin/linux-amd64
- name: Upload Debian artifact
uses: actions/upload-artifact@v3
with:
name: debian-build
path: soundscapesync-1.0.deb
build-windows:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.22
- name: Install fyne-cross
run: go install github.com/fyne-io/fyne-cross@latest
- name: Cross-compile for Windows
run: fyne-cross windows
- name: Cross-compile for Linux
run: fyne-cross linux
- name: Upload Windows artifact
uses: actions/upload-artifact@v3
with:
name: windows-build
path: fyne-cross/bin/windows-amd64
build-mac:
runs-on: macos-13
steps:
- uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.22
- name: Install fyne
run: go install fyne.io/fyne/v2/cmd/fyne@latest
- name: Build Fyne application for macOS
run: fyne package -os darwin -icon Icon.png
- name: Upload macOS artifact
uses: actions/upload-artifact@v3
with:
name: macos-build
path: SoundscapeSync.app
create-release:
runs-on: ubuntu-latest
needs: [build-linux, build-windows, build-mac]
steps:
- uses: actions/download-artifact@v4
with:
name: linux-build
- name: Prepare DEB package
run: |
mkdir -p .debpkg/DEBIAN
echo "Package: SoundscapeSync" > .debpkg/DEBIAN/control
echo "Version: ${{ github.event.inputs.version }}" >> .debpkg/DEBIAN/control
echo "Architecture: amd64" >> .debpkg/DEBIAN/control
echo "Maintainer: Dominik Polakovics <[email protected]>" >> .debpkg/DEBIAN/control
mkdir -p .debpkg/usr/bin
cp fyne-cross/bin/linux-amd64/soundscape-sync .debpkg/usr/bin
- name: Create DEB package
uses: jiro4989/build-deb-action@v3
with:
package: SoundscapeSync
package_root: .debpkg
maintainer: "Dominik Polakovics <[email protected]>"
version: "${{ github.event.inputs.version }}"
arch: 'amd64'
desc: 'This is my sample package.'
depends: 'ffmpeg'
- name: get file name
run: |
mv *.deb soundscapesync-${{ github.event.inputs.version }}.deb
- uses: actions/download-artifact@v4
with:
name: windows-build
- uses: actions/download-artifact@v4
with:
name: macos-build
- name: show folders
run: |
ls -al
ls -al macos-build/