Skip to content

Manual build

Manual build #4

name: Manual build
on: workflow_dispatch
jobs:
publish-osx:
name: Publish for MacOS
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
with:
submodules: 'true'
- name: Setup Dotnet for use with actions
uses: actions/setup-dotnet@v3
with:
dotnet-version: '7.0.304'
- name: Cache Nuget Packages
uses: actions/cache@v2
with:
path: ~/.nuget/packages
key: macOS-nuget-${{ hashFiles('**/packages.lock.json') }}
restore-keys: |
macOS-nuget
- name: Set up npm
uses: actions/setup-node@v3
with:
node-version: '16'
- name: Install electronize
run: dotnet tool restore
- name: Install npm dependencies
working-directory: ./AuthoringTool
run: npm install
- name: Run Tailwind build
working-directory: ./AuthoringTool
run: npm run tailwind-build
- name: Build AuthoringTool binary
working-directory: ./AuthoringTool
run: dotnet electronize build /target osx
- name: Save Build folder
uses: actions/upload-artifact@v3
with:
name: authoringtool-osx
path: ./AuthoringTool/bin/Desktop_Publish/AuthoringTool-*.dmg
if-no-files-found: error
publish-windows:
name: Publish for Windows
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
with:
submodules: 'true'
- name: Setup Dotnet for use with actions
uses: actions/setup-dotnet@v3
with:
dotnet-version: '7.0.304'
- name: Cache Nuget Packages
uses: actions/cache@v2
with:
path: ~/.nuget/packages
key: Windows-nuget-${{ hashFiles('**/packages.lock.json') }}
restore-keys: |
Windows-nuget
- name: Set up npm
uses: actions/setup-node@v3
with:
node-version: '16'
- name: Install electronize
run: dotnet tool restore
- name: Install npm dependencies
working-directory: ./AuthoringTool
run: npm install
- name: Run Tailwind build
working-directory: ./AuthoringTool
run: npm run tailwind-build
- name: Build AuthoringTool binary
working-directory: ./AuthoringTool
run: dotnet electronize build /target win
- name: Save Build folder
uses: actions/upload-artifact@v3
with:
name: authoringtool-win
path: ./AuthoringTool/bin/Desktop_Publish/AuthoringTool*.exe
if-no-files-found: error
publish-linux:
name: Publish for Linux
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
with:
submodules: 'true'
- name: Setup Dotnet for use with actions
uses: actions/setup-dotnet@v3
with:
dotnet-version: '7.0.304'
- name: Cache Nuget Packages
uses: actions/cache@v2
with:
path: ~/.nuget/packages
key: Linux-nuget-${{ hashFiles('**/packages.lock.json') }}
restore-keys: |
Linux-nuget
- name: Set up npm
uses: actions/setup-node@v3
with:
node-version: '16'
- name: Install electronize
run: dotnet tool restore
- name: Install npm dependencies
working-directory: ./AuthoringTool
run: npm install
- name: Run Tailwind build
working-directory: ./AuthoringTool
run: npm run tailwind-build
- name: Build AuthoringTool binary
working-directory: ./AuthoringTool
run: dotnet electronize build /target linux
- name: Save Build folder
uses: actions/upload-artifact@v3
with:
name: authoringtool-linux
path: ./AuthoringTool/bin/Desktop_Publish/
if-no-files-found: error
publish-linux-arm64:
name: Publish for Linux ARM64
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: 'true'
- name: Install Snapcraft
uses: samuelmeuli/action-snapcraft@v2
- name: Setup Dotnet for use with actions
uses: actions/setup-dotnet@v3
with:
dotnet-version: '7.0.304'
- name: Cache Nuget Packages
uses: actions/cache@v2
with:
path: ~/.nuget/packages
key: Linux-nuget-${{ hashFiles('**/packages.lock.json') }}
restore-keys: |
Linux-nuget
- name: Set up npm
uses: actions/setup-node@v3
with:
node-version: '16'
- name: Install electronize
run: dotnet tool restore
- name: Install npm dependencies
working-directory: ./AuthoringTool
run: npm install
- name: Run Tailwind build
working-directory: ./AuthoringTool
run: npm run tailwind-build
- name: Build AuthoringTool binary
working-directory: ./AuthoringTool
run: dotnet electronize build /target custom "linux-arm64;linux" /electron-arch arm64
- name: Save Build folder
uses: actions/upload-artifact@v3
with:
name: authoringtool-linux-arm64
path: ./AuthoringTool/bin/Desktop_Publish/
if-no-files-found: error