Learn all about CI/CD with these posts

Continuous Integration and Continuous Deployment for your Swift projects.

GitHub Actions workflows side effects

How to use webhook logic in GitHub Actions to trigger workflows based on other workflows completion

Scheduling app releases with Xcode Cloud

How to use the Xcode Cloud start condition to run a weekly workflow that distributes your app to TestFlight for external testing and the App Store.

Deploying beta versions of your app to TestFlight and AppCenter using Xcode Cloud

How to create an Xcode Cloud workflow which archives an application on every push to main and distributes the artefact to TestFlight and AppCenter.

Automating Swift command line tool releases with GitHub Actions

How I use GitHub Actions to automate the release of my Swift command line tools.

Collecting Xcode Cloud metrics using webhooks

Learn how to use webhooks to collect metrics from Xcode Cloud builds

GitHub webhooks 🤝 Xcode Cloud

How to use GitHub webhooks to trigger Xcode Cloud builds by writing a comment on a pull request.

Managing multiple Xcode versions on CI using Fastlane

All you need to know about how to set the version of Xcode to use on CI using Fastlane.

Safely pinning SPM dependencies to exact versions

I will show you how code might change across different builds even when depending on an exact version of a Swift Package as well as how to mitigate the risks associated with this.

Using App Store Connect API to trigger Xcode Cloud workflows

Learn how to trigger Xcode Cloud workflow runs using the App Store Connect API.

Scheduling tweets with GitHub Actions and Swift

Using Swift as to write a commit-msg git hook so that adding ticket numbers to a commit message can be automated.

Fastlane and App Store Connect API keys

An up to date guide on how to use an App Store Connect API key with Fastlane and GitHub Actions.

Xcode Cloud scripts: Fastlane and Cocoapods

Learning how to install and use third-party tools in Xcode Cloud through ci scripts.