name: Build Beta on: push: branches: - beta env: IS_CI: 'true' jobs: # CheckCode: # name: Lint Code # runs-on: ubuntu-latest # steps: # - name: Check out git repository # uses: actions/checkout@v4 # - name: Install Node.js # uses: actions/setup-node@v4 # with: # node-version: '18' # - name: Cache file # uses: actions/cache@v4 # with: # path: | # node_modules # $HOME/.cache/electron # $HOME/.cache/electron-builder # $HOME/.npm/_prebuilds # key: ${{ runner.os }}-build-caches-${{ hashFiles('**/package-lock.json') }} # restore-keys: | # ${{ runner.os }}-build- # - name: Install Dependencies # run: | # npm ci # - name: Lint src code # run: npm run lint Windows: name: Windows runs-on: windows-latest env: NPM_CACHE: '%APPDATA%\npm-cache' # needs: CheckCode steps: - name: Check out git repository uses: actions/checkout@v4 - name: Setup Node Env uses: ./.github/actions/setup - name: Build src code run: | git status --porcelain npm run build - name: Build Package Setup x64 run: npm run pack:win:setup:x64 - name: Upload Artifact Setup x64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-x64-Setup path: build/*-x64-Setup.exe - name: Build Package 7z x64 run: npm run pack:win:7z:x64 - name: Upload Artifact 7z x64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-win_x64-green path: build/*win_x64-green.7z - name: Build Package Setup arm64 run: npm run pack:win:setup:arm64 - name: Upload Artifact Setup arm64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-arm64-Setup path: build/*-arm64-Setup.exe - name: Build Package 7z arm64 run: npm run pack:win:7z:arm64 - name: Upload Artifact 7z arm64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-win_arm64-green path: build/*win_arm64-green.7z - name: Install old electron run: npm install electron@22 - name: Install python setuptools run: pip.exe install setuptools - name: Build Package win7 Setup x64 run: npm run pack:win7:setup:x64 - name: Upload Artifact win7 Setup x64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-win7_x64-Setup path: build/*win7_x64-Setup.exe - name: Build Package win7 7z x64 run: npm run pack:win7:7z:x64 - name: Upload Artifact win7 7z x64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-win7_x64-green path: build/*win7_x64-green.7z - name: Build Package win7 7z x86 run: npm run pack:win7:7z:x86 - name: Upload Artifact win7 7z x86 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-win7_x86-green path: build/*win7_x86-green.7z - name: Generate file MD5 run: | cd build Get-FileHash *.exe,*.7z -Algorithm MD5 | Format-List Mac: name: Mac runs-on: macos-latest # needs: CheckCode env: NPM_CACHE: $HOME/.npm steps: - name: Check out git repository uses: actions/checkout@v4 - name: Install python setuptools run: python3 -m pip install setuptools - name: Setup Node Env uses: ./.github/actions/setup - name: Build src code run: | git status --porcelain npm run build - name: Build Package dmg run: | npm run pack:mac:dmg npm run pack:mac:dmg:arm64 - name: Upload Artifact dmg uses: actions/upload-artifact@v4 with: name: lx-music-desktop-mac-dmg path: | build/*.dmg !build/*-arm64.dmg - name: Upload Artifact dmg uses: actions/upload-artifact@v4 with: name: lx-music-desktop-mac-dmg-arm64 path: build/*-arm64.dmg - name: Generate file MD5 run: | cd build md5 *.dmg Linux: name: Linux runs-on: ubuntu-latest env: NPM_CACHE: $HOME/.npm # needs: CheckCode steps: - name: Install package run: sudo apt-get update && sudo apt-get install -y rpm libarchive-tools - name: Check out git repository uses: actions/checkout@v4 - name: Setup Node Env uses: ./.github/actions/setup - name: Build src code run: | git status --porcelain npm run build - name: Build Package deb amd64 run: npm run pack:linux:deb:amd64 - name: Upload Artifact deb amd64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-deb-amd64 path: build/*_amd64.deb - name: Build Package deb arm64 run: npm run pack:linux:deb:arm64 - name: Upload Artifact deb arm64 uses: actions/upload-artifact@v4 with: name: lx-music-desktop-deb-arm64 path: build/*_arm64.deb - name: Build Package deb armv7l run: npm run pack:linux:deb:armv7l - name: Upload Artifact deb armv7l uses: actions/upload-artifact@v4 with: name: lx-music-desktop-deb-armv7l path: build/*_armv7l.deb - name: Build Package x64 appImage run: npm run pack:linux:appImage - name: Upload Artifact x64 appImage uses: actions/upload-artifact@v4 with: name: lx-music-desktop-x64-appImage path: build/*_x64.AppImage - name: Build Package x64 rpm run: npm run pack:linux:rpm - name: Upload Artifact x64 rpm uses: actions/upload-artifact@v4 with: name: lx-music-desktop-x64-rpm path: build/*.x64.rpm - name: Build Package x64 pacman run: npm run pack:linux:pacman - name: Upload Artifact x64 pacman uses: actions/upload-artifact@v4 with: name: lx-music-desktop-x64-pacman path: build/*_x64.pacman - name: Generate file MD5 run: | cd build md5sum *.deb *.rpm *.pacman *.AppImage