mirror of
https://github.com/khoj-ai/khoj.git
synced 2024-11-30 10:53:02 +01:00
99 lines
3.4 KiB
YAML
99 lines
3.4 KiB
YAML
name: desktop
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "*"
|
|
branches:
|
|
- 'master'
|
|
paths:
|
|
- src/interface/desktop/**
|
|
- .github/workflows/desktop.yml
|
|
|
|
jobs:
|
|
build:
|
|
name: 🖥️ Build, Release Desktop App
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
TODESKTOP_ACCESS_TOKEN: ${{ secrets.TODESKTOP_ACCESS_TOKEN }}
|
|
TODESKTOP_EMAIL: ${{ secrets.TODESKTOP_EMAIL }}
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
working-directory: src/interface/desktop
|
|
steps:
|
|
- name: ⬇️ Checkout Code
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: ⤵️ Install Node
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: "lts/*"
|
|
|
|
- name: ⚙️ Setup Desktop Build
|
|
run: |
|
|
yarn
|
|
npm install -g @todesktop/cli
|
|
sed -i "s/\"id\": \"\"/\"id\": \"${{ secrets.TODESKTOP_ID }}\"/g" todesktop.json
|
|
|
|
- name: ⚙️ Build Desktop App
|
|
run: |
|
|
npx todesktop build
|
|
|
|
- name: 📦 Release Desktop App
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
run: |
|
|
npx todesktop release --latest --force
|
|
|
|
- name: ⤵️ Get Desktop Apps
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
run: |
|
|
build_no=`npx todesktop builds --latest | tail -n 1 | awk -F'/' '{print $NF}'`
|
|
sleep 900 # wait for 15 minutes for the build to be available
|
|
wget https://download.khoj.dev/builds/$build_no/mac/dmg/arm64 -O khoj-${{ github.ref_name }}-arm64.dmg
|
|
wget https://download.khoj.dev/builds/$build_no/mac/dmg/x64 -O khoj-${{ github.ref_name }}-x64.dmg
|
|
wget https://download.khoj.dev/builds/$build_no/windows/nsis/x64 -O khoj-${{ github.ref_name }}-x64.exe
|
|
wget https://download.khoj.dev/builds/$build_no/linux/deb/x64 -O khoj-${{ github.ref_name }}-x64.deb
|
|
wget https://download.khoj.dev/builds/$build_no/linux/appImage/x64 -O khoj-${{ github.ref_name }}-x64.AppImage
|
|
|
|
- name: ⏫ Upload Mac ARM App
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
if-no-files-found: warn
|
|
name: khoj-${{ github.ref_name }}-arm64.dmg
|
|
path: src/interface/desktop/khoj-${{ github.ref_name }}-arm64.dmg
|
|
|
|
- name: ⏫ Upload Mac x64 App
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
if-no-files-found: warn
|
|
name: khoj-${{ github.ref_name }}-x64.dmg
|
|
path: src/interface/desktop/khoj-${{ github.ref_name }}-x64.dmg
|
|
|
|
- name: ⏫ Upload Windows App
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
if-no-files-found: warn
|
|
name: khoj-${{ github.ref_name }}-x64.exe
|
|
path: src/interface/desktop/khoj-${{ github.ref_name }}-x64.exe
|
|
|
|
- name: ⏫ Upload Debian App
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
if-no-files-found: warn
|
|
name: khoj-${{ github.ref_name }}-x64.deb
|
|
path: src/interface/desktop/khoj-${{ github.ref_name }}-x64.deb
|
|
|
|
- name: ⏫ Upload Linux App Image
|
|
if: startsWith(github.ref, 'refs/tags/')
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
if-no-files-found: warn
|
|
name: khoj-${{ github.ref_name }}-x64.AppImage
|
|
path: src/interface/desktop/khoj-${{ github.ref_name }}-x64.AppImage
|