The pipeline builds installable packages and uploads them to the platform’s download storage; from there you distribute them yourself. Store connections exist for the Mac App Store and the Microsoft Store, not for the Snap Store.
| Platform | Package | Pipeline jobs |
|---|---|---|
| macOS (direct distribution) | .dmg |
build-flutter-macos-* → publish-macos-* |
| macOS (Mac App Store) | .pkg |
build-flutter-macos-appstore → publish-macos-store → release-macos-store |
| Windows | Installer (.exe) |
build-flutter-windows → publish-windows |
| Linux | .deb and .rpm |
build-flutter-linux → publish-linux |
The manual release-macos-* jobs are the approval step for macOS; the general flow is described under Git workflow and deployment.
macOS: signing, notarization, and Mac App Store
The project has four settings for macOS. App Store Account (macOS) sets the App Store Connect credentials. Sign & notarize with Developer ID produces signed, notarized DMGs for distribution outside the store. Publish to the Mac App Store builds a .pkg with Mac App Store certificates and uploads it to App Store Connect. Public S3 download publishes the signed DMGs and requires Developer ID signing.
For the Mac App Store, the app must exist in App Store Connect with the macOS platform; the pipeline creates certificates and profiles through Fastlane Match.
Windows: signing and Microsoft Store
The pipeline signs Windows installers through Azure Artifact Signing with the values from Azure Artifact Signing credentials. For the Microsoft Store you need a Partner Center account (Microsoft Store developer account) and Microsoft Store credentials, which you assign to the Windows project. The first submission and the age rating are done once in Partner Center; the store only accepts signed builds.