ExtraBuildPhase is a plugin for Xcode that was created to run SwiftLint, but is customizable by shell script.
- Xcode 7.1 or later
- SwiftLint for default shell script
Xcode Plug-ins Locations are the following:
- Local System:
- User Home:
- Homebrew-Cask (User Home):
brew cask install extrabuildphase
- Alcatraz (User Home)
- Installer package (Local System): ExtraBuildPhase-0.3.5.pkg
Note: Homebrew-Casks's install location has changed from Local System to User Home. If you have installed 0.3 or earlier with Homebrew-Cask, please remove
ExtraBuildPhase.xcplugin manually from Local System.
- Download ExtraBuildPhase.xcplugin-0.3.5.zip
- Unzip it
ExtraBuildPhase.xcpluginto either Xcode Plug-ins locations.
Build By Yourself
- Building the project with Xcode will install the plugin. (to User Home)
Restart Xcode after installing
# Change shell script defaults write io.github.norio-nomura.ExtraBuildPhase shellScript -string ' if which swiftlint >/dev/null; then if [ -f .swiftlint.yml ]; then CONFIG="--config .swiftlint.yml" elif [ -f $HOME/.swiftlint.yml ]; then CONFIG="--config $HOME/.swiftlint.yml" fi swiftlint lint --quiet --use-script-input-files $CONFIG fi exit 0 # ignore result of swiftlint ' # Changes will be applied after "Product > Clean⇧⌘K" # Show environment variables in build log defaults write io.github.norio-nomura.ExtraBuildPhase showEnvVarsInLog -bool true # Run shell script not only on Xcode, but also xcodebuild. defaults write io.github.norio-nomura.ExtraBuildPhase isNotLimitedToXcode -bool true
ExtraBuildPhase is available under the MIT license. See the LICENSE file for more info.