Skip to content
Open
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
17 changes: 10 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -270,13 +270,16 @@ androidpath:
@echo "export ANDROID_SDK_ROOT=$(ANDROID_SDK_ROOT)"
@echo 'export PATH=$(ANDROID_HOME)/cmdline-tools/latest/bin:$(ANDROID_HOME)/platform-tools:$$PATH'

.PHONY: tag_release
tag_release: debug-symbols tailscale.version ## Tag the current commit with the current version
source tailscale.version && git tag -a "$${VERSION_LONG}" -m "OSS and Version updated to $${VERSION_LONG}"

.PHONY: bumposs ## Bump to the latest oss and update the versions.
bumposs: update-oss tailscale.version
source tailscale.version && git commit -sm "android: bump OSS" -m "OSS and Version updated to $${VERSION_LONG}" go.toolchain.rev android/build.gradle go.mod go.sum
## Bump versionCode, amend the current commit, and tag it
tag_release: debug-symbols tailscale.version bump_version_code

@barnstar barnstar Jun 15, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just bumping here will cause f-droid and playstore versions to diverge.. I don't know if we care since the version source-of-truth is the tailscale version, but Android cares and this makes things hard to reason about.

The build scripts will check the playstore version and increment this during the build. Perhaps a better approach is to do something deterministic so that an f-droid build always ends up with same version as the corresponding playstore build and that the playstore version can be derived from the tailscale version and vice-versa. That way, we're not changing anything at build time (except perhaps a modifier to denote atv)

Something like: major * 10000000 + minor * 1000000 + patch *10 + (platform)
1.99.123 -> 1_099_0123_0 and 1.100.123 - > 1_100_0123_0 and add 1 for the atv build and remove the check in the build pipeline that looks up the version and increments it and just change this on very bumposs or tagrelease. With enough precision to allow for minor version up to 999, and patch versions up to 9999....

git add android/build.gradle
git commit --amend --no-edit
source tailscale.version && git tag -a "$${VERSION_LONG}" -m "OSS and Version updated to $${VERSION_LONG}"

## Bump to the latest oss, increment versionCode, and tag.
.PHONY: bumposs
bumposs: update-oss tailscale.version bump_version_code
source tailscale.version && git commit -sm "android: bump OSS" -m "OSS and Version updated to $${VERSION_LONG}" go.toolchain.rev android/build.gradle go.mod go.sum
source tailscale.version && git tag -a "$${VERSION_LONG}" -m "OSS and Version updated to $${VERSION_LONG}"

.PHONY: bump_version_code ## Bump the version code in build.gradle
Expand Down
Loading