Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Tooling] Introduce pipelines to trigger release tasks on CI #2720

Merged
merged 3 commits into from
Jan 31, 2025

Conversation

AliSoftware
Copy link
Contributor

@AliSoftware AliSoftware commented Jan 31, 2025

This is a mirroring of the similar changes that were recently introduced in PCAndroid.

Description

As part of this Project Thread: paaHJt-78B-p2, this introduces .buildkite/release-pipelines/*.yml files that will take care of calling fastlane code_freeze and similar lanes called during the release process.

Those lanes are currently called by the Release Manager on their own Mac, so the point of introducing those pipelines is to be able to instead switch to make those kicker lanes be run on CI instead.

Created pipelines

List of .buildkite/release-pipelines/*.yml files calling their associated fastlane lane during ReleaseV2 scenario:

  • code_freeze
  • new_beta_release
  • finalize_release
  • publish_release
  • new_hotfix_release
  • finalize_hotfix_release

Scenario steps update in ReleasesV2

Once this lands, we will be able to also land the companion PR in wpcom to update the Release Scenario in MC (Internal Ref: 171892-ghe-Automattic/wpcom) to replace the currently-manual tasks like "Call bundle exec fastlane code_freeze" and the likes with automated tasks instead—i.e. tasks that will present a clickable button on ReleasesV2 which, when clicked, will trigger those lanes on CI—thus not requiring Release Managers to run those from their personal Macs anymore.

Testing Instructions

The only way to test this is during the next release process that will adopt those changes (hopefully during 7.82)

It's already called during `publish_release` lane later, which is a better time for it to be called rather than as early as `finalize_release`.
See Automattic/apps-infra-plans#83
@AliSoftware AliSoftware self-assigned this Jan 31, 2025
@AliSoftware AliSoftware added the [Type] Tooling Issues related to tooling: build tools, ruby, scripts, etc. label Jan 31, 2025
@AliSoftware AliSoftware added this to the 7.82 milestone Jan 31, 2025
@AliSoftware AliSoftware marked this pull request as ready for review January 31, 2025 17:14
@AliSoftware AliSoftware requested a review from a team as a code owner January 31, 2025 17:14
@AliSoftware AliSoftware requested review from SergioEstevao and a team and removed request for a team January 31, 2025 17:14
retry:
manual:
allowed: false
reason: "If this job fails, please trigger a new build from ReleasesV2 instead of retrying this step"
Copy link
Contributor

@iangmaia iangmaia Jan 31, 2025

Choose a reason for hiding this comment

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

Suggested change
reason: "If this job fails, please trigger a new build from ReleasesV2 instead of retrying this step"
reason: "If this job fails, please trigger a new build from ReleasesV2 instead of retrying this step"

Copy link
Contributor

Choose a reason for hiding this comment

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

Not sure if this 👆 works, but I just wanted to highlight the lack of line break at the end 😅

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Lol I asked Cursor to add all missing newlines at EOF… which it did in 1ef0c15 but it seems it missed some… should have double-checked its work…

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Fixed in c74eda6

retry:
manual:
allowed: false
reason: "If this job fails, please trigger a new build from ReleasesV2 instead of retrying this step"
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
reason: "If this job fails, please trigger a new build from ReleasesV2 instead of retrying this step"
reason: "If this job fails, please trigger a new build from ReleasesV2 instead of retrying this step"

Copy link
Contributor

@iangmaia iangmaia left a comment

Choose a reason for hiding this comment

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

👍

@AliSoftware AliSoftware force-pushed the tooling/release-on-ci branch from 1ef0c15 to c74eda6 Compare January 31, 2025 19:01
@AliSoftware AliSoftware merged commit 7422f55 into trunk Jan 31, 2025
5 of 7 checks passed
@AliSoftware AliSoftware deleted the tooling/release-on-ci branch January 31, 2025 20:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Type] Tooling Issues related to tooling: build tools, ruby, scripts, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants