Skip to content

GitHub Actions ​

The ReleaseDesk Publish action runs the rdesk CLI in a workflow: upload a build, promote it to a channel, distribute it to tester groups, or revoke it. It downloads the rdesk binary for the runner from the public rdesk-cli feed on releasedesk.dev, verifies its SHA-256 checksum and caches it.

Token ​

Self-hosted? Set instance to your ReleaseDesk URL (default https://releasedesk.dev). Create an API token for the pipeline and store it as a repository secret (for example RD_TOKEN). The action masks it in logs. Give it the smallest scope that covers your commands:

CommandScopes
upload, assetupload
promote, revokepromote and read (the CLI reads the app to resolve channel names)

Bind the token to a single app when you can, and set an expiry.

Example ​

yaml
- id: upload
  uses: Nika0000/releasedesk-actions@v1
  with:
    command: upload
    token: ${{ secrets.RD_TOKEN }}
    file: build/app.apk
    version: ${{ github.ref_name }}
    platform: android
    arch: arm64
    format: apk
    variant: tv # optional, a declared app variant
- uses: Nika0000/releasedesk-actions@v1
  with:
    command: promote
    token: ${{ secrets.RD_TOKEN }}
    release-id: ${{ steps.upload.outputs.release-id }}
    channel: beta
    percent: 10

upload sets the outputs release-id, version, artifact-sha256 and json. See the action's README for every input.

Other CI systems ​

The same commands work anywhere with RD_URL, RD_TOKEN and the rdesk binary. Add --json to get one machine-readable object on stdout.