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