Visual Studio For Mac Vsts
(VSTS) delivers services for teams to share code, track work, and ship software, including all of their mobile applications built with Xamarin. In the in this series, we automated a Xamarin.Android app in VSTS. We created our account, connected to our GitHub account, built and signed the app, and delivered it to HockeyApp for beta testers to start testing it.
Today, we’re going to continue to automate the application, but this time for iOS. Getting Started At this point we’ve already created our first project and have connected to our source code repository. If you haven’t gotten this far, be sure to read through the. We’ll continue to edit our existing projects in VSTS, but first there are a few prerequisites. Preparing an iOS Build Agent Since Xamarin.Android applications can be completely built and packaged on a Windows machine, we were able to leverage VSTS’ hosted solution to build our application. IOS applications must be built and compiled on a macOS device. Within VSTS, we have a few solutions available.
•: Fully hosted with Xamarin support (paid plan) • Utilize an on premise macOS machine with VSTS build agent installed For this post, I’m going to utilize a Mac mini that I have on-premise as my build agent. You’ll only have to set up the agent once, as it can be used by multiple applications in VSTS. It can be a bit tricky to set up since it will require installing Homebrew,.NET Core, and npm on your macOS device, so here’s a quick rundown: New Agent Pool Create new “On Premise” Agent Pool under the projects Settings -> Agent Pools: Install VSTS Build Agent Before we can install the VSTS Build agent we must install a few prerequisites on our macOS machine. • Install package manager for macOS • Install Tip: after calling brew install openssl be sure to call: mkdir -p /usr/local/lib/ This will ensure that the /user/local/lib folder is created before linking files.• Install npm by running the following command in the terminal: brew install npm • for the Build Agent.
Visual Studio Team Services supports TFVC (centralized version control -CVS) or Git Repositories (de-centralized version control - DVCS) - The Git option is the option to choose if you use Xamarin Studio on a Mac.
Select the Scope: Agent Pools (read, manage) • On the Agent Pool page where we created the new pool, tap Download agent and follow the setup steps to properly configure the Build agent. With that, the build agent should be sitting in an open terminal window listening for jobs to come in.
IOS Build Definition Heading back to our Build Definitions, it’s time to create our new iOS definition, which tells VSTS how to go about building our iOS app. Tap on the new icon and then select Xamarin.iOS from the template list.
The next step is the settings for source repository. Coffee Tipper is hosted on GitHub, which is already configured, so we’ll select that and then check the Continuous Integration check box and select the new On Premise agent queue. This will create our definition with a few build steps set up for us.
Before we configure the steps, let’s finalize the repository settings to point to the Coffee Tipper repository, which can be set up under the Repository tab: Back on the Build we can start to fill in our steps. Similar to our Android setup in VSTS, we can disable the Activate, Deactivate, and Test Cloud steps for now. I like to keep them in the definition in case I need to go back and toggle them on.