Integrating Faux Pas into your iOS Continuous Integration Workflow
Faux Pas is a OS X app that analyzes your source code for possible bugs and stylistic issues (among many, many other things). It also has a nifty command line tool that we wanted to integrate into our continuous integration process. Here's how we made it happen.
- Download Faux Pas on to your CI Server and launch it.
- In the menu bar, select Faux Pas, then Install CLI Tools...
- Add a new After-Integration Trigger to your XcodeBot.
Set up an After-Integration Trigger
From your existing XcodeBot, select Edit Bot… and press next until you arrive on the final screen. There, press Add Trigger then Run Script under “After Integration.”
Here's our script:
#!/bin/bash cd "$XCS_SOURCE_DIR/<project_name>" #This line only needs to be in the script for the first launch, so that the CLI tool will attribute the license to the XcodeServer user (_xcsbuildd) #Other license types: personal, organization-seat, site, enterprise /usr/local/bin/fauxpas updatelicense organization-seat "<license_name>" <license_key> /usr/local/bin/fauxpas check <project_name>.xcodeproj --workspace <project_name>.xcworkspace --scheme <scheme_name> -b debug -t <target_name> -o json > /tmp/fauxpas_output.json
When the script is finished executing, you'll have a json formatted file listing all your diagnostic issues to do with what you please.