Skip to content

Updated README.md

Updated README.md #35

name: Main
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: '20.x'
- name: Install dependencies
run: npm install
- name: Install Quasar CLI
run: npm install -g @quasar/cli
- name: Build Quasar Electron App for Linux
run: quasar build -m electron
- name: Copy Icon
run: cp src-electron/icons/icon.png dist/electron/Packaged/QChatGPT-linux-x64
- name: Create ZIP Archive for Linux
run: |
cd dist/electron/Packaged
zip -r QChatGPT-linux-x64.zip QChatGPT-linux-x64
- name: Upload Linux Build Artifacts
uses: actions/upload-artifact@v2
with:
name: qchatgpt-linux
path: dist/electron/Packaged/QChatGPT-linux-x64.zip
build-windows:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: '20.x'
- name: Install dependencies
run: npm install
- name: Install Quasar CLI
run: npm install -g @quasar/cli
- name: Build Quasar Electron App for Windows
run: quasar build -m electron
- name: Create ZIP Archive for Windows
run: |
cd dist/electron/Packaged
Get-ChildItem -Force # Check directory structure
Compress-Archive -Path QChatGPT-win32-x64 -DestinationPath QChatGPT-win32-x64.zip
- name: Upload Windows Build Artifacts
uses: actions/upload-artifact@v2
with:
name: qchatgpt-windows
path: dist/electron/Packaged/QChatGPT-win32-x64.zip
build-macos:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: '20.x'
- name: Install dependencies
run: npm install
- name: Install Quasar CLI
run: npm install -g @quasar/cli
- name: Build Quasar Electron App for MacOS
run: quasar build -m electron
- name: Create ZIP Archive for MacOS
run: |
cd dist/electron/Packaged
ls -la # Check directory structure
zip -r QChatGPT-darwin-arm64.zip QChatGPT-darwin-arm64
- name: Upload MacOS Build Artifacts
uses: actions/upload-artifact@v2
with:
name: qchatgpt-macos
path: dist/electron/Packaged/QChatGPT-darwin-arm64.zip
build-android:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: '20.x'
- name: Install dependencies
run: npm install
- name: Install Quasar CLI
run: npm install -g @quasar/cli
- name: Set up JDK 17
uses: actions/setup-java@v1
with:
java-version: '17'
- name: Set up Android SDK
uses: android-actions/setup-android@v2
with:
api-level: 35
build-tools: 35.0.0
- name: Build Quasar Capacitor App for Android
run: quasar build -m capacitor -T android --skip-pkg
- name: Create APK for Android
run: |
cd src-capacitor/android
chmod +x ./gradlew
./gradlew assembleDebug
- name: Rename APK and create zip
run: |
cd src-capacitor/android/app/build/outputs/apk/debug
mv app-debug.apk QChatGPT.apk
zip QChatGPT-android.zip QChatGPT.apk
- name: Upload Android Build Artifacts
uses: actions/upload-artifact@v2
with:
name: qchatgpt-android
path: src-capacitor/android/app/build/outputs/apk/debug/QChatGPT-android.zip
publish:
name: Publish Version
needs: [build-linux, build-windows, build-macos, build-android]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download Linux Build Artifacts
uses: actions/download-artifact@v2
with:
name: qchatgpt-linux
- name: Download Windows Build Artifacts
uses: actions/download-artifact@v2
with:
name: qchatgpt-windows
- name: Download MacOS Build Artifacts
uses: actions/download-artifact@v2
with:
name: qchatgpt-macos
- name: Download Android Build Artifacts
uses: actions/download-artifact@v2
with:
name: qchatgpt-android
- name: Get version from package.json
id: get_version
run: echo "VERSION=$(jq -r .version package.json)" >> $GITHUB_ENV
- name: Create Version
env:
GH_TOKEN: ${{ secrets.PAT_TOKEN }}
run: |
ls -la # Check directory structure
gh release create "v${{ env.VERSION }}" QChatGPT-linux-x64.zip QChatGPT-win32-x64.zip QChatGPT-darwin-arm64.zip QChatGPT-android.zip -t "Version ${{ env.VERSION }}" -n "Version notes for ${{ env.VERSION }}" --target main