Skip to content

Release workflow: the game and its server, built on a tag and published - #4

Merged
lana-20 merged 1 commit into
mainfrom
release-workflow
Oct 31, 2026
Merged

lana-20 merged 1 commit into
mainfrom
release-workflow

Conversation

@lana-20

@lana-20 lana-20 commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

What

.github/workflows/release.yml: a tag v* builds Morpho Match and its two-player server and publishes them as a GitHub release, with SHA256SUMS, under names that stay the same from release to release, so releases/latest/download/<file> keeps working:

  • MorphoMatch-android.apk: the game, for a phone or a Meta Quest, after :app:testDebugUnitTest. Signed with the runner's debug key: an app under test, never published to a store.
  • morpho-match-server-<os>-<arch>: the server for Linux, macOS and Windows on amd64 and arm64, after go test ./.... Built with CGO_ENABLED=0 -trimpath, Go from server/go.mod. It listens on 127.0.0.1:8787 unless given -addr.

A pull request that changes the workflow builds everything and publishes nothing, so this PR is the workflow's first run. The README gains "Install a release".

Checked

Locally from a clean checkout of main: the unit tests and assembleRelease with JDK 21, go test ./..., and the server cross-built for all six targets with Go 1.27.0.

A tag v* builds the APK (phone and Meta Quest) after the unit tests, and
the two-player server for Linux, macOS and Windows on amd64 and arm64
after its tests, and publishes them with SHA256SUMS under names that stay
the same, so a CI job can download the latest without building. A pull
request that touches the workflow builds without publishing.
@lana-20
lana-20 merged commit baa236e into main Oct 31, 2026
3 checks passed
@lana-20
lana-20 deleted the release-workflow branch October 31, 2026 02:34
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