Upload and publish from GitHub Actions.
The official Action resolves one artifact, calculates SHA-256, creates or updates a draft, uploads directly to storage, and publishes the release.
Workflow step
- name: Publish to Mateality Releases
uses: mateality/releases-upload@v1
with:
api-key: ${{ secrets.MATEALITY_RELEASES_KEY }}
app: your-app-slug
version: ${{ github.ref_name }}
artifact: dist/product-linux-x86_64.zip
target: linux-x86_64
channel: stable
notes: ${{ github.event.release.body }}
Inputs
api-keystringRequiredThe app-scoped Mateality Releases publish key.
appstringRequiredThe app slug from the Releases dashboard.
versionstringRequiredThe version to create inside the selected channel.
artifactpath | globRequiredAn exact file or a glob resolving to exactly one file.
channelstringThe existing, active destination channel.
Default:stabletargetstringArtifact target; auto derives one from the runner platform and architecture.
Default:autoformatstringFormat including a leading dot; inferred from the file extension when omitted.
signaturepathSignature file; defaults to an adjacent <artifact>.sig when present.
content-typestringMIME type override; otherwise inferred for zip/gzip or set to application/octet-stream.
notesstringRelease notes stored with the release.
api-urlURLPublishing API origin; must use HTTP or HTTPS.
Default:https://releases.mateality.comAutomatic values
target: auto maps GitHub’s runner to identifiers such as
darwin-aarch64, windows-x86_64, or linux-x86_64. Tauri’s default updater
target format is OS-ARCH, so set target explicitly when the automatic
identifier does not match what the client requests.
Known compound formats preserved during inference are .app.tar.gz,
.AppImage.tar.gz, .nsis.zip, and .msi.zip.
Tauri artifact
For an app using the Tauri v2 adapter:
artifact: src-tauri/target/release/bundle/**/*.app.tar.gz
The glob must resolve to exactly one file. The v1 Action publishes immediately, so use it for a single-target release. Do not run one Action invocation per platform for the same channel/version: later jobs cannot add artifacts after the first publication. For a multi-target release, use the publishing API to create one draft, upload every platform artifact, and publish once.
Outputs
The Action exposes release-id, artifact-id, and version.