Skip to content

chore: add issue templates (#62) #155

chore: add issue templates (#62)

chore: add issue templates (#62) #155

Workflow file for this run

name: Amethyst Launcher Auto Build
on:
push:
branches:
- master
- ci-test
jobs:
get-version:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Get app version
id: step
run: |
echo "text=$(jq -r .version core/tauri.conf.json)" >> "$GITHUB_OUTPUT"
outputs:
app_version: ${{ steps.step.outputs.text }}
build-arm-linux:
needs: [get-version]
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
- name: Install frontend dependencies
env:
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
run: |
yarn install
- name: Build the app
env:
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
run: |
yarn tauri build -- --verbose
- name: Show files
run: |
tree ${{ github.workspace }}/core/target
- name: Upload deb bundle
uses: actions/upload-artifact@v4
with:
name: Debian bundle(aarch64)
path: ${{ github.workspace }}/core/target/release/bundle/deb/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_arm64.deb
- name: Upload rpm bundle
uses: actions/upload-artifact@v4
with:
name: RPM bundle(aarch64)
path: ${{ github.workspace }}/core/target/release/bundle/rpm/amethyst-launcher-${{ needs.get-version.outputs.app_version }}-1.aarch64.rpm
- name: Upload appimage bundle
uses: actions/upload-artifact@v4
with:
name: AppImage bundle(aarch64)
path: ${{ github.workspace }}/core/target/release/bundle/appimage/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_aarch64.AppImage
- name: Upload updater signature
uses: actions/upload-artifact@v4
with:
name: Updater signature(aarch64-appimage)
path: ${{ github.workspace }}/core/target/release/bundle/appimage/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_aarch64.AppImage.sig
build-other:
needs: [get-version]
permissions:
contents: write
strategy:
fail-fast: false
matrix:
include:
- platform: "macos-latest" # for Arm based macs (M1 and above).
args: "--target aarch64-apple-darwin"
arch: "aarch64"
target: "aarch64"
- platform: "macos-latest" # for Intel based macs.
args: "--target x86_64-apple-darwin"
arch: "x64"
target: "x86_64"
- platform: "ubuntu-22.04"
args: ""
- platform: "windows-latest"
args: ""
runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4
- name: install dependencies (ubuntu only)
if: matrix.platform == 'ubuntu-22.04' # This must match the platform value defined above.
run: |
sudo apt-get update
sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf tree
- name: setup node
uses: actions/setup-node@v4
with:
node-version: lts/*
cache: "yarn" # Set this to npm, yarn or pnpm.
- name: install Rust stable
uses: dtolnay/rust-toolchain@stable # Set this to dtolnay/rust-toolchain@nightly
with:
# Those targets are only used on macos runners so it's in an `if` to slightly speed up windows and linux builds.
targets: ${{ matrix.platform == 'macos-latest' && 'aarch64-apple-darwin,x86_64-apple-darwin' || '' }}
- name: Rust cache
uses: swatinem/rust-cache@v2
with:
workspaces: "./core -> target"
cache-on-failure: true
# - name: install tree
# if: matrix.platform == 'macos-latest'
# run: brew install tree
- name: install frontend dependencies
# If you don't have `beforeBuildCommand` configured you may want to build your frontend here too.
env:
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
run: yarn install # change this to npm or pnpm depending on which one you use.
- name: Build the app
env:
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
run: |
yarn tauri build -- ${{ matrix.args }}
# - name: show files
# run: |
# tree ${{ github.workspace }}/core/target
# Upload the macos artifacts
- name: Upload deb bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'ubuntu-22.04'
with:
name: Debian bundle(amd64)
path: ${{ github.workspace }}/core/target/release/bundle/deb/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_amd64.deb
- name: Upload rpm bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'ubuntu-22.04'
with:
name: RPM bundle(x86_64)
path: ${{ github.workspace }}/core/target/release/bundle/rpm/amethyst-launcher-${{ needs.get-version.outputs.app_version }}-1.x86_64.rpm
- name: Upload appimage bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'ubuntu-22.04'
with:
name: AppImage bundle(amd64)
path: ${{ github.workspace }}/core/target/release/bundle/appimage/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_amd64.AppImage
- name: Upload appimage updater signature
uses: actions/upload-artifact@v4
if: matrix.platform == 'ubuntu-22.04'
with:
name: Updater signature(amd64-appimage)
path: ${{ github.workspace }}/core/target/release/bundle/appimage/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_amd64.AppImage.sig
- name: Upload Microsoft Installer bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'windows-latest'
with:
name: Microsoft Installer bundle(64-bit)
path: ${{ github.workspace }}/core/target/release/bundle/msi/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_x64_en-US.msi
- name: Upload Microsoft Installer bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'windows-latest'
with:
name: Updater signature(64-bit-msi)
path: ${{ github.workspace }}/core/target/release/bundle/msi/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_x64_en-US.msi.sig
- name: Upload NSIS bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'windows-latest'
with:
name: NSIS bundle(64-bit)
path: ${{ github.workspace }}/core/target/release/bundle/nsis/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_x64-setup.exe
- name: Upload NSIS updater signature
uses: actions/upload-artifact@v4
if: matrix.platform == 'windows-latest'
with:
name: Updater signature(64-bit-nsis)
path: ${{ github.workspace }}/core/target/release/bundle/nsis/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_x64-setup.exe.sig
- name: Upload dmg bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'macos-latest'
with:
name: MacOS ${{ matrix.arch }} bundle(dmg)
path: ${{ github.workspace }}/core/target/${{matrix.target}}-apple-darwin/release/bundle/dmg/amethyst-launcher_${{ needs.get-version.outputs.app_version }}_${{ matrix.arch }}.dmg
- name: Upload macos updater bundle
uses: actions/upload-artifact@v4
if: matrix.platform == 'macos-latest'
with:
name: MacOS ${{ matrix.arch }} updater bundle
path: ${{ github.workspace }}/core/target/${{matrix.target}}-apple-darwin/release/bundle/macos/amethyst-launcher.app.tar.gz
- name: Upload macos updater signature
uses: actions/upload-artifact@v4
if: matrix.platform == 'macos-latest'
with:
name: MacOS ${{ matrix.arch }} updater signature
path: ${{ github.workspace }}/core/target/${{matrix.target}}-apple-darwin/release/bundle/macos/amethyst-launcher.app.tar.gz.sig