Home/ Knowledge Base/ Distribution & releases/ Distribution channels reference
Distribution & releases

Distribution channels reference

Every distribution channel AppRelay ships with — App Store, Play, Firebase, Vercel, S3, GitHub, npm, Homebrew, Docker, and more — and their parameters.

Last updated 2026-07-02

A distribution channel is a place a build can go. Each channel ships with a built-in recipe and a set of parameters. This is the reference for the channels in the initial library; you attach one or more to a lane as described in Build ≠ Distribute.

Every channel routes through the same process runner and step checklist as builds and tests. AppRelay drives the destination's own CLI or API — it doesn't reimplement it — so you keep full control and full output.

Apple platforms

ChannelShips toNotable parameters
appStoreConnectApp Store review / releaseASC API key (as a secret)
testFlightTestFlight testersASC API key
macAppStoreMac App StoreASC API key
developerIdDirect distribution (Developer ID + notarization)signing identity, notarization credentials

Android

ChannelShips toNotable parameters
playConsoleGoogle Playtrack: internal · closed · open · production
firebaseAppDistFirebase App Distribution testersapp id, tester groups

Web & static hosting

ChannelShips toNotable parameters
vercelVercelproject / scope
netlifyNetlifysite id
cloudflarePagesCloudflare Pagesproject name
s3Amazon S3 + CloudFrontbucket, distributionId (for cache invalidation)
rsyncSFTPYour own serverhost, remotePath
githubPagesGitHub Pagesrepo, branch

Desktop, packages & registries

ChannelShips toNotable parameters
githubReleasesGitHub Releasesrepo, tagPattern
microsoftStoreMicrosoft Storestore credentials
snap · flatpak · appImageLinux packagingpackage metadata
npmnpm registrypackage, access
homebrewA Homebrew taptap repo, formula
dockerRegistryA Docker registryimage, tag
customShellAnywhere — you write the stepsyour commands

Parameters, secrets, and recipes

Channel parameters (a Play track, an S3 bucket, a Docker tag) are plain configuration and travel with the project. Anything sensitive — tokens, API keys, service-account JSON — is stored as a secret and referenced by name; see Secrets & encryption. The exact commands a channel runs live in its recipe, which you can duplicate and edit; see Recipes and the template variables reference.

If a channel you need isn't in the list, start from the closest one (or customShell), duplicate its recipe, and edit the steps. Because recipes are data, you're never blocked waiting on a new adapter.

Next steps