RoyalZSoftware
Back to Blog

Fastlane ios and gitlab ci - read this

Alexander Panov 2024-05-11 1 min read
Fastlane ios and gitlab ci - read this

I have spent four weeks on making an automated ios deployment to testflight working.

Heres what I have learned.

Tools and versions

Install rbenv on your runner. Trust me. I got version 1.2.0

Then I installed ruby version 3.2.0 via rbenv.

Then fastlane. This might be interesting according to some issues.

Fastlane version 2.219.0

Get an API Key

Get the appstore connect api key and store it in the gitlab ci secrets.

We will then echo it into key.json.

Gitlab runner

Set the CreateSession to true in the launchsettings of the runner. This is because we need access to the keychain.

Keychain stuff

Keychain is the main problem with all of this. Its such a big problem and hard to understand why something fails.

But to get things as stable as possible we will always create a new keychain. At every run well import our certificates at start.

Lets talk about match.

Match init. Create a match file, setup the git storage with credentials so that it wont fail. Don‘t rely on inputs from the cli.

Match should work without passing credentials to stdin.

Issues

Could not download WWDR certificate

This apparently can happen sometimes. Try it again.

Do not rely on the default keychain

More articles

Building a Web Server in Go: A Beginner's Guide

Building a Web Server in Go: A Beginner's Guide

Oleksandr Vlasov 2024-11-26 3 min read
React Hooks — createContext, useContext, useMemo

React Hooks — createContext, useContext, useMemo

Oleksandr Vlasov 2024-10-23 4 min read
Mastering Git Rebase Interactive: Squashing Commits for a Clean History

Mastering Git Rebase Interactive: Squashing Commits for a Clean History

Alexander Panov 2024-10-21 2 min read