Skip to content

Upload Assets

An asset is the compiled binary that will be distributed to users. Before uploading assets be sure to create a draft release.

In order to upload an asset the following are needed:

  • Application slug
  • Release ID (printed to the console when creating a new draft or can be found on the Cloud Platform page for the specific release)
  • The application asset file
  • Optional: The signature file for the asset

To upload an asset run the following command:

Terminal window
cn release upload {application-slug} {release-id} \
--public-platform {public-platform-name} \
--update-platform {update-platform-name} \
--file {asset-file-path} \
--signature {signature-file-path}

Common public platform names for Tauri and cargo-packager are listed below:

Bundle Formatx86_64aarch64i686armv7
Debiandeb-x86_64deb-aarch64deb-i686deb-armv7
AppImageappimage-x86_64appimage-aarch64appimage-i686appimage-armv7
Pacmanpacman-x86_64pacman-aarch64pacman-i686pacman-armv7
DMGdmg-x86_64dmg-aarch64dmg-i686dmg-armv7
NSISnsis-x86_64nsis-aarch64nsis-i686nsis-armv7
WiXwix-x86_64wix-aarch64wix-i686wix-armv7

The public platform is referenced in your application market page, download buttons and can be used to fetch the asset in the latest release via the CDN. For more information, see the Fetch Latest Release page.

Common update platform names for Tauri and cargo-packager are listed below:

Operating Systemx86_64aarch64i686armv7
Linuxlinux-x86_64linux-aarch64linux-i686linux-armv7
macOSdarwin-x86_64darwin-aarch64darwin-i686darwin-armv7
Windowswindows-x86_64windows-aarch64windows-i686windows-armv7

The --update-platform flag is not needed if the asset is for example platform-independent (e.g.: a web app). This key can be used by application updaters such as the Tauri updater and the packager updater. If no platform is specified, the asset will be presented as a generic asset on the Cloud Platform. See the Fetch Latest Release page for more information.

The --signature flag is required if --update-platform is set. If a .sig file with the same name as the asset file exists, the CLI will use it by default.

Here is an example of uploading a linux-x86_64 binary for the crabnebula-devtools application with a release ID of 01HKA6TGC281V51NGSRJNTJQAF:

Terminal window
cn release upload "crabnebula-devtools" "01HKA6TGC281V51NGSRJNTJQAF" \
--update-platform linux-x86_64 \
--file path_to_binary \
--signature path_to_signature

After an asset is uploaded it will then show up on the Cloud Platform under the “Releases” section for an application. Repeat this command for each platform and its respective asset to be distributed.

Next, publish the release.