App Distribution for iOS, Android and Windows
DashboardStart for free
  • Updraft App Distribution Documentation
  • Microsoft App Center Alternative
    • Windows App Distribution
    • App Center Migration Tool
  • Welcome to Updraft!
    • What is Updraft?
  • Quickstart
    • Register your Organization
    • Your first app project
      • Upload your first app versions (builds)
      • Install your app
  • Dashboard
    • Create Projects
    • Latest received Feedbacks
    • Documentation
    • Usermanagement
      • Permission Groups
      • Tester Dashboard
    • Profile & User Account
      • Profile Preferences
        • Two-factor authentication
      • Personal token
      • Notifications
      • Organizations
      • Account Settings
      • Plan & Billing
        • Free Plan
        • Paid Plan (Pay-As-You-Go)
      • Security (Single Sign-On)
        • Single Sign-On with Okta
        • Single Sign-On with Google Worspace
        • Single Sign-On with Microsoft Entra
        • Single Sign-On with JumpCloud
        • Single Sign-On with Ping Identity
        • Custom SSO (SAML)
      • Developer Accounts
        • App Store Connect API
        • Google Play Connect API
  • Your Projects
    • Project Settings
      • Overview
      • Automatically clean up build binaries
      • Notification Integrations
        • Slack integration
        • Webhook integration
        • Microsoft Teams integration
        • Discord integration
        • WebEx integration
      • User & Permissions
    • App Overview & App Settings
      • Notifications
      • Security
      • Last uploaded build
      • Add another app to your project
      • Android App Bundle (AAB)
    • Builds and App versions
      • Build history / app version history
        • iOS Resigning
        • Android Resigning
      • Release Notes
      • Exchange already uploaded app version
      • Distribute and install a pre-release version of your app
        • App download page
    • Feedback
    • App Distribution
      • Testers & Distribution Groups
      • Distribute your app
        • Single Release
        • Beta Release (one link two apps)
        • Store
          • App Store Distribution
          • Play Store Distribution
      • Release History
      • Install an app distributed from Updraft
  • Integrations
    • Jenkins Plugin Updraft
    • Fastlane
    • Gradle
    • Teamcity with Gradle (Android)
    • Teamcity
    • GitLab CI/CD
      • GitLab iOS with Fastlane
      • GitLab app distribution for iOS builds
      • GitLab app distribution for Android builds
    • Bitrise
  • API
    • Upload API
    • Upload Apps with CURL
    • Rest API
      • Distribution group and Permission group API
  • Updraft SDK
    • Autoupdate
    • Integrating Updraft Android SDK
    • Integrating Updraft iOS SDK
    • Integrating Updraft Flutter SDK
  • Android
    • Unknown sources in Android
    • .apk installation on Samsung Browser
    • Android FAQ
    • 🪅Android Icon Troubleshooting
    • Google Play Store upload issues
  • iOS
    • Untrusted Enterprise Developer
    • Code Signing Explained (Certificates, Identifiers, Profiles – what?)
    • Registering a UDID for Ad Hoc Distribution
    • What does "App could not be installed at this time" mean?
    • iPadOS on Safari
    • iOS FAQ
  • Data Security
    • Data hosting in Switzerland
      • Swiss data privacy law
    • End to end data encryption
    • General Data Protection Regulation (GDPR)
    • Single Sign On (SSO)
    • Custom Storage
      • Google Cloud Storage
      • Custom S3 bucket
    • ISO 27001
  • What's New/ Changelog
  • Roadmap
  • FAQ
  • Contact us
Powered by GitBook
On this page
  • Preconditions
  • Setting up a Build Runner
  • Quick Start
  • Add a job to your .gitlab-ci.yml
  • Example of .gitlab-cy.yml file for iOS app distribution
  • Repository
  1. Integrations
  2. GitLab CI/CD

GitLab app distribution for iOS builds

GitLab CI/CD can be used to deploy iOS apps with the API Upload (curl) to Updraft.

PreviousGitLab iOS with FastlaneNextGitLab app distribution for Android builds

Last updated 4 years ago

Preconditions

Setting up a Build Runner

A build runner is a physical or virtual machine that has the necessary tools to run your builds. As an iOS Dev, you probably know you need a macOS Machine with Xcode Tools to build your iOS apps. In our Office, we use Mac Minis for this.

Once you have a machine that can handle iOS Builds, you can follow the steps in the to set up your own runner. Make sure to specify the same tag as you used in your .gitlab-ci.yml file to restrict the runner to accept only iOS Builds.

If you've read until here, you have earned our respect! We hope our guide has been helpful to you. If you have any questions, feel free to contact our support.

Quick Start

  • Login into Updraft Toolpage

  • Go to your Profile within the Sidebar

  • Copy your API Key as well as the App Key of your App

    • Your API Key you find in your Profile. The App Key you will find on the application overview. The App key differs for each environment.

  • Go to your Project Settings in Gitlab and select CI/CD

  • Expand your Variables

  • Give a name for your API Key: UPDRAFT_API_KEY

  • Paste your Updraft API Key in the Input Value field and click on Save Variable

  • Give a name for your App Key: UPDRAFT_APP_KEY

  • Paste your Updraft App Key in the Input Value field and click on Save Variable

Add a job to your .gitlab-ci.yml

Example of .gitlab-cy.yml file for iOS app distribution

stages:
  - build_updraft

deploy:
  stage: build_updraft
  only:
  - release
  script:
  - |
    curl \
      -F whats_new="Gitlab build" \
      -F "app=@android.apk" \
      -X PUT https://getupdraft.com/api/app_upload/$UPDRAFT_APP_KEY/$UPDRAFT_API_KEY/

Repository

Example how the root file repository should look like.

To deploy to , add a job to your .gitlab-ci.yml configuration.

Updraft
GitLab Documentation
getupdraft.com/login
Gitlab CI/CD Variables Settings
Updraft API Key and Updraft App Key