Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .github/workflows/build-electron.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,16 @@ jobs:
version: ${{ steps.version.outputs.VERSION }}
release_repo: ${{ steps.repo.outputs.RELEASE_REPO }}
steps:
# Only a tag build publishes; a signed branch build paid for 24 eSigner signatures and discarded them (2026-09-15).
- name: Refuse to sign a build that cannot publish
if: github.ref_type != 'tag' && !inputs.skip_signing
env:
REF_TYPE: ${{ github.ref_type }}
REF_NAME: ${{ github.ref_name }}
run: |
echo "::error::skip_signing is off but this run is on $REF_TYPE '$REF_NAME'. Only a tag build publishes, so the signatures would be paid for and thrown away. Re-run from the version tag, or leave skip_signing checked."
exit 1

- name: Check out Git repository
uses: actions/checkout@v4

Expand Down
8 changes: 6 additions & 2 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,12 @@ Then push the commit and the tag `npm version` created.

## 2. Desktop: build

Run **Build / Electron** (`workflow_dispatch`) — `brand` defaults to `remoteit`,
and **uncheck `skip_signing`** for a real release, since it defaults to `true`.
Run **Build / Electron** (`workflow_dispatch`) **from the version tag** — in
"Use workflow from", switch to Tags and pick `vN.N.N`, not `main`. `brand`
defaults to `remoteit`; **uncheck `skip_signing`** for a real release, since it
defaults to `true`. Only a tag build creates the draft and publishes into it; a
branch build compiles and discards everything, so with `skip_signing` off the
`prepare` job refuses to start rather than pay for signatures nobody receives.

A `prepare` job first resolves the release repository for the selected brand
(`brands/<brand>/config.ts` — `cachengo` publishes to `cachengo/desktop`) and
Expand Down
Loading