name: Build macOS App on: push: branches: [ master ] tags: - 'v*' workflow_dispatch: jobs: build-macos: runs-on: macos-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Flutter uses: subosito/flutter-action@v2 with: channel: 'stable' - name: Get dependencies run: flutter pub get - name: Build macOS app run: flutter build macos --release - name: Create DMG run: | npm install -g create-dmg create-dmg 'build/macos/Build/Products/Release/peridot.app' build/macos/Build/Products/Release/ || true mv build/macos/Build/Products/Release/*.dmg build/macos/Build/Products/Release/Peridot.dmg || true - name: Upload macOS artifact uses: actions/upload-artifact@v4 with: name: macos-build path: | build/macos/Build/Products/Release/peridot.app build/macos/Build/Products/Release/*.dmg - name: Create Release if: startsWith(github.ref, 'refs/tags/') uses: softprops/action-gh-release@v1 with: files: | build/macos/Build/Products/Release/*.dmg build/macos/Build/Products/Release/peridot.app draft: false prerelease: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}