fastlane 2.74.1 → 2.75.0.beta.20180109010003
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/bin-proxy +2 -2
- data/bin/fastlane +5 -5
- data/cert/lib/cert/commands_generator.rb +1 -1
- data/cert/lib/cert/runner.rb +14 -14
- data/credentials_manager/lib/credentials_manager/account_manager.rb +11 -11
- data/credentials_manager/lib/credentials_manager/appfile_config.rb +11 -11
- data/credentials_manager/lib/credentials_manager/cli.rb +4 -4
- data/deliver/lib/deliver/app_screenshot.rb +19 -2
- data/deliver/lib/deliver/commands_generator.rb +2 -2
- data/deliver/lib/deliver/loader.rb +2 -2
- data/deliver/lib/deliver/options.rb +2 -2
- data/deliver/lib/deliver/setup.rb +1 -1
- data/deliver/lib/deliver/submit_for_review.rb +1 -1
- data/fastlane/lib/fastlane/action.rb +2 -2
- data/fastlane/lib/fastlane/actions/actions_helper.rb +5 -5
- data/fastlane/lib/fastlane/actions/add_extra_platforms.rb +2 -2
- data/fastlane/lib/fastlane/actions/add_git_tag.rb +1 -1
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +1 -1
- data/fastlane/lib/fastlane/actions/appaloosa.rb +4 -4
- data/fastlane/lib/fastlane/actions/appetize.rb +3 -3
- data/fastlane/lib/fastlane/actions/appetize_viewing_url_generator.rb +2 -2
- data/fastlane/lib/fastlane/actions/appium.rb +2 -2
- data/fastlane/lib/fastlane/actions/appledoc.rb +3 -3
- data/fastlane/lib/fastlane/actions/apteligent.rb +2 -2
- data/fastlane/lib/fastlane/actions/artifactory.rb +2 -2
- data/fastlane/lib/fastlane/actions/backup_xcarchive.rb +1 -1
- data/fastlane/lib/fastlane/actions/build_ios_app.rb +1 -1
- data/fastlane/lib/fastlane/actions/capture_ios_screenshots.rb +1 -1
- data/fastlane/lib/fastlane/actions/carthage.rb +4 -4
- data/fastlane/lib/fastlane/actions/changelog_from_git_commits.rb +4 -4
- data/fastlane/lib/fastlane/actions/clean_build_artifacts.rb +1 -1
- data/fastlane/lib/fastlane/actions/clean_cocoapods_cache.rb +1 -1
- data/fastlane/lib/fastlane/actions/cloc.rb +1 -1
- data/fastlane/lib/fastlane/actions/cocoapods.rb +1 -1
- data/fastlane/lib/fastlane/actions/commit_github_file.rb +4 -4
- data/fastlane/lib/fastlane/actions/commit_version_bump.rb +7 -7
- data/fastlane/lib/fastlane/actions/copy_artifacts.rb +1 -1
- data/fastlane/lib/fastlane/actions/crashlytics.rb +2 -2
- data/fastlane/lib/fastlane/actions/debug.rb +2 -2
- data/fastlane/lib/fastlane/actions/delete_keychain.rb +1 -1
- data/fastlane/lib/fastlane/actions/deploygate.rb +7 -7
- data/fastlane/lib/fastlane/actions/docs/cert.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/deliver.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/frameit.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/gym.md +1 -3
- data/fastlane/lib/fastlane/actions/docs/match.md +4 -4
- data/fastlane/lib/fastlane/actions/docs/pem.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/precheck.md +2 -2
- data/fastlane/lib/fastlane/actions/docs/produce.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/scan.md +0 -2
- data/fastlane/lib/fastlane/actions/docs/sigh.md +6 -6
- data/fastlane/lib/fastlane/actions/docs/snapshot.md +4 -4
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +1 -1
- data/fastlane/lib/fastlane/actions/dsym_zip.rb +1 -1
- data/fastlane/lib/fastlane/actions/ensure_no_debug_code.rb +1 -1
- data/fastlane/lib/fastlane/actions/flock.rb +7 -7
- data/fastlane/lib/fastlane/actions/frame_screenshots.rb +1 -1
- data/fastlane/lib/fastlane/actions/gcovr.rb +5 -5
- data/fastlane/lib/fastlane/actions/get_build_number.rb +2 -2
- data/fastlane/lib/fastlane/actions/get_build_number_repository.rb +9 -9
- data/fastlane/lib/fastlane/actions/get_github_release.rb +2 -2
- data/fastlane/lib/fastlane/actions/get_info_plist_value.rb +1 -1
- data/fastlane/lib/fastlane/actions/get_version_number.rb +7 -7
- data/fastlane/lib/fastlane/actions/github_api.rb +2 -2
- data/fastlane/lib/fastlane/actions/hg_commit_version_bump.rb +2 -2
- data/fastlane/lib/fastlane/actions/hockey.rb +5 -5
- data/fastlane/lib/fastlane/actions/ifttt.rb +4 -4
- data/fastlane/lib/fastlane/actions/increment_build_number.rb +3 -3
- data/fastlane/lib/fastlane/actions/increment_version_number.rb +4 -4
- data/fastlane/lib/fastlane/actions/install_on_device.rb +2 -2
- data/fastlane/lib/fastlane/actions/install_xcode_plugin.rb +2 -2
- data/fastlane/lib/fastlane/actions/installr.rb +6 -6
- data/fastlane/lib/fastlane/actions/ipa.rb +1 -1
- data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +1 -1
- data/fastlane/lib/fastlane/actions/lcov.rb +1 -1
- data/fastlane/lib/fastlane/actions/mailgun.rb +3 -3
- data/fastlane/lib/fastlane/actions/modify_services.rb +1 -1
- data/fastlane/lib/fastlane/actions/notification.rb +1 -1
- data/fastlane/lib/fastlane/actions/number_of_commits.rb +1 -1
- data/fastlane/lib/fastlane/actions/onesignal.rb +1 -1
- data/fastlane/lib/fastlane/actions/pod_push.rb +1 -1
- data/fastlane/lib/fastlane/actions/podio_item.rb +6 -6
- data/fastlane/lib/fastlane/actions/puts.rb +1 -1
- data/fastlane/lib/fastlane/actions/read_podspec.rb +1 -1
- data/fastlane/lib/fastlane/actions/recreate_schemes.rb +1 -1
- data/fastlane/lib/fastlane/actions/reset_git_repo.rb +1 -1
- data/fastlane/lib/fastlane/actions/restore_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/rocket.rb +2 -2
- data/fastlane/lib/fastlane/actions/run_tests.rb +1 -1
- data/fastlane/lib/fastlane/actions/s3.rb +1 -1
- data/fastlane/lib/fastlane/actions/scp.rb +2 -2
- data/fastlane/lib/fastlane/actions/set_build_number_repository.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_changelog.rb +2 -2
- data/fastlane/lib/fastlane/actions/set_github_release.rb +4 -4
- data/fastlane/lib/fastlane/actions/set_info_plist_value.rb +2 -2
- data/fastlane/lib/fastlane/actions/set_pod_key.rb +1 -1
- data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +4 -4
- data/fastlane/lib/fastlane/actions/setup_jenkins.rb +6 -6
- data/fastlane/lib/fastlane/actions/setup_travis.rb +2 -2
- data/fastlane/lib/fastlane/actions/slack.rb +3 -3
- data/fastlane/lib/fastlane/actions/slather.rb +2 -2
- data/fastlane/lib/fastlane/actions/spm.rb +2 -2
- data/fastlane/lib/fastlane/actions/ssh.rb +1 -1
- data/fastlane/lib/fastlane/actions/team_id.rb +1 -1
- data/fastlane/lib/fastlane/actions/team_name.rb +1 -1
- data/fastlane/lib/fastlane/actions/testfairy.rb +7 -7
- data/fastlane/lib/fastlane/actions/tryouts.rb +6 -6
- data/fastlane/lib/fastlane/actions/update_app_group_identifiers.rb +2 -2
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +5 -5
- data/fastlane/lib/fastlane/actions/update_icloud_container_identifiers.rb +10 -10
- data/fastlane/lib/fastlane/actions/update_info_plist.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_url_schemes.rb +1 -1
- data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +4 -4
- data/fastlane/lib/fastlane/actions/upload_symbols_to_sentry.rb +4 -4
- data/fastlane/lib/fastlane/actions/verify_build.rb +6 -6
- data/fastlane/lib/fastlane/actions/verify_pod_keys.rb +1 -1
- data/fastlane/lib/fastlane/actions/version_bump_podspec.rb +3 -3
- data/fastlane/lib/fastlane/actions/version_get_podspec.rb +2 -2
- data/fastlane/lib/fastlane/actions/xcode_select.rb +2 -2
- data/fastlane/lib/fastlane/actions/xcode_server_get_assets.rb +3 -3
- data/fastlane/lib/fastlane/actions/xcov.rb +1 -1
- data/fastlane/lib/fastlane/actions/xctool.rb +1 -1
- data/fastlane/lib/fastlane/actions/xcversion.rb +1 -1
- data/fastlane/lib/fastlane/actions/zip.rb +3 -3
- data/fastlane/lib/fastlane/auto_complete.rb +15 -15
- data/fastlane/lib/fastlane/cli_tools_distributor.rb +15 -15
- data/fastlane/lib/fastlane/command_line_handler.rb +1 -1
- data/fastlane/lib/fastlane/commands_generator.rb +26 -26
- data/fastlane/lib/fastlane/configuration_helper.rb +2 -2
- data/fastlane/lib/fastlane/documentation/actions_list.rb +47 -47
- data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
- data/fastlane/lib/fastlane/environment_printer.rb +5 -5
- data/fastlane/lib/fastlane/fast_file.rb +5 -5
- data/fastlane/lib/fastlane/fastlane_require.rb +2 -2
- data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +3 -3
- data/fastlane/lib/fastlane/helper/podspec_helper.rb +1 -1
- data/fastlane/lib/fastlane/helper/sh_helper.rb +2 -2
- data/fastlane/lib/fastlane/helper/xcversion_helper.rb +1 -1
- data/fastlane/lib/fastlane/lane.rb +6 -6
- data/fastlane/lib/fastlane/lane_list.rb +3 -3
- data/fastlane/lib/fastlane/lane_manager.rb +7 -7
- data/fastlane/lib/fastlane/lane_manager_base.rb +15 -15
- data/fastlane/lib/fastlane/markdown_table_formatter.rb +2 -2
- data/fastlane/lib/fastlane/new_action.rb +5 -5
- data/fastlane/lib/fastlane/one_off.rb +1 -1
- data/fastlane/lib/fastlane/plugins/plugin_generator.rb +5 -5
- data/fastlane/lib/fastlane/plugins/plugin_generator_ui.rb +2 -2
- data/fastlane/lib/fastlane/plugins/plugin_manager.rb +7 -7
- data/fastlane/lib/fastlane/plugins/plugin_search.rb +5 -5
- data/fastlane/lib/fastlane/plugins/plugin_update_manager.rb +4 -4
- data/fastlane/lib/fastlane/plugins/template/%gem_name%.gemspec.erb +9 -8
- data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +37 -2
- data/fastlane/lib/fastlane/plugins/template/Gemfile +1 -1
- data/fastlane/lib/fastlane/plugins/template/Rakefile +1 -1
- data/fastlane/lib/fastlane/plugins/template/lib/fastlane/plugin/%plugin_name%/actions/%plugin_name%_action.rb.erb +3 -0
- data/fastlane/lib/fastlane/plugins/template/lib/fastlane/plugin/%plugin_name%/helper/%plugin_name%_helper.rb.erb +4 -0
- data/fastlane/lib/fastlane/plugins/template/spec/spec_helper.rb.erb +1 -1
- data/fastlane/lib/fastlane/runner.rb +9 -9
- data/fastlane/lib/fastlane/setup/crashlytics_beta.rb +9 -9
- data/fastlane/lib/fastlane/setup/crashlytics_beta_command_line_handler.rb +7 -7
- data/fastlane/lib/fastlane/setup/crashlytics_beta_info_collector.rb +19 -19
- data/fastlane/lib/fastlane/setup/crashlytics_beta_ui.rb +3 -3
- data/fastlane/lib/fastlane/setup/setup_android.rb +4 -4
- data/fastlane/lib/fastlane/setup/setup_ios.rb +9 -9
- data/fastlane/lib/fastlane/supported_platforms.rb +1 -1
- data/fastlane/lib/fastlane/swift_fastlane_api_generator.rb +10 -6
- data/fastlane/lib/fastlane/swift_lane_manager.rb +1 -1
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane_core/README.md +0 -26
- data/fastlane_core/lib/fastlane_core/analytics/analytics_ingester_client.rb +2 -2
- data/fastlane_core/lib/fastlane_core/build_watcher.rb +1 -1
- data/fastlane_core/lib/fastlane_core/cert_checker.rb +2 -2
- data/fastlane_core/lib/fastlane_core/command_executor.rb +3 -3
- data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +4 -4
- data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +4 -4
- data/fastlane_core/lib/fastlane_core/configuration/configuration_file.rb +4 -4
- data/fastlane_core/lib/fastlane_core/core_ext/cfpropertylist.rb +3 -3
- data/fastlane_core/lib/fastlane_core/device_manager.rb +2 -4
- data/fastlane_core/lib/fastlane_core/fastlane_folder.rb +1 -1
- data/fastlane_core/lib/fastlane_core/globals.rb +3 -3
- data/fastlane_core/lib/fastlane_core/helper.rb +1 -1
- data/fastlane_core/lib/fastlane_core/ipa_file_analyser.rb +1 -1
- data/fastlane_core/lib/fastlane_core/ipa_upload_package_builder.rb +2 -2
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +2 -2
- data/fastlane_core/lib/fastlane_core/pkg_file_analyser.rb +1 -1
- data/fastlane_core/lib/fastlane_core/pkg_upload_package_builder.rb +1 -1
- data/fastlane_core/lib/fastlane_core/print_table.rb +5 -5
- data/fastlane_core/lib/fastlane_core/project.rb +7 -7
- data/fastlane_core/lib/fastlane_core/swag.rb +9 -9
- data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +49 -49
- data/fastlane_core/lib/fastlane_core/ui/github_issue_inspector_reporter.rb +18 -18
- data/fastlane_core/lib/fastlane_core/ui/implementations/shell.rb +1 -1
- data/fastlane_core/lib/fastlane_core/update_checker/changelog.rb +7 -7
- data/fastlane_core/lib/fastlane_core/update_checker/update_checker.rb +11 -11
- data/frameit/lib/frameit/commands_generator.rb +2 -2
- data/frameit/lib/frameit/config_parser.rb +11 -11
- data/frameit/lib/frameit/dependency_checker.rb +7 -7
- data/frameit/lib/frameit/editor.rb +41 -41
- data/frameit/lib/frameit/frame_downloader.rb +12 -12
- data/frameit/lib/frameit/mac_editor.rb +2 -2
- data/frameit/lib/frameit/options.rb +1 -1
- data/frameit/lib/frameit/runner.rb +7 -7
- data/frameit/lib/frameit/screenshot.rb +5 -5
- data/frameit/lib/frameit/strings_parser.rb +6 -6
- data/frameit/lib/frameit/template_finder.rb +3 -3
- data/gym/lib/gym/commands_generator.rb +4 -4
- data/gym/lib/gym/detect_values.rb +1 -1
- data/gym/lib/gym/error_handler.rb +84 -84
- data/gym/lib/gym/generators/build_command_generator.rb +1 -1
- data/gym/lib/gym/runner.rb +24 -24
- data/gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb +2 -2
- data/match/lib/assets/READMETemplate.md +3 -3
- data/match/lib/match/commands_generator.rb +3 -3
- data/match/lib/match/encrypt.rb +10 -10
- data/match/lib/match/git_helper.rb +5 -5
- data/match/lib/match/nuke.rb +29 -29
- data/match/lib/match/runner.rb +13 -13
- data/match/lib/match/setup.rb +7 -7
- data/match/lib/match/table_printer.rb +6 -6
- data/match/lib/match/utils.rb +2 -2
- data/pem/lib/pem/commands_generator.rb +1 -1
- data/pem/lib/pem/manager.rb +9 -9
- data/pem/lib/pem/module.rb +1 -1
- data/pilot/lib/pilot/build_manager.rb +8 -8
- data/pilot/lib/pilot/commands_generator.rb +1 -1
- data/pilot/lib/pilot/manager.rb +1 -1
- data/pilot/lib/pilot/options.rb +4 -4
- data/pilot/lib/pilot/tester_manager.rb +10 -10
- data/precheck/lib/precheck/commands_generator.rb +4 -4
- data/precheck/lib/precheck/rule.rb +2 -2
- data/precheck/lib/precheck/rule_processor.rb +7 -7
- data/precheck/lib/precheck/rules/abstract_text_match_rule.rb +2 -2
- data/precheck/lib/precheck/rules/curse_words_rule.rb +3 -3
- data/precheck/lib/precheck/rules/unreachable_urls_rule.rb +3 -3
- data/precheck/lib/precheck/runner.rb +7 -7
- data/produce/lib/produce/commands_generator.rb +48 -48
- data/produce/lib/produce/developer_center.rb +4 -4
- data/produce/lib/produce/group.rb +2 -2
- data/produce/lib/produce/itunes_connect.rb +4 -4
- data/produce/lib/produce/options.rb +3 -3
- data/produce/lib/produce/service.rb +1 -1
- data/scan/lib/scan/commands_generator.rb +2 -2
- data/scan/lib/scan/error_handler.rb +12 -12
- data/scan/lib/scan/runner.rb +3 -3
- data/scan/lib/scan/slack_poster.rb +2 -2
- data/scan/lib/scan/test_command_generator.rb +1 -1
- data/screengrab/lib/screengrab/commands_generator.rb +1 -1
- data/screengrab/lib/screengrab/dependency_checker.rb +9 -9
- data/screengrab/lib/screengrab/options.rb +3 -3
- data/screengrab/lib/screengrab/reports_generator.rb +2 -2
- data/screengrab/lib/screengrab/runner.rb +32 -32
- data/sigh/lib/sigh/commands_generator.rb +18 -18
- data/sigh/lib/sigh/download_all.rb +4 -4
- data/sigh/lib/sigh/local_manage.rb +27 -27
- data/sigh/lib/sigh/manager.rb +1 -1
- data/sigh/lib/sigh/repair.rb +6 -6
- data/sigh/lib/sigh/resign.rb +7 -7
- data/sigh/lib/sigh/runner.rb +26 -26
- data/snapshot/lib/snapshot/collector.rb +7 -7
- data/snapshot/lib/snapshot/commands_generator.rb +7 -7
- data/snapshot/lib/snapshot/dependency_checker.rb +34 -19
- data/snapshot/lib/snapshot/detect_values.rb +2 -0
- data/snapshot/lib/snapshot/error_handler.rb +1 -1
- data/snapshot/lib/snapshot/fixes/hardware_keyboard_fix.rb +1 -1
- data/snapshot/lib/snapshot/fixes/simulator_zoom_fix.rb +1 -1
- data/snapshot/lib/snapshot/reports_generator.rb +2 -2
- data/snapshot/lib/snapshot/reset_simulators.rb +2 -2
- data/snapshot/lib/snapshot/runner.rb +14 -14
- data/snapshot/lib/snapshot/screenshot_flatten.rb +1 -1
- data/snapshot/lib/snapshot/screenshot_rotate.rb +6 -6
- data/snapshot/lib/snapshot/setup.rb +16 -16
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher.rb +1 -1
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +7 -7
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_xcode_8.rb +4 -4
- data/snapshot/lib/snapshot/update.rb +8 -8
- data/spaceship/lib/spaceship/base.rb +3 -3
- data/spaceship/lib/spaceship/client.rb +17 -17
- data/spaceship/lib/spaceship/commands_generator.rb +1 -1
- data/spaceship/lib/spaceship/du/du_client.rb +6 -3
- data/spaceship/lib/spaceship/globals.rb +1 -1
- data/spaceship/lib/spaceship/playground.rb +18 -18
- data/spaceship/lib/spaceship/portal/certificate.rb +5 -5
- data/spaceship/lib/spaceship/portal/device.rb +2 -2
- data/spaceship/lib/spaceship/portal/portal_client.rb +7 -7
- data/spaceship/lib/spaceship/portal/provisioning_profile.rb +7 -9
- data/spaceship/lib/spaceship/portal/ui/select_team.rb +13 -13
- data/spaceship/lib/spaceship/spaceauth_runner.rb +16 -16
- data/spaceship/lib/spaceship/test_flight/client.rb +9 -9
- data/spaceship/lib/spaceship/tunes/app_details.rb +1 -1
- data/spaceship/lib/spaceship/tunes/app_version.rb +7 -7
- data/spaceship/lib/spaceship/tunes/app_version_common.rb +1 -1
- data/spaceship/lib/spaceship/tunes/application.rb +1 -1
- data/spaceship/lib/spaceship/tunes/device_type.rb +2 -2
- data/spaceship/lib/spaceship/tunes/iap_detail.rb +1 -1
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +54 -54
- data/spaceship/lib/spaceship/two_step_client.rb +19 -19
- data/spaceship/lib/spaceship/ui.rb +1 -1
- data/supply/lib/supply/client.rb +1 -1
- data/supply/lib/supply/commands_generator.rb +1 -1
- data/supply/lib/supply/options.rb +14 -14
- data/supply/lib/supply/uploader.rb +3 -3
- metadata +31 -25
- data/fastlane/lib/.DS_Store +0 -0
- data/fastlane/lib/assets/.DS_Store +0 -0
- data/fastlane/lib/fastlane/.DS_Store +0 -0
- data/fastlane/lib/fastlane/actions/.DS_Store +0 -0
- data/fastlane/lib/fastlane/actions/docs/.DS_Store +0 -0
- data/fastlane/lib/fastlane/setup/.DS_Store +0 -0
- data/fastlane_core/lib/.DS_Store +0 -0
- data/fastlane_core/lib/fastlane_core/.DS_Store +0 -0
@@ -36,37 +36,37 @@ module Produce
|
|
36
36
|
c.action do |args, options|
|
37
37
|
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__)
|
38
38
|
|
39
|
-
puts
|
39
|
+
puts(Produce::Manager.start_producing)
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
43
43
|
command :enable_services do |c|
|
44
44
|
c.syntax = 'fastlane produce enable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
|
45
45
|
c.description = 'Enable specific Application Services for a specific app on the Apple Developer Portal'
|
46
|
-
c.example
|
47
|
-
|
48
|
-
c.option
|
49
|
-
c.option
|
50
|
-
c.option
|
51
|
-
c.option
|
52
|
-
c.option
|
53
|
-
c.option
|
54
|
-
c.option
|
55
|
-
c.option
|
56
|
-
c.option
|
57
|
-
c.option
|
58
|
-
c.option
|
59
|
-
c.option
|
60
|
-
c.option
|
61
|
-
c.option
|
62
|
-
c.option
|
46
|
+
c.example('Enable HealthKit, HomeKit and Passbook', 'fastlane produce enable_services -a com.example.app --healthkit --homekit --passbook')
|
47
|
+
|
48
|
+
c.option('--app-group', 'Enable App Groups')
|
49
|
+
c.option('--apple-pay', 'Enable Apple Pay')
|
50
|
+
c.option('--associated-domains', 'Enable Associated Domains')
|
51
|
+
c.option('--data-protection STRING', String, 'Enable Data Protection, suitable values are "complete", "unlessopen" and "untilfirstauth"')
|
52
|
+
c.option('--game-center', 'Enable Game Center')
|
53
|
+
c.option('--healthkit', 'Enable HealthKit')
|
54
|
+
c.option('--homekit', 'Enable HomeKit')
|
55
|
+
c.option('--wireless-conf', 'Enable Wireless Accessory Configuration')
|
56
|
+
c.option('--icloud STRING', String, 'Enable iCloud, suitable values are "legacy" and "cloudkit"')
|
57
|
+
c.option('--in-app-purchase', 'Enable In-App Purchase')
|
58
|
+
c.option('--inter-app-audio', 'Enable Inter-App-Audio')
|
59
|
+
c.option('--passbook', 'Enable Passbook')
|
60
|
+
c.option('--push-notification', 'Enable Push notification (only enables the service, does not configure certificates)')
|
61
|
+
c.option('--sirikit', 'Enable SiriKit')
|
62
|
+
c.option('--vpn-conf', 'Enable VPN Configuration')
|
63
63
|
|
64
64
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
65
65
|
|
66
66
|
c.action do |args, options|
|
67
67
|
# Filter the options so that we can still build the configuration
|
68
68
|
allowed_keys = Produce::Options.available_options.collect(&:key)
|
69
|
-
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include?
|
69
|
+
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include?(key) })
|
70
70
|
|
71
71
|
require 'produce/service'
|
72
72
|
Produce::Service.enable(options, args)
|
@@ -76,30 +76,30 @@ module Produce
|
|
76
76
|
command :disable_services do |c|
|
77
77
|
c.syntax = 'fastlane produce disable_services -a APP_IDENTIFIER SERVICE1, SERVICE2, ...'
|
78
78
|
c.description = 'Disable specific Application Services for a specific app on the Apple Developer Portal'
|
79
|
-
c.example
|
80
|
-
|
81
|
-
c.option
|
82
|
-
c.option
|
83
|
-
c.option
|
84
|
-
c.option
|
85
|
-
c.option
|
86
|
-
c.option
|
87
|
-
c.option
|
88
|
-
c.option
|
89
|
-
c.option
|
90
|
-
c.option
|
91
|
-
c.option
|
92
|
-
c.option
|
93
|
-
c.option
|
94
|
-
c.option
|
95
|
-
c.option
|
79
|
+
c.example('Disable HealthKit', 'fastlane produce disable_services -a com.example.app --healthkit')
|
80
|
+
|
81
|
+
c.option('--app-group', 'Disable App Groups')
|
82
|
+
c.option('--apple-pay', 'Disable Apple Pay')
|
83
|
+
c.option('--associated-domains', 'Disable Associated Domains')
|
84
|
+
c.option('--data-protection', 'Disable Data Protection')
|
85
|
+
c.option('--game-center', 'Disable Game Center')
|
86
|
+
c.option('--healthkit', 'Disable HealthKit')
|
87
|
+
c.option('--homekit', 'Disable HomeKit')
|
88
|
+
c.option('--wireless-conf', 'Disable Wireless Accessory Configuration')
|
89
|
+
c.option('--icloud', 'Disable iCloud')
|
90
|
+
c.option('--in-app-purchase', 'Disable In-App Purchase')
|
91
|
+
c.option('--inter-app-audio', 'Disable Inter-App-Audio')
|
92
|
+
c.option('--passbook', 'Disable Passbook')
|
93
|
+
c.option('--push-notification', 'Disable Push notifications')
|
94
|
+
c.option('--sirikit', 'Disable SiriKit')
|
95
|
+
c.option('--vpn-conf', 'Disable VPN Configuration')
|
96
96
|
|
97
97
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
98
98
|
|
99
99
|
c.action do |args, options|
|
100
100
|
# Filter the options so that we can still build the configuration
|
101
101
|
allowed_keys = Produce::Options.available_options.collect(&:key)
|
102
|
-
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include?
|
102
|
+
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include?(key) })
|
103
103
|
|
104
104
|
require 'produce/service'
|
105
105
|
Produce::Service.disable(options, args)
|
@@ -109,16 +109,16 @@ module Produce
|
|
109
109
|
command :group do |c|
|
110
110
|
c.syntax = 'fastlane produce group'
|
111
111
|
c.description = 'Ensure that a specific App Group exists'
|
112
|
-
c.example
|
112
|
+
c.example('Create group', 'fastlane produce group -g group.example.app -n "Example App Group"')
|
113
113
|
|
114
|
-
c.option
|
115
|
-
c.option
|
114
|
+
c.option('-n', '--group_name STRING', String, 'Name for the group that is created (PRODUCE_GROUP_NAME)')
|
115
|
+
c.option('-g', '--group_identifier STRING', String, 'Group identifier for the group (PRODUCE_GROUP_IDENTIFIER)')
|
116
116
|
|
117
117
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
118
118
|
|
119
119
|
c.action do |args, options|
|
120
120
|
allowed_keys = Produce::Options.available_options.collect(&:key)
|
121
|
-
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include?
|
121
|
+
Produce.config = FastlaneCore::Configuration.create(Produce::Options.available_options, options.__hash__.select { |key, value| allowed_keys.include?(key) })
|
122
122
|
|
123
123
|
require 'produce/group'
|
124
124
|
Produce::Group.new.create(options, args)
|
@@ -128,7 +128,7 @@ module Produce
|
|
128
128
|
command :associate_group do |c|
|
129
129
|
c.syntax = 'fastlane produce associate_group -a APP_IDENTIFIER GROUP_IDENTIFIER1, GROUP_IDENTIFIER2, ...'
|
130
130
|
c.description = 'Associate with a group, which is created if needed or simply located otherwise'
|
131
|
-
c.example
|
131
|
+
c.example('Associate with group', 'fastlane produce associate-group -a com.example.app group.example.com')
|
132
132
|
|
133
133
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
134
134
|
|
@@ -143,10 +143,10 @@ module Produce
|
|
143
143
|
command :merchant do |c|
|
144
144
|
c.syntax = 'fastlane produce merchant'
|
145
145
|
c.description = 'Ensure that a specific Merchant exists'
|
146
|
-
c.example
|
146
|
+
c.example('Create merchant', 'fastlane produce merchant -o merchant.com.example.production -r "Example Merchant Production"')
|
147
147
|
|
148
|
-
c.option
|
149
|
-
c.option
|
148
|
+
c.option('-r', '--merchant_name STRING', String, 'Name for the merchant that is created (PRODUCE_MERCHANT_NAME)')
|
149
|
+
c.option('-o', '--merchant_identifier STRING', String, 'Merchant identifier for the merchant (PRODUCE_MERCHANT_IDENTIFIER)')
|
150
150
|
|
151
151
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
152
152
|
|
@@ -155,7 +155,7 @@ module Produce
|
|
155
155
|
all_options = Produce::Options.available_options + extra_options
|
156
156
|
allowed_keys = all_options.collect(&:key)
|
157
157
|
|
158
|
-
Produce.config = FastlaneCore::Configuration.create(all_options, options.__hash__.select { |key, value| allowed_keys.include?
|
158
|
+
Produce.config = FastlaneCore::Configuration.create(all_options, options.__hash__.select { |key, value| allowed_keys.include?(key) })
|
159
159
|
|
160
160
|
require 'produce/merchant'
|
161
161
|
Produce::Merchant.new.create(options, args)
|
@@ -165,7 +165,7 @@ module Produce
|
|
165
165
|
command :associate_merchant do |c|
|
166
166
|
c.syntax = 'fastlane produce associate_merchant -a APP_IDENTIFIER MERCHANT_IDENTIFIER1, MERCHANT_IDENTIFIER2, ...'
|
167
167
|
c.description = 'Associate with a merchant for use with Apple Pay. Apple Pay will be enabled for this app.'
|
168
|
-
c.example
|
168
|
+
c.example('Associate with merchant', 'fastlane produce associate_merchant -a com.example.app merchant.com.example.production')
|
169
169
|
|
170
170
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
171
171
|
|
@@ -177,7 +177,7 @@ module Produce
|
|
177
177
|
end
|
178
178
|
end
|
179
179
|
|
180
|
-
default_command
|
180
|
+
default_command(:create)
|
181
181
|
|
182
182
|
run!
|
183
183
|
end
|
@@ -45,12 +45,12 @@ module Produce
|
|
45
45
|
def create_new_app
|
46
46
|
ENV["CREATED_NEW_APP_ID"] = Time.now.to_i.to_s
|
47
47
|
if app_exists?
|
48
|
-
UI.success
|
48
|
+
UI.success("[DevCenter] App '#{Produce.config[:app_identifier]}' already exists, nothing to do on the Dev Center")
|
49
49
|
ENV["CREATED_NEW_APP_ID"] = nil
|
50
50
|
# Nothing to do here
|
51
51
|
else
|
52
52
|
app_name = Produce.config[:app_name]
|
53
|
-
UI.message
|
53
|
+
UI.message("Creating new app '#{app_name}' on the Apple Dev Center")
|
54
54
|
|
55
55
|
app = Spaceship.app.create!(bundle_id: app_identifier,
|
56
56
|
name: app_name,
|
@@ -63,13 +63,13 @@ module Produce
|
|
63
63
|
UI.important("will still show up correctly on iTunes Connect and the App Store.")
|
64
64
|
end
|
65
65
|
|
66
|
-
UI.message
|
66
|
+
UI.message("Created app #{app.app_id}")
|
67
67
|
|
68
68
|
UI.crash!("Something went wrong when creating the new app - it's not listed in the apps list") unless app_exists?
|
69
69
|
|
70
70
|
ENV["CREATED_NEW_APP_ID"] = Time.now.to_i.to_s
|
71
71
|
|
72
|
-
UI.success
|
72
|
+
UI.success("Finished creating new app '#{app_name}' on the Dev Center")
|
73
73
|
end
|
74
74
|
|
75
75
|
return true
|
@@ -10,7 +10,7 @@ module Produce
|
|
10
10
|
|
11
11
|
group_identifier = options.group_identifier || UI.input("Group identifier: ")
|
12
12
|
|
13
|
-
if app_group_exists?
|
13
|
+
if app_group_exists?(group_identifier)
|
14
14
|
UI.success("[DevCenter] Group '#{options.group_name} (#{options.group_identifier})' already exists, nothing to do on the Dev Center")
|
15
15
|
ENV["CREATED_NEW_GROUP_ID"] = nil
|
16
16
|
# Nothing to do here
|
@@ -29,7 +29,7 @@ module Produce
|
|
29
29
|
|
30
30
|
UI.message("Created group #{group.app_group_id}")
|
31
31
|
|
32
|
-
UI.user_error!("Something went wrong when creating the new app group - it's not listed in the app groups list") unless app_group_exists?
|
32
|
+
UI.user_error!("Something went wrong when creating the new app group - it's not listed in the app groups list") unless app_group_exists?(group_identifier)
|
33
33
|
|
34
34
|
ENV["CREATED_NEW_GROUP_ID"] = Time.now.to_i.to_s
|
35
35
|
|
@@ -17,10 +17,10 @@ module Produce
|
|
17
17
|
def create_new_app
|
18
18
|
application = fetch_application
|
19
19
|
if application
|
20
|
-
UI.success
|
20
|
+
UI.success("[iTC] App '#{Produce.config[:app_identifier]}' already exists (#{application.apple_id}), nothing to do on iTunes Connect")
|
21
21
|
# Nothing to do here
|
22
22
|
else
|
23
|
-
UI.success
|
23
|
+
UI.success("Creating new app '#{Produce.config[:app_name]}' on iTunes Connect")
|
24
24
|
|
25
25
|
Produce.config[:bundle_identifier_suffix] = '' unless wildcard_bundle?
|
26
26
|
generated_app = Spaceship::Tunes::Application.create!(name: Produce.config[:app_name],
|
@@ -43,7 +43,7 @@ module Produce
|
|
43
43
|
# Since 2016-08-10 iTunes Connect takes some time to actually list the newly created application
|
44
44
|
# We have no choice but to poll to see if the newly created app is already available
|
45
45
|
UI.message("Waiting for the newly created application to be available on iTunes Connect...")
|
46
|
-
sleep
|
46
|
+
sleep(15)
|
47
47
|
application = fetch_application
|
48
48
|
end
|
49
49
|
|
@@ -52,7 +52,7 @@ module Produce
|
|
52
52
|
UI.message("Ensuring version number")
|
53
53
|
application.ensure_version!(Produce.config[:app_version], platform: Produce.config[:platform]) if Produce.config[:app_version]
|
54
54
|
|
55
|
-
UI.success
|
55
|
+
UI.success("Successfully created new app '#{Produce.config[:app_name]}' on iTunes Connect with ID #{application.apple_id}")
|
56
56
|
end
|
57
57
|
|
58
58
|
return Spaceship::Tunes::Application.find(@full_bundle_identifier, mac: Produce.config[:platform] == "osx").apple_id
|
@@ -50,7 +50,7 @@ module Produce
|
|
50
50
|
optional: true,
|
51
51
|
default_value: "ios",
|
52
52
|
verify_block: proc do |value|
|
53
|
-
UI.user_error!("The platform can only be ios or osx") unless %('ios', 'osx').include?
|
53
|
+
UI.user_error!("The platform can only be ios or osx") unless %('ios', 'osx').include?(value)
|
54
54
|
end),
|
55
55
|
FastlaneCore::ConfigItem.new(key: :language,
|
56
56
|
short_option: "-m",
|
@@ -89,7 +89,7 @@ module Produce
|
|
89
89
|
allowed_keys = Produce::DeveloperCenter::ALLOWED_SERVICES.keys
|
90
90
|
UI.user_error!("enabled_features has to be of type Hash") unless value.kind_of?(Hash)
|
91
91
|
value.each do |key, v|
|
92
|
-
UI.user_error!("The key: '#{key}' is not supported in `enabled_features' - following keys are available: [#{allowed_keys.join(',')}]") unless allowed_keys.include?
|
92
|
+
UI.user_error!("The key: '#{key}' is not supported in `enabled_features' - following keys are available: [#{allowed_keys.join(',')}]") unless allowed_keys.include?(key.to_sym)
|
93
93
|
end
|
94
94
|
end),
|
95
95
|
FastlaneCore::ConfigItem.new(key: :enable_services,
|
@@ -102,7 +102,7 @@ module Produce
|
|
102
102
|
allowed_keys = Produce::DeveloperCenter::ALLOWED_SERVICES.keys
|
103
103
|
UI.user_error!("enable_services has to be of type Hash") unless value.kind_of?(Hash)
|
104
104
|
value.each do |key, v|
|
105
|
-
UI.user_error!("The key: '#{key}' is not supported in `enable_services' - following keys are available: [#{allowed_keys.join(',')}]") unless allowed_keys.include?
|
105
|
+
UI.user_error!("The key: '#{key}' is not supported in `enable_services' - following keys are available: [#{allowed_keys.join(',')}]") unless allowed_keys.include?(key.to_sym)
|
106
106
|
end
|
107
107
|
end),
|
108
108
|
|
@@ -39,7 +39,7 @@ module Produce
|
|
39
39
|
allowed_keys = [:app_group, :apple_pay, :associated_domains, :data_protection, :game_center, :healthkit, :homekit,
|
40
40
|
:wireless_conf, :icloud, :in_app_purchase, :inter_app_audio, :passbook, :push_notification, :sirikit,
|
41
41
|
:vpn_conf, :network_extension, :hotspot, :multipath, :nfc_tag_reading]
|
42
|
-
options.__hash__.select { |key, value| allowed_keys.include?
|
42
|
+
options.__hash__.select { |key, value| allowed_keys.include?(key) }
|
43
43
|
end
|
44
44
|
|
45
45
|
# rubocop:disable Metrics/PerceivedComplexity
|
@@ -56,7 +56,7 @@ module Scan
|
|
56
56
|
is_swift_fastfile = args.include?("swift")
|
57
57
|
if is_swift_fastfile
|
58
58
|
path = File.join(containing, Scan.scanfile_name + ".swift")
|
59
|
-
UI.user_error!
|
59
|
+
UI.user_error!("Scanfile.swift already exists") if File.exist?(path)
|
60
60
|
end
|
61
61
|
|
62
62
|
if is_swift_fastfile
|
@@ -70,7 +70,7 @@ module Scan
|
|
70
70
|
end
|
71
71
|
end
|
72
72
|
|
73
|
-
default_command
|
73
|
+
default_command(:tests)
|
74
74
|
|
75
75
|
run!
|
76
76
|
end
|
@@ -10,18 +10,18 @@ module Scan
|
|
10
10
|
# The order of the handling below is import
|
11
11
|
case output
|
12
12
|
when /US\-ASCII/
|
13
|
-
print
|
14
|
-
print
|
15
|
-
print
|
16
|
-
print
|
17
|
-
print
|
18
|
-
print
|
19
|
-
print
|
20
|
-
print
|
21
|
-
print
|
22
|
-
print
|
23
|
-
print
|
24
|
-
print
|
13
|
+
print("Your shell environment is not correctly configured")
|
14
|
+
print("Instead of UTF-8 your shell uses US-ASCII")
|
15
|
+
print("Please add the following to your '~/.bashrc':")
|
16
|
+
print("")
|
17
|
+
print(" export LANG=en_US.UTF-8")
|
18
|
+
print(" export LANGUAGE=en_US.UTF-8")
|
19
|
+
print(" export LC_ALL=en_US.UTF-8")
|
20
|
+
print("")
|
21
|
+
print("You'll have to restart your shell session after updating the file.")
|
22
|
+
print("If you are using zshell or another shell, make sure to edit the correct bash file.")
|
23
|
+
print("For more information visit this stackoverflow answer:")
|
24
|
+
print("https://stackoverflow.com/a/17031697/445598")
|
25
25
|
when /Testing failed/
|
26
26
|
UI.build_failure!("Error building the application - see the log above")
|
27
27
|
when /Executed/
|
data/scan/lib/scan/runner.rb
CHANGED
@@ -69,14 +69,14 @@ module Scan
|
|
69
69
|
failures_str = result[:failures].to_s.green
|
70
70
|
end
|
71
71
|
|
72
|
-
puts
|
72
|
+
puts(Terminal::Table.new({
|
73
73
|
title: "Test Results",
|
74
74
|
rows: [
|
75
75
|
["Number of tests", result[:tests]],
|
76
76
|
["Number of failures", failures_str]
|
77
77
|
]
|
78
|
-
})
|
79
|
-
puts
|
78
|
+
}))
|
79
|
+
puts("")
|
80
80
|
|
81
81
|
copy_simulator_logs
|
82
82
|
|
@@ -47,9 +47,9 @@ module Scan
|
|
47
47
|
}
|
48
48
|
end
|
49
49
|
|
50
|
-
result = notifier.ping
|
50
|
+
result = notifier.ping("#{Scan.project.app_name} Tests:",
|
51
51
|
icon_url: 'https://s3-eu-west-1.amazonaws.com/fastlane.tools/fastlane.png',
|
52
|
-
attachments: attachments
|
52
|
+
attachments: attachments)
|
53
53
|
|
54
54
|
if result.code.to_i == 200
|
55
55
|
UI.success('Successfully sent Slack notification')
|
@@ -134,7 +134,7 @@ module Scan
|
|
134
134
|
day = Time.now.strftime("%F") # e.g. 2015-08-07
|
135
135
|
|
136
136
|
Scan.cache[:build_path] = File.expand_path("~/Library/Developer/Xcode/Archives/#{day}/")
|
137
|
-
FileUtils.mkdir_p
|
137
|
+
FileUtils.mkdir_p(Scan.cache[:build_path])
|
138
138
|
end
|
139
139
|
Scan.cache[:build_path]
|
140
140
|
end
|
@@ -20,11 +20,11 @@ module Screengrab
|
|
20
20
|
|
21
21
|
def self.raise_missing_adb(android_home)
|
22
22
|
if android_home
|
23
|
-
UI.error
|
24
|
-
UI.error
|
23
|
+
UI.error("The `adb` command could not be found relative to your provided ANDROID_HOME at #{android_home}")
|
24
|
+
UI.error("Please ensure that the Android SDK is installed and the platform-tools directory is present")
|
25
25
|
else
|
26
|
-
UI.error
|
27
|
-
UI.error
|
26
|
+
UI.error('The `adb` command could not be found on your PATH')
|
27
|
+
UI.error('Please ensure that the Android SDK is installed and the platform-tools directory is present and on your PATH')
|
28
28
|
end
|
29
29
|
|
30
30
|
UI.user_error!('adb command not found')
|
@@ -41,17 +41,17 @@ module Screengrab
|
|
41
41
|
|
42
42
|
def self.warn_missing_aapt(android_home)
|
43
43
|
if android_home
|
44
|
-
UI.important
|
45
|
-
UI.important
|
44
|
+
UI.important("The `aapt` command could not be found relative to your provided ANDROID_HOME at #{android_home}")
|
45
|
+
UI.important("Please ensure that the Android SDK is installed and you have the build tools downloaded")
|
46
46
|
else
|
47
|
-
UI.important
|
48
|
-
UI.important
|
47
|
+
UI.important("The `aapt` command could not be found on your PATH")
|
48
|
+
UI.important("Please ensure that the Android SDK is installed and you have the build tools downloaded and present on your PATH")
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
52
52
|
def self.warn_if_command_path_not_relative_to_android_home(cmd_name, android_home, cmd_path)
|
53
53
|
if android_home && cmd_path && !cmd_path.start_with?(android_home)
|
54
|
-
UI.important
|
54
|
+
UI.important("Using `#{cmd_name}` found at #{cmd_path} which is not within the specified ANDROID_HOME at #{android_home}")
|
55
55
|
end
|
56
56
|
end
|
57
57
|
end
|
@@ -89,7 +89,7 @@ module Screengrab
|
|
89
89
|
code_gen_sensitive: true,
|
90
90
|
default_value: Dir[File.join("app", "build", "outputs", "apk", "app-debug.apk")].last,
|
91
91
|
verify_block: proc do |value|
|
92
|
-
UI.user_error!
|
92
|
+
UI.user_error!("Could not find APK file at path '#{value}'") unless File.exist?(value)
|
93
93
|
end),
|
94
94
|
FastlaneCore::ConfigItem.new(key: :tests_apk_path,
|
95
95
|
env_name: 'SCREENGRAB_TESTS_APK_PATH',
|
@@ -99,7 +99,7 @@ module Screengrab
|
|
99
99
|
code_gen_sensitive: true,
|
100
100
|
default_value: Dir[File.join("app", "build", "outputs", "apk", "app-debug-androidTest-unaligned.apk")].last,
|
101
101
|
verify_block: proc do |value|
|
102
|
-
UI.user_error!
|
102
|
+
UI.user_error!("Could not find APK file at path '#{value}'") unless File.exist?(value)
|
103
103
|
end),
|
104
104
|
FastlaneCore::ConfigItem.new(key: :specific_device,
|
105
105
|
env_name: 'SCREENGRAB_SPECIFIC_DEVICE',
|
@@ -112,7 +112,7 @@ module Screengrab
|
|
112
112
|
short_option: "-d",
|
113
113
|
default_value: "phone",
|
114
114
|
verify_block: proc do |value|
|
115
|
-
UI.user_error!
|
115
|
+
UI.user_error!("device_type must be one of: #{DEVICE_TYPES}") unless DEVICE_TYPES.include?(value)
|
116
116
|
end),
|
117
117
|
FastlaneCore::ConfigItem.new(key: :exit_on_test_failure,
|
118
118
|
env_name: 'EXIT_ON_TEST_FAILURE',
|