Skip to content

feat: code signing improvements, set-public-key command, and test suite#4

Merged
ciehanski merged 12 commits into
mainfrom
feat/v1.1.0
Mar 25, 2026
Merged

feat: code signing improvements, set-public-key command, and test suite#4
ciehanski merged 12 commits into
mainfrom
feat/v1.1.0

Conversation

@ciehanski
Copy link
Copy Markdown
Member

Changes

Features

  • Upgrades code signing from a raw base64 signature to a proper RS256 JWT
    embedded as CodePush/.codepushrelease inside the release zip. This aligns
    with what the SDK expects on-device for bundle integrity verification.
  • Adds dpctl app set-public-key <appName> <publicKeyPath> command to upload
    an RSA public key to an app directly from the CLI.
  • --private-key now accepts either a file path or inline PEM content, making
    it easier to use in CI environments where the key is stored as a secret
    environment variable.

Fixes

  • Resolves package.json path for compiled bin/ output so dpctl --version
    works correctly when installed globally.
  • Updates rimraf to v4 promise-based API.
  • Renames tmp directory from DeployPulse to dpctl.

Tests & CI

  • Adds Mocha test suite with ts-node runner covering CLI commands, hash
    utilities, and the management SDK.
  • Adds GitHub Actions test workflow that runs on every push and PR to main.

Breaking Change

The code signing format has changed from a raw base64 signature to an RS256 JWT.
If you were already using --private-key with the previous release, you will
need to update your app's signature verification logic accordingly.

@ciehanski ciehanski self-assigned this Mar 25, 2026
@ciehanski ciehanski merged commit 2573424 into main Mar 25, 2026
1 check passed
@ciehanski ciehanski deleted the feat/v1.1.0 branch March 25, 2026 00:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant