Apple App Store Connect
DETAILS: Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated
- Introduced in GitLab 15.8 with a flag named
apple_app_store_integration
. Disabled by default.- Generally available in GitLab 15.10. Feature flag
apple_app_store_integration
removed.
This feature is part of Mobile DevOps developed by GitLab Incubation Engineering. The feature is still in development, but you can:
Use the Apple App Store Connect integration to configure your CI/CD pipelines to connect to App Store Connect. With this integration, you can build and release apps for iOS, iPadOS, macOS, tvOS, and watchOS.
The Apple App Store Connect integration works out of the box with fastlane. You can also use this integration with other build tools.
Enable the integration in GitLab
Prerequisites:
- You must have an Apple ID enrolled in the Apple Developer Program.
- You must generate a new private key for your project in the Apple App Store Connect portal.
To enable the Apple App Store Connect integration in GitLab:
- On the left sidebar, select Search or go to and find your project.
- Select Settings > Integrations.
- Select Apple App Store Connect.
- Under Enable integration, select the Active checkbox.
- Provide the Apple App Store Connect configuration information:
- Issuer ID: The Apple App Store Connect issuer ID.
- Key ID: The key ID of the generated private key.
- Private key: The generated private key. You can download this key only once.
- Protected branches and tags only: Enable to set variables on protected branches and tags only.
- Select Save changes.
After you enable the integration:
- The global variables
$APP_STORE_CONNECT_API_KEY_ISSUER_ID
,$APP_STORE_CONNECT_API_KEY_KEY_ID
,$APP_STORE_CONNECT_API_KEY_KEY
, and$APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64
are created for CI/CD use. -
$APP_STORE_CONNECT_API_KEY_KEY
contains the Base64-encoded private key. -
$APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64
is alwaystrue
.
Security considerations
CI/CD variable security
Malicious code pushed to your .gitlab-ci.yml
file could compromise your variables, including
$APP_STORE_CONNECT_API_KEY_KEY
, and send them to a third-party server. For more information, see
CI/CD variable security.
Enable the integration in fastlane
To enable the integration in fastlane and upload a TestFlight or public App Store release, you can add the following code to your app's fastlane/Fastfile
:
app_store_connect_api_key