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

iOS release flow automation #3818

Open
wants to merge 13 commits into
base: main
Choose a base branch
from
Open

Conversation

kshann
Copy link
Contributor

@kshann kshann commented Jan 17, 2025

Task/Issue URL: https://app.asana.com/0/1205419239275955/1208056445209269/f
Tech Design URL:
CC:

Description:
Initial automation sharing for iOS release flow based on macOS release flow.

  • Set schedule for release bump
  • Bump fastlane plugin
  • Align build number before merging.

Steps to test this PR:

  1. Run a release flow
  2. Alpha build to test version and buildnumber config

Definition of Done (Internal Only):

Copy Testing:

  • Use of correct apostrophes in new copy, ie rather than '

Orientation Testing:

  • Portrait
  • Landscape

Device Testing:

  • iPhone SE (1st Gen)
  • iPhone 8
  • iPhone X
  • iPhone 14 Pro
  • iPad

OS Testing:

  • iOS 15
  • iOS 16
  • iOS 17

Theme Testing:

  • Light theme
  • Dark theme

Internal references:

Software Engineering Expectations
Technical Design Template

Copy link

github-actions bot commented Jan 17, 2025

Warnings
⚠️ PR has more than 500 lines of code changing. Consider splitting into smaller PRs if possible.

Generated by 🚫 dangerJS against 7df1357

@kshann kshann changed the title Kieran/ios release flow automation iOS release flow automation Jan 17, 2025
@kshann kshann requested a review from ayoy January 17, 2025 08:36
Copy link
Contributor

@ayoy ayoy left a comment

Choose a reason for hiding this comment

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

LGTM with the exception of "update asana" part that should be happening for every internal bump.

- name: Set up fastlane
run: bundle install

- name: Prepare release bump #KS update is_scheduled_release
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this comment still relevant?

Comment on lines +43 to +44
with:
fetch-depth: 0 # Fetch all history and tags in order to extract Asana task URLs from git log
Copy link
Contributor

Choose a reason for hiding this comment

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

It seems to me that we can skip this in this job (I realize it was copied over from macOS where it's also not needed). Asana task URLs are only fetched in increment_build_number job below.

Comment on lines +88 to +99
tag_and_merge:
name: Tag and Merge Branch
needs: [ create_release_branch, prepare_release ]
uses: ./.github/workflows/ios-tag-release.yml
with:
asana-task-url: ${{ needs.create_release_branch.outputs.asana_task_url }}
base-branch: ${{ github.ref_name }}
branch: ${{ needs.create_release_branch.outputs.release_branch_name }}
prerelease: true
secrets:
ASANA_ACCESS_TOKEN: ${{ secrets.ASANA_ACCESS_TOKEN }}
GHA_ELEVATED_PERMISSIONS_TOKEN: ${{ secrets.GHA_ELEVATED_PERMISSIONS_TOKEN }}
Copy link
Contributor

Choose a reason for hiding this comment

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

The one thing that Publish DMG Release workflow on macOS does for all releases is posting a comment to Asana saying that a new build is available for internal testing (listing tasks added since last internal release). Now I'm thinking that we should ideally call ios-tag-release-update-asana here (and restore "internal" release-type), instead of ios-tag-release.

@ayoy
Copy link
Contributor

ayoy commented Jan 17, 2025

@kshann I've opened #3819 towards your branch. It turned out that we were also missing one script. Happy to connect Monday morning EU time to go through the changes. Thanks!

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.

2 participants