Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

building iOS app on bitbucket pipelines

an le April 20, 2020

Hi All,

Currently, I'm using bitbucket pipelines for CI/CD. 

I have the project with react native and I already build and deploy success app for Android. But now I want to build the iOS app, I don't know whether bitbucket can support to build iOS such as Appcenter?

Many thanks

 

 

6 answers

1 accepted

1 vote
Answer accepted
Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 22, 2020

Hey there!

Unfortunately we don't support iOS builds in Bitbucket Pipelines. The way Apple licensing works requires apps for iOS to be built with XCode running on MacOS. Even frameworks like Expo must be run on a MacOS system. It's only legal to run MacOS on Apple hardware, so there is no way to scale iOS development out in an environment like AWS.

Some specialized companies work around this by setting up clusters of Mac Minis in their own data centers:

5ad62fac9b5a951f39531dd4_macminis-lv(Data center rack of Mac Mini hardware, image credit MacStadium)

The end result of this is that Bitbucket Pipelines won't be able to natively handle an iOS build. With a third party service that supports Mac builds, you could include a step in your pipeline that calls out for a build (on dedicated Mac hardware somewhere). It would not be as straightforward as doing the entire pipeline natively, but it would be similar to having a build agent on special hardware that is fairly common in the on-premise world.

Additional reading: Comparison of Mac hardware hosting options 

Cheers,
Daniel

an le April 22, 2020

Hi @Daniel Eads 

Thanks for your answer :) 

Evghenii Todorov November 3, 2020

Hi @Daniel Eads 

We are migrating our iOS project from Github to BitBucket now. On GitHub we configured self-hosted Github Actions that launches ios builds on macOs server we own via self hosted runners.

We would like to use BitBucket pipelines for running tests and other ios routines. Is any way to connect BitBucket Pipelines with our macOs server? If you know any tutorials how to do this you are welcome.

Best regards,

Evghenii

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
November 3, 2020

Hi @Evghenii Todorov,

Thanks for this question! Today, you would need to trigger the build on your Mac hardware via Webhook/Rest API call to another service completing the build. We have an on-premise product called Bamboo that can handle build plans, while some teams also use Jenkins. Here's a tutorial covering Bitbucket Cloud and Bamboo integration .

In the near future we're also going to be releasing a feature for Bitbucket Cloud called Bitbucket Pipelines Runners . This will allow you to run a build pipeline on your own hardware (thus allowing you to use XCode binaries on a Mac) from Bitbucket without licensing a separate product.

Cheers,
Daniel

Like # people like this
Brandon Smith January 28, 2021

With Bitbucket Pipeline Runners arriving soon, is there an opportunity to help beta test?

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 1, 2021

@Brandon Smith thanks for asking! I've added your contact details to our interest list. A product manager will reach out when Early Access becomes available.

HimanshuP April 21, 2021

Hi @Daniel Eads I still see Bitbucket Pipeline Runners is in coming soon which was to be part of Q1 release. Is there a way to register for beta version ?

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 24, 2021

@HimanshuP glad to hear you are interested! To get early access:

  1. Complete this survey, which gives our team the information needed to enable it on your Bitbucket workspace 
  2. Join the Early Access group here on Community to ask more questions about the Runners feature and get updates about changes to the experience. That group is staffed by the development team building the feature, and is also the best place to ask for help with Runners!

Cheers,
Daniel

suresh.shiga June 15, 2021

Hi @Daniel Eads 

Bitbucket Pipeline support iOS or not???

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
July 12, 2021

Hi @suresh.shiga ,

You can use Bitbucket Pipelines Runners (currently in Early Access) to run pipelines on macOS, provided you have the hardware somewhere. This makes it possible to build for iOS in Bitbucket Pipelines. To get started, join the Early Access group here on Community . Cheers!

Like Vlad Kalinin likes this
Andreas Hård August 6, 2021

Hey @Daniel Eads

We are exclusively using Bitbucket pipelines for all our non iOS software. We are currently evaluating what CI/CD solution to use for building our iOS libraries and applications.

Since we are using Bitbucket and JIRA it would be great if we can get access to Bitbucket Pipelines Runners to get the webhook functionality that will allow us to run unit tests and make new builds in conjunction with pull requests.

I've sent a request to join the early access program, but I don't know whom to reach out to.

Thanks in advance,

Andreas Hård

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
August 6, 2021

Hi @Andreas Hård ,

Just to update you and the rest of the thread, the current runners have moved to open beta and the setup documentation is available here.

I've also approved your request to join the EAP group.

Cheers!
Daniel | Atlassian Support

Like Andreas Hård likes this
Vlad Kalinin August 17, 2021

Hi @Daniel Eads

We are also interested in using Bitbucket pipelines for our iOS builds. I've requested access to the Early Access group linked above. I can see that we can add custom runners via repository settings, but the only available system appears to be Linux. Could you advise whether it would be possible to configure a Mac machine as a runner?

Cheers,

Vlad

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
August 17, 2021

Hi @Vlad Kalinin , I've approved your request to join the EAP group as well. Now that runners are in open beta, we may be re-evaluating the private group in the coming weeks.

For everyone's information about MacOS, the most recent info is from this post in the EAP group - I've copied the text here for those who aren't in the group:

 MacOs is on our long-term roadmap. I can't promise a date now, but we will look into it after Windows support. 

Current roadmap:

  • Workspace runners: June 2021
  • Remove limits on runners: July 2021
  •         CPU/Memory
  •         Multiple runners per machine
  •         Configurable docker daemon
  • Windows runners: Q3 CY21
Like Vlad Kalinin likes this
Vlad Kalinin August 17, 2021

Hi @Daniel Eads, thanks for the prompt response and for approving my request. Since the support for MacOS runners is a not currently on the roadmap, would there perhaps be an alternative recommended approach for triggering iOS app builds via Bitbucket in the meantime?

We have come across this article, which is over 2 years old - would you happen to know if any better/simpler options have emerged since then?
https://bitbucket.org/blog/bitbucket-bitrise-configuring-continuous-integration-for-an-ios-app

Cheers!

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
August 18, 2021

Just a quick clarification - macOS support is listed as expected in Q4 2021 on our public Cloud roadmap ; apologies for not having that in yesterday's post.

In terms of what you can do today, it might be possible to cobble something together with something like docker-osx and the existing runner. It wouldn't be supported, might not work, and might not keep working if you can make it work. If someone has hours to spare and doesn't mind setting that work aside in the future, then it's a possibility.

As for the Bitrise article - that sounds like a fairly safe approach to the problem right now. I'm not familiar with Bitrise personally but looking through their website, it looks like they have a fairly robust macOS build environment available. This would be a good stopgap in my opinion if you'd like to get something running with Bitbucket Pipelines while waiting for the official macOS runner. I'm not personally familiar with any simpler options at the moment.

Like # people like this
Bitwise DEVS February 15, 2022

Hi @Daniel Eads

I read an article about building an iOS without external tools/service on Github Action, is this possible also with Bitbucket Pipelines this 2022?

Thanks a lot

1 vote
danieleguia January 28, 2022

Any news on the exact date when the runners will be released with macOS? on the roadmap it says Q1 2022, is this true?

Right now there is only access to linux machines on the runners.

 

Thank you

Gal Keidar February 27, 2022

Moved to Q2...

1 vote
Attila Berczik December 1, 2021

Hi, I had the exact same issue as you, I wanted to build an IOS application from Bitbucket Pipelines.

I solved this issue by connecting to the Mac with an SSH connection.

I created a tutorial about the process, you can read it here:

https://attilaberczik.com/post/ios-bitbucket-cicd-pipeline

I hope it helps, if you have any feedback please write to me

0 votes
Ana Del Carmen Canas
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
April 1, 2024

Hi @Daniel Eads. Any news on 2024?

0 votes
Vitaliy Shynkar March 29, 2023

Any news on this in 2023?

0 votes
Majd Sabah June 8, 2020

I used Windows 10 machine to generate iOS build signed with Unreal Engine 4, the setup officially done by UE4 documentation? I don't how they are done it, but as far as I know you can generate iOS build only if you are using Blueprint (no coding).

Additional reading: UE 4 iOS setup

cc @Daniel Eads @an le 

 

Regards,

Majd

Daniel Eads
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
June 8, 2020

Right, I think that's the distinction:

The PC-only workflow described in this guide requires a pure Blueprint only project. If you wish to use any code in your project, you will also need a Mac to compile the code. You can follow the Building for iOS on Windows page to develop code-based projects for iOS on a PC.

To me, it sounds like they may have a binary already compiled and what the UE4 blueprint does is load some assets that don't require a recompile. Interesting workaround! Unfortunately I don't think this would be usable for the things most folks are putting through pipelines. Thanks for sharing though, that's really cool!

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events