I'm currently using another provider for CI/CD. They've been offering Apple Silicon builds for over a year now. When we switched over, we saw our build times cut in half. I've seen similar results locally, back when I bought an M1 Mac.
So, recently, I tried to use Xcode Cloud on my project. My build time is nearly 45 minutes, where my build time on my current system is about 15 minutes, max.
Since I work on a team, and we make regular commits, having a 45 minute turnaround is not ideal. When I looked at the logs of my Xcode Cloud project, I saw a lot "x86_64" stuff in there, which led me to believe that Xcode Cloud is still building on Intel machines.
Additionally, I run tests on my builds. The build time alone (before running tests) was almost 20 minutes. The 15-minute time I cited with my current CI/CD included build time & tests running. So, a whole cycle finishes on my current setup before tests are even run.
I noticed that there was a bunch of x86_64 in the logs, which made me think that Xcode Cloud is still using Intel. Is this true? I've just gotten really used to faster build times, and I can't move onto a system like this, where the times are so drastically different. Like, I wouldn't mind build time that would add only a few more minutes to what I have now. But going from 15 -> 45 minutes is a real problem.
Post
Replies
Boosts
Views
Activity
I have a project with over 600 tests. While that sounds like a lot, I can see the metrics about how long it takes to run those tests. (it's about 14 seconds).
But when I create a job in Xcode Cloud to run these unit tests, I get very sub-optimal results. On a job that's never run (so no cached data) it took about 1hr 15 minutes.
test-without-building takes an extraordinary amount of time. (1396 seconds).
And if it's brand new build (no cached data) it also runs a command named build-for-testing, and that takes even longer (2626 seconds).
Is there any documentation suggesting why these operations would take so long to complete? It doesn't take anywhere near this long on my own machine.
I noticed that when searching for restaurants in the Apple Maps app, some restaurants have an "Order" button.
In one of the cases that I looked at, it launches "Yelp".
If I were to build an app for a specific restaurant, and that restaurant offered takeout ordering within the app, then I'd rather have Apple Maps launch my app, instead of Yelp. How would I do that? Having trouble finding the APIs for this.
I still would like the "Order" button right there, as it's very useful. I'd just rather it launch my app (assuming it's installed on the user's device).