Pipeline configuration

Pipelines are series of preconfigured actions that can be used to automate basically every aspect of software development. Here you will learn how to configure a pipeline which builds, signs, and deploys an iOS application on a push to the selected Git branch.

Example iOS delivery pipelineExample iOS delivery pipeline

Synchronizing repository

Click New project, switch to your Git hosting provider, and select the repository with your project:

Project configurationProject configuration

Pipeline configuration

Click New pipeline and configure the pipeline details. For development pipelines, we recommend setting the trigger mode to On events > Git push. This way, Buddy will run the pipeline on every push to the selected branch:

Pipeline configurationPipeline configuration

Actions

Build

On the action list, switch to the Mobile tab and select the framework in which you develop your application:

iOS actionsiOS actions

Hint
How it works: All iOS actions are run on dedicated VMs with preinstalled macOS. In the action, you define the commands that build the application. When the action is run, Buddy uploads repository files from the pipeline filesystem to the VM, runs the commands on the uploaded files, and downloads the results back to the pipeline filesystem.

Here we can see an Xcode action which uses Fastlane to build the application:

Xcode Build action configurationXcode Build action configuration

You can use the dropdown menus to change the version of your framework and select the devices to simulate:

Additional build optionsAdditional build options

Sign package

Warning
Make sure that you added the certificate and profile to Buddy assets before configuring the action.

Before deploying the package, you first need to sign it. Click the + on the pipeline view and look up the Sign & Export action:

Sign & Export on action listSign & Export on action list

Here you define:

  • The path to the archive created by the build action
  • The export path to which the signed .ipa file will be saved
  • The distribution certificate
  • The provisioning profile

Sign & Export action configurationSign & Export action configuration

Deploy to App Store Connect

Hint

Once signed, the package can be deployed to App Store Connect. Click the + on the pipeline view and look up the App Store Publish action:

App Store Publish on action listApp Store Publish on action list

The action automatically detects the signed archive in the pipeline's filesystem. There you can also check the desired deployment flags:

App Store Publish action configurationApp Store Publish action configuration

Running the pipeline

With everything configured, make a push to the branch with your project: if you set the pipeline to run on Git events, Buddy will automatically fetch the repository code and trigger the pipeline.

Tip
We recommend running the pipeline on every change to configuration to ensure everything's working as expected before switching to the auto mode.

You can check the results in the Runs tab. Here you'll find detailed logs for each action. For example:

Example pipeline run details with expanded logsExample pipeline run details with expanded logs

Success
If you need assistance with pipeline configuration, reach out on the live-chat or drop a line to support@buddy.works – we'll be happy to help!

Optional: Deploy using commands

Alternatively, you can deploy the package with commands directly from the build action. Here is an example for Fastlane deployment:

Manual deployment commands in Xcode build actionManual deployment commands in Xcode build action

In this case, you need to upload the certificate and profile in the action's Mac OS VM tab:

VM settings of iOS build actionVM settings of iOS build action

Tip
In case of any trouble with pipeline configuration, let us know on the live-chat, or drop a line to support@buddy.works with the URL to your pipeline – we'll be happy to help!
Last update:
Sep 17, 2024