Skip to content

Add a scheduled trunk → Play internal build#23058

Draft
oguzkocer wants to merge 2 commits into
trunkfrom
task/release-from-trunk
Draft

Add a scheduled trunk → Play internal build#23058
oguzkocer wants to merge 2 commits into
trunkfrom
task/release-from-trunk

Conversation

@oguzkocer

Copy link
Copy Markdown
Contributor

Description

Adds a build that compiles WordPress & Jetpack from trunk and uploads them to the Play Store internal testing track. Part of the Faster Releases effort.

  • build_and_upload_trunk_internal lane (fastlane/lanes/build.rb): computes the version on the fly and writes it to version.properties for the build only (it will not get committed):

    • versionName — the planned release version without the -rc-N suffix (current_release_version).
    • versionCode — via release-toolkit's ContinuousBuildCodeFormatter: (major * 10 + minor) * 1_000_000 + BUILDKITE_BUILD_NUMBER. Monotonic, because Buildkite build numbers are global and only increase.

    It then builds WordPress & Jetpack and uploads each to the internal track via the existing upload_build_to_play_store (uploaded as a draft, so no testers are notified).

  • .buildkite/commands/build-trunk-internal.sh: install_gems + configure_apply + the lane.

  • .buildkite/schedules/build-trunk-internal.yml: the scheduled pipeline.

Testing instructions

The lane is schedule-triggered, so normal PR CI does not exercise it. To verify it manually:

  1. Trigger a build on the wordpress-android pipeline for this branch with env PIPELINE=schedules/build-trunk-internal.yml.
  • Verify WordPress & Jetpack both build and upload to the Play internal track as drafts (no testers notified).
  • In the Play Console (App bundle explorer / internal track), verify each shows the planned versionName and versionCode (major * 10 + minor) * 1_000_000 + <build number>.

New build_and_upload_trunk_internal lane builds WordPress & Jetpack from trunk and uploads them to the Play Store internal track, to validate the release-from-trunk model. versionName = planned release (no -rc); versionCode via release-toolkit's ContinuousBuildCodeFormatter, written to version.properties for the build only (not committed). Adds a command script + a scheduled pipeline (manually triggerable via the PIPELINE env).
@oguzkocer oguzkocer added this to the 27.0 milestone Jul 1, 2026
@dangermattic

Copy link
Copy Markdown
Collaborator
1 Message
📖 This PR is still a Draft: some checks will be skipped.

Generated by 🚫 Danger

@wpmobilebot

Copy link
Copy Markdown
Contributor

App Icon📲 You can test the changes from this Pull Request in Jetpack Android by scanning the QR code below to install the corresponding build.

App NameJetpack Android
Build TypeDebug
Versionpr23058-b51880a
Build Number1497
Application IDcom.jetpack.android.prealpha
Commitb51880a
Installation URL2gon3uganpk98
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

@wpmobilebot

Copy link
Copy Markdown
Contributor

App Icon📲 You can test the changes from this Pull Request in WordPress Android by scanning the QR code below to install the corresponding build.

App NameWordPress Android
Build TypeDebug
Versionpr23058-b51880a
Build Number1497
Application IDorg.wordpress.android.prealpha
Commitb51880a
Installation URL2eceenqm9hs28
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants