Xcode Server with Xcode 10

Shashikant Jagtap
Jul 22, 2018 · 4 min read
Image for post
Image for post

Xcode Server is a continuous integration service launched by Apple a few years back. In the previous post about Xcode Server and Xcode 9, we have covered most of the major enhancement that has been announced at WWDC 2017 in the session on ‘What’s New in Signing for Xcode and Xcode Server‘ since then using Xcode Server become so easy and painless to use. The major enhancements announced in the Xcode 9 release were

  • Inbuilt Xcode Server
  • Code Signing and Device Provisioning within server & Automated Code Signing
  • Headless test running on Xcode Server

All these features make Xcode Server, painless choice of continuous integration for iOS apps. However, some game-changing things happened at the beginning of 2018. Apple acquiredBuddyBuild which is another Continuous Integration service. This is the major thing for Xcode Server and its ongoing development. This might be the reason, WWDC2018 was so exciting in terms of Continuous Integration. Apple didn’t utter a single word about Continuous Integration and Xcode Server. This is something very suspicious. Well, this is the completely different topic but as part of this post we will how it looks like using Xcode Server in the Xcode 10 and if anything changed.

Xcode 10: Xcode Server

Xcode 10 has dark mode so it would be interesting to see how it looks like to set up Xcode Server from scratch. We will create a blank application with unit and UI tests targets in Xcode 10, we call it Xcode10-XcodeServer.

Enable Xcode Server

As before, we can see “Servers & Bots” tab in the Xcode Preference. We can setup Xcode Server using local Mac or another Mac. We need to select the Mac and Integration user. See the GIF below to understand the process of enabling Xcode Server in Xcode 10.

Image for post
Image for post

Once, we enable the Xcode Server then we will get a macOS notification saying Xcode Server is ready and we will an icon on the top with the status of Xcode Server as shown below.

Image for post
Image for post

Now that, we have setup Xcode Server which is waiting for integration.

Adding Xcode Server

Once, we have enabled Xcode Server then it needs to be added to the local Xcode so that we can create a bot. As usual, it can be done from the Xcode Preference -> Account Section by adding new Xcode Server. We have to provide canonical hostname of the Xcode Server machine and details of the user to run integrations.

Image for post
Image for post

Now that, we are all set to create a new bot for our blank demo application Xcode10-XcodeServer

Creating a Bot

Once we have opened Xcode project for our app, we can easily create a bot to build and test the app. It’s the same process as explained in the previous blog post for Xcode 9 and Xcode Server here

Image for post
Image for post

The above GIF shows an entire process of creating a bot and running integration.

What has Changed

Well, looking at the Xcode Server from Xcode 9 and Xcode 10, there isn’t anything changed drastically apart from the dark mode. There were no any words about Xcode Server in this year WWDC 2018, there might be various reasons for this but some of the Xcode release notes have shown that there are some issues with the server

  • Xcode may crash when selecting ssh credentials for Xcode server bots. (41848927)
  • Certain Xcode Server logs, such as trigger logs, are now visible in the integration Logs report. (40462372)

Some major missing features like Support for testing Pull Request, Uploading the IPA to iTunes Connect or TestFlight hasn’t ben fixed.

Conclusion

With the acquisition of BuddyBuild, Xcode Server development seems to be slowed down, this might be an alarm bell for the existing Xcode Server users. It would be interesting to see what Apple and BuddyBuild are doing together to solve CI/CD issues for iOS app development in the near future. Let’s wait and watch the future of Xcode Server.

To read similar posts on iOS DevOps and CI/CD. Follow XCBlog Medium Channel Or Checkout XCBlog website here !

Like this post from XCBlog By XCTEQ ? You may also like some of our services like guest blogging or Mobile DevOps(CI/CD) or Test Automation. Chekout our services, open source projects on Github or Follow us on Twitter , Facebook, Youtube , LinkedIn. Download Our XCBlog iOS App to read the blogs offline.

Image for post
Image for post

XCTEQ is a company specialised in Mobile DevOps, CI/CD, Mobile, AI/ML based Test Automation Checkout XCTEQ products and services at http://www.xcteq.co.uk or write to us on info@xcteq.co.uk..

XCBlog

P.S:

Shashikant Jagtap

Written by

All the posts published on this channel before I joined Apple. Thanks for being a reader of XCBlog. Web: shashikantjatap.net, xcteq.co.uk

XCBlog

XCBlog

P.S: All the posts from this publication are published before author Shashikant Jagtap joined Apple. Thank you so much for being a reader of XCBlog. Tech Blog about DevOps, CI/CD for  Platforms. Xcode Server, XCTest, SwiftPM, Server Side Swift, XCUITest etc.

Shashikant Jagtap

Written by

All the posts published on this channel before I joined Apple. Thanks for being a reader of XCBlog. Web: shashikantjatap.net, xcteq.co.uk

XCBlog

XCBlog

P.S: All the posts from this publication are published before author Shashikant Jagtap joined Apple. Thank you so much for being a reader of XCBlog. Tech Blog about DevOps, CI/CD for  Platforms. Xcode Server, XCTest, SwiftPM, Server Side Swift, XCUITest etc.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store