Skip to content

Merge pull request #86 from GalaxyPay/dev #11

Merge pull request #86 from GalaxyPay/dev

Merge pull request #86 from GalaxyPay/dev #11

Workflow file for this run

name: Publish & Release
on:
push:
branches: [main]
env:
VERSION: "3.5.7"
jobs:
webui:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 10
run_install: false
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 22
cache: "pnpm"
cache-dependency-path: webui/pnpm-lock.yaml
- name: Build webui
run: |
cd webui
pnpm install
pnpm build
cd ..
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: webui
path: "publish/wwwroot"
retention-days: 1
darwin-amd64-package:
runs-on: macos-latest
needs: webui
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Publish FUNC
run: |
cd FUNC
dotnet publish -o ../publish -r osx-x64
cd ..
- name: Download webui Artifact
uses: actions/download-artifact@v4
with:
name: webui
path: "publish/wwwroot"
- name: Create Package
run: ./create-package-pkg.sh $VERSION amd64
- name: Upload darwin-amd64 Artifact
uses: actions/upload-artifact@v4
with:
name: darwin-amd64-package
path: "Output/*.pkg"
retention-days: 1
darwin-arm64-package:
runs-on: macos-latest
needs: webui
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Publish FUNC
run: |
cd FUNC
dotnet publish -o ../publish -r osx-arm64
cd ..
- name: Download webui Artifact
uses: actions/download-artifact@v4
with:
name: webui
path: "publish/wwwroot"
- name: Create Package
run: ./create-package-pkg.sh $VERSION arm64
- name: Upload darwin-arm64 Artifact
uses: actions/upload-artifact@v4
with:
name: darwin-arm64-package
path: "Output/*.pkg"
retention-days: 1
linux-amd64-package:
runs-on: ubuntu-latest
needs: webui
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Publish FUNC
run: |
cd FUNC
dotnet publish -o ../publish
cd ..
- name: Download webui Artifact
uses: actions/download-artifact@v4
with:
name: webui
path: "publish/wwwroot"
- name: Create Package
run: ./create-package-deb.sh $VERSION amd64
- name: Upload linux-amd64 Artifact
uses: actions/upload-artifact@v4
with:
name: linux-amd64-package
path: "Output/*.deb"
retention-days: 1
linux-arm64-package:
runs-on: ubuntu-latest
needs: webui
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Publish FUNC
run: |
cd FUNC
dotnet publish -o ../publish -r linux-arm64
cd ..
- name: Download webui Artifact
uses: actions/download-artifact@v4
with:
name: webui
path: "publish/wwwroot"
- name: Create Package
run: ./create-package-deb.sh $VERSION arm64
- name: Upload linux-arm64 Artifact
uses: actions/upload-artifact@v4
with:
name: linux-arm64-package
path: "Output/*.deb"
retention-days: 1
windows-amd64-setup:
runs-on: windows-latest
needs: webui
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Publish FUNC
run: |
cd FUNC
dotnet publish -o ..\publish
cd ..
- name: Publish NodeService
run: |
cd NodeService
dotnet publish -o ..\publish\Services
cd ..
- name: Publish RetiService
run: |
cd RetiService
dotnet publish -o ..\publish\Services
cd ..
- name: Download webui Artifact
uses: actions/download-artifact@v4
with:
name: webui
path: "publish/wwwroot"
- name: Create Setup
uses: Minionguyjpro/[email protected]
with:
path: ./FUNC.iss
options: /DMyAppVersion=${{env.VERSION}}
- name: Upload win Artifact
uses: actions/upload-artifact@v4
with:
name: windows-amd64-setup
path: "Output"
retention-days: 1
windows-arm64-setup:
runs-on: windows-11-arm
needs: webui
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup .NET Core
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Publish FUNC
run: |
cd FUNC
dotnet publish -o ..\publish -r win-arm64
cd ..
- name: Publish NodeService
run: |
cd NodeService
dotnet publish -o ..\publish\Services -r win-arm64
cd ..
- name: Publish RetiService
run: |
cd RetiService
dotnet publish -o ..\publish\Services -r win-arm64
cd ..
- name: Download webui Artifact
uses: actions/download-artifact@v4
with:
name: webui
path: "publish/wwwroot"
- name: Create Setup
uses: Minionguyjpro/[email protected]
with:
path: ./FUNC.iss
options: /DMyAppVersion=${{env.VERSION}} /DMyArchitecture=arm64
- name: Upload win-arm Artifact
uses: actions/upload-artifact@v4
with:
name: windows-arm64-setup
path: "Output"
retention-days: 1
create-release:
runs-on: ubuntu-latest
needs:
[
darwin-amd64-package,
darwin-arm64-package,
linux-amd64-package,
linux-arm64-package,
windows-amd64-setup,
windows-arm64-setup,
]
steps:
- name: Download darwin-amd64 Artifact
uses: actions/download-artifact@v4
with:
name: darwin-amd64-package
path: "Output"
- name: Download darwin-arm64 Artifact
uses: actions/download-artifact@v4
with:
name: darwin-arm64-package
path: "Output"
- name: Download linux-amd64 Artifact
uses: actions/download-artifact@v4
with:
name: linux-amd64-package
path: "Output"
- name: Download linux-arm64 Artifact
uses: actions/download-artifact@v4
with:
name: linux-arm64-package
path: "Output"
- name: Download win Artifact
uses: actions/download-artifact@v4
with:
name: windows-amd64-setup
path: "Output"
- name: Download win-arm Artifact
uses: actions/download-artifact@v4
with:
name: windows-arm64-setup
path: "Output"
- name: Create Release
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: v${{env.VERSION}}
artifacts: "Output/*"