Skip to content

Add automated GitHub releases for purchases-ios-admob#6537

Merged
polmiro merged 9 commits intomainfrom
admob-github-releases
Apr 20, 2026
Merged

Add automated GitHub releases for purchases-ios-admob#6537
polmiro merged 9 commits intomainfrom
admob-github-releases

Conversation

@polmiro
Copy link
Copy Markdown
Member

@polmiro polmiro commented Mar 31, 2026

Summary

  • Adds admob_github_release Fastlane lane that generates a changelog filtered by pr:admob label and creates a GitHub release on purchases-ios-admob
  • Adds make-admob-release CI job that runs after deploy-to-purchases-ios-admob in the release workflow
  • Resolves the correct target_commitish from purchases-ios-admob via the GitHub API, since the CI job runs in purchases-ios where HEAD is a different repo's commit
  • Uses cross_repo_pr_reference: 'RevenueCat/purchases-ios' so PR links in the admob release notes resolve back to this repo
  • make-release no longer requires deploy-to-purchases-ios-admob, so the main SDK release isn't gated on the adapter deployment

How it works

  1. During a release, deploy-to-purchases-ios-admob pushes the adapter code and tag to purchases-ios-admob
  2. make-admob-release then runs, generating a changelog from PRs tagged with pr:admob
  3. The lane fetches the tag's commit SHA from purchases-ios-admob via GET /repos/RevenueCat/purchases-ios-admob/git/ref/tags/{version} and passes it as commitish to the release
  4. If no PRs have the pr:admob label, the release body defaults to "Release X.Y.Z"
  5. pr:admob PRs still appear in the main purchases-ios changelog as well (no exclusion is applied)

Dependencies

Test plan

  • Trigger make-admob-release job in CI to validate the lane works
  • Verify GitHub release is created on purchases-ios-admob with the correct target_commitish
  • Merge plugin PR
  • Revert temporary CI test commits
  • Run bundle update to refresh Gemfile.lock and commit.

Note

Medium Risk
Updates the release pipeline and GitHub release automation, which could affect tag deployments and release publishing if the new job/lane misbehaves. No runtime SDK code changes.

Overview
Adds an automated post-deploy step to publish a GitHub release for purchases-ios-admob on release tags.

CircleCI now runs a new make-admob-release job after deploy-to-purchases-ios-admob, and the Fastlane admob_github_release lane generates a changelog filtered to pr:admob PRs and creates the release in purchases-ios-admob using the tag’s resolved commit SHA (via the GitHub git/ref API) so the release targets the correct commit.

Reviewed by Cursor Bugbot for commit 16d8b1f. Bugbot is set up for automated code reviews on this repo. Configure here.

Comment thread fastlane/Pluginfile Outdated
@polmiro polmiro requested a review from ajpallares March 31, 2026 12:42
Comment thread .circleci/config.yml
@polmiro polmiro force-pushed the admob-github-releases branch from f21440e to 92a497c Compare April 1, 2026 15:15
@polmiro polmiro force-pushed the admob-github-releases branch 2 times, most recently from a5899a6 to f0022d8 Compare April 2, 2026 12:48
@polmiro polmiro marked this pull request as ready for review April 2, 2026 12:56
@polmiro polmiro requested a review from a team as a code owner April 2, 2026 12:56
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Comment thread .circleci/config.yml
Comment thread Gemfile.lock Outdated
Copy link
Copy Markdown
Member

@ajpallares ajpallares left a comment

Choose a reason for hiding this comment

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

Looking good! But I have two main comments:

  1. A proposal about not excluding PRs with the pr:admob label from purchases-ios' Changelog
  2. A fix to correctly link to PRs in purchases-ios from the CHANGELOG in purchases-ios-admob

Comment thread fastlane/Fastfile Outdated
Comment thread fastlane/Fastfile
@polmiro polmiro force-pushed the admob-github-releases branch from 89d7021 to 74f7721 Compare April 17, 2026 09:47
@polmiro polmiro requested a review from a team as a code owner April 17, 2026 09:47
@polmiro polmiro requested a review from ajpallares April 17, 2026 09:47
Copy link
Copy Markdown
Member

@ajpallares ajpallares left a comment

Choose a reason for hiding this comment

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

Great job! Thanks!

I think the PR description is stale though. It would be good to update it.

@polmiro
Copy link
Copy Markdown
Member Author

polmiro commented Apr 17, 2026

@RCGitBot please review

@emerge-tools
Copy link
Copy Markdown

emerge-tools Bot commented Apr 17, 2026

📸 Snapshot Test

327 unchanged

Name Added Removed Modified Renamed Unchanged Errored Approval
RevenueCat
com.revenuecat.PaywallsTester
0 0 0 0 264 0 N/A
PaywallsTester V1 swift-snapshot-testing
com.revenuecat.PaywallsTester.v1-snapshots
0 0 0 0 63 0 N/A

🛸 Powered by Emerge Tools

polmiro and others added 9 commits April 17, 2026 17:43
Add a new `admob_github_release` Fastlane lane that generates a changelog
filtered by the `pr:admob` label and creates a GitHub release on the
purchases-ios-admob repository.

Wire it into the CI release workflow as a new `make-admob-release` job
that runs after `deploy-to-purchases-ios-admob`.
…ls API

- Point fastlane-plugin-revenuecat_internal to main (branch merged)
- Rename filter_label to filter_labels (array) for admob changelog
- Exclude pr:admob PRs from purchases-ios changelog via exclude_labels
The main SDK release should not be gated on the admob adapter deployment.
Fetch the tag's commit SHA from purchases-ios-admob via the GitHub API
and pass it as commitish, instead of using the local purchases-ios HEAD
which doesn't exist in that repo.
Co-authored-by: Pol Miro <polmiro@users.noreply.github.com>
Removes the bump lane exclusion so admob-labeled PRs remain visible in purchases-ios release notes for traceability.
Passes purchases-ios as the PR reference source so changelog links in purchases-ios-admob releases resolve to the correct repository.
@polmiro polmiro force-pushed the admob-github-releases branch from 00f0f6c to 16d8b1f Compare April 17, 2026 15:43
@polmiro polmiro merged commit f6f2c68 into main Apr 20, 2026
40 checks passed
@polmiro polmiro deleted the admob-github-releases branch April 20, 2026 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants