Thrust 是一个小项目,包含一些有用的任务来运行 Cedar 规格和构建 iOS 应用程序档案。
rake autotag:create[environment] # Create a tag for the given deployment environment
rake autotag:list # Show the commit that is currently deployed to each environment
rake build_ipa:demo # Build an .ipa file for deployment to demo
rake build_ipa:production # Build an .ipa file for deployment to production
rake build_ipa:staging # Build an .ipa file for deployment to staging
rake clean # Clean all targets
rake focused_specs # Print out names of files containing focused specs
rake nof # Remove any focus from specs
rake set_build_number[build_number] # Set build number
rake spec_bundle[device_name,os_version] # Run the FakeProject scheme
rake spec_suite[device_name,os_version] # Run the SpecSuite target
rake mac_suite[device_name,os_version] # Run the MacSpecSuite target
rake trim # Trim whitespace
thrust_version: 0.7
project_name: My Great Project # do not use if building with an xcode workspace
# workspace_name: My Workspace # use if building with an xcode workspace
# path_to_xcodeproj: 'App/MyApp.xcodeproj' # use if xcodeproj is not in the same directory as this yaml file. Optional.
app_name: My Great App
distribution_certificate: 'Name of Distribution Signing Certificate'
#ios_sim_path: '/path/to/ios-sim' # Optional. Use to prefer a specific ios-sim binary (e.g. within project directory) over a system-installed version (homebrew)
deployment_targets:
staging:
target: MyGreatAppTarget # Name of the build target. Optional, defaults to app name.
#scheme: MyGreatAppScheme # Replace target with scheme if using a workspace
build_configuration: Release
provisioning_search_query: 'query to find Provisioning Profile' # Otherwise, it will use the first provisioning profile in ~/Library/MobileDevice/Provisioning Profiles/
versioning_method: 'none' # or 'timestamp-sha' or 'commits'. Leave blank to use Git commit SHAs for build numbers.
tag: ci # Deploys latest commit with the tag. Leave blank to deploy from master.
demo:
build_configuration: Demo
provisioning_search_query: 'query to find Provisioning Profile'
spec_targets:
# Example of an iOS spec suite configuration.
specs: # This is the name of the rake task
scheme: Specs (My Great App) # Name of the scheme.
type: app # Spec target type: 'app' or 'bundle'. Optional, defaults to app.
build_configuration: Debug # Name of the build configuration.
build_sdk: iphonesimulator8.1 # SDK used to build the target. Optional, defaults to latest iphonesimulator.
device_name: iPhone 6 # Device name. Run `ios-sim showdevicetypes` to see a full list of available devices.
os_version: 8.1 # OS version to run. Optional, defaults to latest available version.
timeout: 90 # Optional, defaults to 30 seconds.
# Example of an iOS spec bundle configuration.
spec_bundle:
scheme: My Great App # Use the name for the main app scheme.
type: bundle
build_configuration: Debug
device_name: iPhone 4s
os_version: 7.1
# Example of a Mac OSX target configuration.
integration:
scheme: IntegrationSpecs (My Great App)
build_configuration: Release
build_sdk: macosx
spec_directories:
- SpecSuite
- SpecBundle
- WatchKit/SpecBundle
- MacSpecSuite
下载地址