name: Desktop Release on: workflow_dispatch: jobs: Mac: if: true == false runs-on: macos-latest defaults: run: working-directory: packages/desktop steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: registry-url: 'https://registry.npmjs.org' - run: yarn install - run: yarn build:web:front - name: Compile Mac run: yarn run webpack --config desktop.webpack.prod.js - name: MacX64 run: | yarn run electron-builder --mac --x64 --publish=never node scripts/fix-mac-zip - name: MacArm64 run: yarn run electron-builder --mac --arm64 --publish=never - name: Upload uses: actions/upload-artifact@v3.0.0 with: name: assets path: 'packages/desktop/dist/*+(.snap|.AppImage|.yml|.yaml|.blockmap|.deb|.dmg|.zip|.exe)' Linux: if: true == false runs-on: ubuntu-latest defaults: run: working-directory: packages/desktop steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: registry-url: 'https://registry.npmjs.org' - run: yarn install - run: yarn build:web:front - name: Compile for AppImage run: yarn run webpack --config desktop.webpack.prod.js - name: AppImage run: yarn run electron-builder --linux --x64 --ia32 -c.linux.target=AppImage --publish=never - name: AppImageX64 run: yarn run electron-builder --linux --x64 -c.linux.target=AppImage --publish=never - name: AppImageArm64 run: yarn run electron-builder --linux --arm64 -c.linux.target=AppImage --publish=never - name: Deb run: | yarn run webpack --config desktop.webpack.prod.js --env deb yarn run electron-builder --linux --x64 --ia32 -c.linux.target=deb --publish=never - name: DebArm64 env: npm_config_target_arch: 'arm64' USE_SYSTEM_FPM: 'true' run: | yarn run webpack --config desktop.webpack.prod.js --env deb yarn run electron-builder --linux --arm64 -c.linux.target=deb --publish=never - name: Dir run: | yarn run webpack --config desktop.webpack.prod.js yarn run electron-builder --linux --x64 -c.linux.target=dir --publish=never - name: DirArm64 run: | yarn run webpack --config desktop.webpack.prod.js yarn run electron-builder --linux --arm64 -c.linux.target=dir --publish=never env: npm_config_target_arch: 'arm64' - name: Snap run: | yarn run webpack --config desktop.webpack.prod.js --env snap yarn run electron-builder --linux --x64 -c.linux.target=snap --publish=never - name: SnapArm64 run: | yarn run webpack --config desktop.webpack.prod.js --env snap yarn run electron-builder --linux --arm64 -c.linux.target=snap --publish=never env: npm_config_target_arch: 'arm64' SNAPCRAFT_BUILD_ENVIRONMENT: 'host' - name: Upload uses: actions/upload-artifact@v3.0.0 with: name: assets path: 'packages/desktop/dist/*+(.snap|.AppImage|.yml|.yaml|.blockmap|.deb|.dmg|.zip|.exe)' Windows: runs-on: windows-latest defaults: run: working-directory: packages/desktop steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: registry-url: 'https://registry.npmjs.org' - run: yarn install - run: yarn build:web:front - run: yarn run webpack --config desktop.webpack.prod.js - run: yarn run electron-builder --windows --x64 --ia32 --publish=never - name: Upload uses: actions/upload-artifact@v3.0.0 with: name: assets path: 'packages/desktop/dist/*+(.snap|.AppImage|.yml|.yaml|.blockmap|.deb|.dmg|.zip|.exe)' Publish: runs-on: ubuntu-latest needs: [Windows, Linux, Mac] defaults: run: working-directory: packages/desktop steps: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: registry-url: 'https://registry.npmjs.org' - uses: actions/download-artifact@v3 with: name: assets path: packages/desktop/dist - run: node scripts/sums.mjs - name: get-npm-version id: package-version uses: martinbeentjes/npm-get-version-action@main with: path: packages/desktop - name: Release uses: softprops/action-gh-release@v1 with: token: ${{ secrets.CI_PAT_TOKEN }} tag_name: "@standardnotes/desktop@${{ steps.package-version.outputs.current-version}}" prerelease: true draft: true name: "Desktop ${{ steps.package-version.outputs.current-version}}" files: | packages/desktop/dist/* - run: node scripts/publishSnap.mjs