mirror of
https://github.com/Novaloop-AG/healthchat-web.git
synced 2026-10-31 08:15:07 +00:00
chore(release): HealthChat 1.1.2
Remove the Linux desktop build from the release pipeline. It could never succeed in this fork: the upstream Linux reusable pulls a build-env Docker image keyed by the building commit's SHA from the upstream element-hq registry, where the fork's SHA does not exist, so every tagged build failed with `manifest unknown`. Desktop releases now ship macOS and Windows only. - Drop the linux job + its release artifacts from build-healthchat-desktop.yaml - Bump apps/desktop/package.json to 1.1.2 - Update releasing-healthchat skill + desktop README docs
This commit is contained in:
@@ -13,17 +13,19 @@ Releases are driven by git tags of the form `healthchat-v<semver>` pushed to
|
||||
`:<sha>`, and creates a GitHub Release whose body is the matching section of
|
||||
`HEALTHCHAT_CHANGES.md`.
|
||||
- `.github/workflows/build-healthchat-desktop.yaml` (desktop) — builds the Electron
|
||||
app for Linux (amd64/arm64), macOS (universal, signed+notarised) and Windows
|
||||
(x64/arm64, signed), and attaches the installers (.dmg/.zip/.exe/.msi/.deb/.tar.gz)
|
||||
to the **same** GitHub Release. The two workflows create-if-missing then upload, so
|
||||
they race safely.
|
||||
app for macOS (universal, signed+notarised) and Windows (x64/arm64, signed), and
|
||||
attaches the installers (.dmg/.zip/.exe/.msi) to the **same** GitHub Release. The two
|
||||
workflows create-if-missing then upload, so they race safely. (Linux is intentionally
|
||||
not built — the upstream Linux reusable pulls a build-env Docker image keyed by commit
|
||||
SHA that only exists in the upstream element-hq registry, so it cannot succeed in this
|
||||
fork.)
|
||||
|
||||
Publish target: **ghcr.io Docker image + GitHub Release (web bundle + desktop
|
||||
installers).** No npm, no mobile fan-out.
|
||||
|
||||
The desktop app version is taken from `apps/desktop/package.json` (the per-job
|
||||
`version` input cannot set it — Windows squirrel mangles it into a nightly string,
|
||||
and on macOS/Linux it only feeds the update manifest). So `apps/desktop/package.json`
|
||||
and on macOS it only feeds the update manifest). So `apps/desktop/package.json`
|
||||
**must be bumped to the release version in the release commit** to keep the About
|
||||
dialog and installer filenames matching the tag. This is no longer optional: the
|
||||
desktop workflow's "Assert desktop app version matches release" step fails the build
|
||||
@@ -162,7 +164,7 @@ warning. Prefer fixing the changelog over relying on the fallback.
|
||||
(`docker buildx imagetools inspect ghcr.io/<owner>/healthchat-web:stable`).
|
||||
- [ ] The desktop workflow run ("Build HealthChat Desktop") is green and the
|
||||
GitHub Release has the desktop installers attached (.dmg, *-mac.zip, *.msi,
|
||||
"* Setup*.exe", *.deb, *.tar.gz).
|
||||
"* Setup*.exe").
|
||||
- [ ] Smoke-check signing: macOS `spctl -a -vvv -t install <app>` is accepted;
|
||||
Windows installer shows a valid publisher (no SmartScreen block).
|
||||
|
||||
@@ -219,6 +221,7 @@ conflict on rebase, re-apply the HealthChat changes rather than blindly taking
|
||||
either side:
|
||||
|
||||
- `.github/workflows/build_desktop_prepare.yaml`
|
||||
- `.github/workflows/build_desktop_linux.yaml`
|
||||
- `.github/workflows/build_desktop_linux.yaml` (still in the tree, but no longer
|
||||
invoked by `build-healthchat-desktop.yaml` — the fork doesn't build Linux)
|
||||
- `.github/workflows/build_desktop_macos.yaml`
|
||||
- `.github/workflows/build_desktop_windows.yaml`
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
name: Build HealthChat Desktop
|
||||
|
||||
# Builds the HealthChat desktop (Electron) app for Linux, macOS and Windows: the fork's
|
||||
# Builds the HealthChat desktop (Electron) app for macOS and Windows: the fork's
|
||||
# element-web webapp with the HealthChat plugin (healthchat-module.js + healthchat-elements.js)
|
||||
# injected, packaged via the element-desktop build pipeline and published to the GitHub Release.
|
||||
#
|
||||
# This is the desktop counterpart of build-healthchat.yaml (web). On a `healthchat-v*` tag it
|
||||
# runs alongside the web build; it first builds the element-plugin from healthchat-workspace,
|
||||
# builds the fork webapp with the plugin injected, then feeds it into build_desktop_prepare.yaml
|
||||
# (via `webapp-artifact`) and the per-platform build_desktop_{linux,macos,windows}.yaml reusables.
|
||||
# (via `webapp-artifact`) and the per-platform build_desktop_{macos,windows}.yaml reusables.
|
||||
#
|
||||
# Notes:
|
||||
# - The reusable build workflows are pointed at THIS fork (repository/ref inputs) so the Electron
|
||||
@@ -18,7 +18,7 @@ name: Build HealthChat Desktop
|
||||
# GitHub environments (secrets/vars) to be configured. Without them the builds still run but
|
||||
# produce unsigned/untrusted output. See apps/desktop/element.io/healthchat/README.
|
||||
# - The desktop app version comes from apps/desktop/package.json (electron-builder); the per-job
|
||||
# `version` input only feeds the macOS/Linux update manifest and is mangled into a nightly
|
||||
# `version` input only feeds the macOS update manifest and is mangled into a nightly
|
||||
# string by Windows squirrel, so it cannot set the app version. To keep the installers / About
|
||||
# dialog in sync with the tag, apps/desktop/package.json must be bumped to the release version
|
||||
# in the release commit. The "Assert desktop app version matches release" step below enforces
|
||||
@@ -176,22 +176,6 @@ jobs:
|
||||
nightly: false
|
||||
deploy: false
|
||||
|
||||
linux:
|
||||
name: Linux ${{ matrix.arch }}
|
||||
needs: prepare
|
||||
permissions:
|
||||
contents: read
|
||||
strategy:
|
||||
matrix:
|
||||
arch: [amd64, arm64]
|
||||
uses: ./.github/workflows/build_desktop_linux.yaml
|
||||
with:
|
||||
repository: ${{ github.repository }}
|
||||
ref: ${{ github.sha }}
|
||||
arch: ${{ matrix.arch }}
|
||||
sqlcipher: static
|
||||
test: false
|
||||
|
||||
macos:
|
||||
name: macOS
|
||||
needs: prepare
|
||||
@@ -234,7 +218,7 @@ jobs:
|
||||
|
||||
release:
|
||||
name: Publish to GitHub Release
|
||||
needs: [linux, macos, windows]
|
||||
needs: [macos, windows]
|
||||
# Only publish on a real tag push; manual workflow_dispatch runs build but do not publish.
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
runs-on: ubuntu-latest
|
||||
@@ -254,8 +238,6 @@ jobs:
|
||||
find dist-artifacts -type f \( -iname '*.dmg' -o -iname '*-mac.zip' \) -exec cp -v {} release-files/ \;
|
||||
# Windows: per-machine MSI + Squirrel "Setup" installer
|
||||
find dist-artifacts -type f \( -iname '*.msi' -o -iname '* Setup*.exe' \) -exec cp -v {} release-files/ \;
|
||||
# Linux: portable tarball + Debian package
|
||||
find dist-artifacts -type f \( -iname '*.tar.gz' -o -iname '*.deb' \) -exec cp -v {} release-files/ \;
|
||||
echo "--- release files ---"
|
||||
ls -la release-files
|
||||
test -n "$(ls -A release-files)" || { echo "::error::No installer files collected"; exit 1; }
|
||||
|
||||
@@ -7,6 +7,16 @@ in <version>` section and uses it as the body of the GitHub Release.
|
||||
One section per released version, newest on top. Upstream element-hq
|
||||
`CHANGELOG.md` is kept separate and untouched.
|
||||
|
||||
## Changes in 1.1.2 (2026-06-28)
|
||||
|
||||
🐛 Fixes
|
||||
|
||||
- Removed the Linux desktop build from the release pipeline. It could never
|
||||
succeed in this fork: the upstream Linux build step pulls a build-env Docker
|
||||
image keyed by commit SHA that only exists in the upstream element-hq registry,
|
||||
so every tagged build failed with `manifest unknown`. Desktop releases now ship
|
||||
macOS (.dmg/.zip) and Windows (.msi/.exe) installers only.
|
||||
|
||||
## Changes in 1.1.1 (2026-06-26)
|
||||
|
||||
🙌 Improvements
|
||||
|
||||
@@ -45,11 +45,13 @@ CI
|
||||
--
|
||||
.github/workflows/build-healthchat-desktop.yaml builds the plugin + webapp artifact and
|
||||
feeds it into build_desktop_prepare.yaml (`config: element.io/healthchat`,
|
||||
`webapp-artifact: healthchat-webapp`) and the per-platform build_desktop_{linux,macos,windows}.yaml
|
||||
`webapp-artifact: healthchat-webapp`) and the per-platform build_desktop_{macos,windows}.yaml
|
||||
reusables. It runs on every `healthchat-v*` tag (alongside the web build) and via
|
||||
workflow_dispatch. The reusables are pointed at THIS fork (`repository`/`ref` inputs) so the
|
||||
Electron shell, icons and the healthchat:// deep-link handler are fork-branded. On a tag push the
|
||||
`release` job attaches the .dmg / .zip / .exe / .msi / .deb / .tar.gz to the GitHub Release.
|
||||
`release` job attaches the .dmg / .zip / .exe / .msi to the GitHub Release.
|
||||
(Linux is not built: the upstream build_desktop_linux.yaml needs a build-env Docker image
|
||||
keyed by commit SHA that only exists in the upstream element-hq registry, so it can't run here.)
|
||||
|
||||
Branding assets
|
||||
---------------
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
"productName": "Element",
|
||||
"main": "lib/electron-main.js",
|
||||
"exports": "./lib/electron-main.js",
|
||||
"version": "1.1.1",
|
||||
"version": "1.1.2",
|
||||
"description": "Element: the future of secure communication",
|
||||
"author": {
|
||||
"name": "Element",
|
||||
|
||||
Reference in New Issue
Block a user