Stay up to date with the latest iOS CI/CD news

Every two weeks, directly to your inbox and packed with everything you need to know and be aware of so that you're always prepared for the next app release!

Previously supported by:

Issue 16

Sponsored

Put your mobile releases on autopilot.

No more cat-herding, spreadsheets, or steady drip of manual busywork. Runway helps your team level up your release coordination and automation, from kickoff to release to rollout.

Hey everyone! 👋 Welcome to the sixteenth issue of the iOS CI Newsletter. I hope you’ve all had a fantastic couple of weeks!

Over the past few weeks, I have been working on creating Swift Packages with code that is shared (and currently duplicated) across multiple products and teams in the organisation I work for.

This is not something we have done before as we have only ever depended on either local or public Swift Packages and it has definitely been a formidable challenge to solve given our requirements on CI runners and how little access we want to give them.

We have a neat solution which gives the runner enough access for the current workflow only using token-based authentication while still keeping ssh-based auth for local development. Keep an eye on my social media and my blog if you are interested as I will be writing an article about it.

🔁 Airbnb’s CI/CD migration to AWS

In this great article, Michael Bachand and Xianwen Chen take us through why and how Airbnb has moved their iOS CI/CD away from non-virtualised physical macOS runners to scalable EC2 macOS instances in AWS.

🤯 Running GitHub Actions workflows locally

This great article from Grant Isom introduced me to Act: a command-line tool made by Casey Lee that allows you to run GitHub Actions workflows locally.

Act can help you test your GitHub Actions directly from your terminal to tighten the feedback loop and can even help you replace some of your current scripts with local GitHub Actions workflow runs! 🤯

🏛️ Getting your app ready for Apple silicon

As of version 14.3, running Xcode under Rosetta is no longer supported on Apple Silicon machines. If you are still struggling to get your app to run on Apple Silicon simulators due to the new arm64 slice, this article from Bitrise can help you out!

If you are blocked by a third-party dependency to release an update with support for Apple Silicon and you don’t want to wait anymore, I would suggest checking out this amazing article by Bogo on how you can convert arm64 device arch slices into Apple Silicon sim-compatible ones.

📱 Edit GitHub Actions workflows from your phone

I recently came across this cool improvement to the GitHub mobile app. You can now edit your GitHub Actions workflow files on the go directly from your iOS or Android device! 🎉📱

❗️ Node 12 will no longer be allowed in GitHub Actions

As of the 18th of May, GitHub no longer allows actions to run Node 12.0. When using Node in a workflow, it is now a requirement to use version 16.0 or newer.

What’s important to know is that the @actions/checkout (v2) and @actions/upload-artifact (v2) actions use Node 12.0 and you now must update to their latest versions, which use Node 16.0. If you want a fast and easy way of updating the version for these built-in actions on all your workflows, make sure you check out this article Marco Eidinger wrote a while back.