fastlane_hotfix 2.165.1 → 2.187.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +106 -86
- data/cert/lib/cert/commands_generator.rb +2 -1
- data/cert/lib/cert/options.rb +6 -5
- data/cert/lib/cert/runner.rb +8 -8
- data/deliver/lib/assets/summary.html.erb +10 -10
- data/deliver/lib/deliver/app_screenshot.rb +17 -11
- data/deliver/lib/deliver/app_screenshot_validator.rb +108 -0
- data/deliver/lib/deliver/commands_generator.rb +4 -3
- data/deliver/lib/deliver/detect_values.rb +5 -3
- data/deliver/lib/deliver/download_screenshots.rb +2 -3
- data/deliver/lib/deliver/html_generator.rb +2 -2
- data/deliver/lib/deliver/languages.rb +1 -1
- data/deliver/lib/deliver/loader.rb +123 -21
- data/deliver/lib/deliver/module.rb +6 -0
- data/deliver/lib/deliver/options.rb +41 -55
- data/deliver/lib/deliver/runner.rb +19 -14
- data/deliver/lib/deliver/setup.rb +9 -5
- data/deliver/lib/deliver/submit_for_review.rb +4 -4
- data/deliver/lib/deliver/upload_metadata.rb +32 -21
- data/deliver/lib/deliver/upload_price_tier.rb +1 -1
- data/deliver/lib/deliver/upload_screenshots.rb +14 -76
- data/fastlane/lib/fastlane/actions/actions_helper.rb +3 -3
- data/fastlane/lib/fastlane/actions/adb.rb +2 -5
- data/fastlane/lib/fastlane/actions/adb_devices.rb +0 -1
- data/fastlane/lib/fastlane/actions/add_git_tag.rb +22 -6
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +17 -17
- data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +21 -7
- data/fastlane/lib/fastlane/actions/appaloosa.rb +7 -2
- data/fastlane/lib/fastlane/actions/appetize.rb +13 -8
- data/fastlane/lib/fastlane/actions/appetize_viewing_url_generator.rb +0 -11
- data/fastlane/lib/fastlane/actions/appium.rb +40 -65
- data/fastlane/lib/fastlane/actions/appledoc.rb +46 -46
- data/fastlane/lib/fastlane/actions/apteligent.rb +3 -2
- data/fastlane/lib/fastlane/actions/artifactory.rb +41 -9
- data/fastlane/lib/fastlane/actions/automatic_code_signing.rb +7 -13
- data/fastlane/lib/fastlane/actions/backup_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/backup_xcarchive.rb +3 -3
- data/fastlane/lib/fastlane/actions/badge.rb +9 -13
- data/fastlane/lib/fastlane/actions/build_and_upload_to_appetize.rb +11 -5
- data/fastlane/lib/fastlane/actions/build_app.rb +7 -1
- data/fastlane/lib/fastlane/actions/bundle_install.rb +8 -10
- data/fastlane/lib/fastlane/actions/carthage.rb +22 -14
- data/fastlane/lib/fastlane/actions/changelog_from_git_commits.rb +8 -17
- data/fastlane/lib/fastlane/actions/chatwork.rb +3 -2
- data/fastlane/lib/fastlane/actions/check_app_store_metadata.rb +9 -1
- data/fastlane/lib/fastlane/actions/clean_build_artifacts.rb +0 -1
- data/fastlane/lib/fastlane/actions/clean_cocoapods_cache.rb +0 -1
- data/fastlane/lib/fastlane/actions/clipboard.rb +3 -6
- data/fastlane/lib/fastlane/actions/cloc.rb +9 -13
- data/fastlane/lib/fastlane/actions/cocoapods.rb +23 -15
- data/fastlane/lib/fastlane/actions/commit_github_file.rb +12 -4
- data/fastlane/lib/fastlane/actions/commit_version_bump.rb +6 -7
- data/fastlane/lib/fastlane/actions/copy_artifacts.rb +3 -4
- data/fastlane/lib/fastlane/actions/crashlytics.rb +7 -11
- data/fastlane/lib/fastlane/actions/create_app_on_managed_play_store.rb +70 -76
- data/fastlane/lib/fastlane/actions/create_keychain.rb +13 -11
- data/fastlane/lib/fastlane/actions/create_pull_request.rb +15 -9
- data/fastlane/lib/fastlane/actions/create_xcframework.rb +123 -0
- data/fastlane/lib/fastlane/actions/danger.rb +13 -12
- data/fastlane/lib/fastlane/actions/deploygate.rb +1 -2
- data/fastlane/lib/fastlane/actions/docs/build_app.md +1 -1
- data/fastlane/lib/fastlane/actions/docs/capture_android_screenshots.md +27 -28
- data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +7 -3
- data/fastlane/lib/fastlane/actions/docs/create_app_online.md +171 -67
- data/fastlane/lib/fastlane/actions/docs/frame_screenshots.md +20 -3
- data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +9 -3
- data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +39 -16
- data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +2 -1
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +15 -5
- data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +142 -0
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +8 -20
- data/fastlane/lib/fastlane/actions/dsym_zip.rb +1 -1
- data/fastlane/lib/fastlane/actions/ensure_env_vars.rb +2 -6
- data/fastlane/lib/fastlane/actions/ensure_git_branch.rb +0 -1
- data/fastlane/lib/fastlane/actions/ensure_git_status_clean.rb +3 -4
- data/fastlane/lib/fastlane/actions/ensure_no_debug_code.rb +3 -5
- data/fastlane/lib/fastlane/actions/ensure_xcode_version.rb +1 -2
- data/fastlane/lib/fastlane/actions/environment_variable.rb +13 -21
- data/fastlane/lib/fastlane/actions/erb.rb +2 -5
- data/fastlane/lib/fastlane/actions/get_build_number_repository.rb +1 -1
- data/fastlane/lib/fastlane/actions/get_certificates.rb +5 -1
- data/fastlane/lib/fastlane/actions/get_github_release.rb +11 -1
- data/fastlane/lib/fastlane/actions/get_ipa_info_plist_value.rb +0 -1
- data/fastlane/lib/fastlane/actions/get_managed_play_store_publishing_rights.rb +32 -35
- data/fastlane/lib/fastlane/actions/get_provisioning_profile.rb +9 -1
- data/fastlane/lib/fastlane/actions/get_push_certificate.rb +1 -1
- data/fastlane/lib/fastlane/actions/get_version_number.rb +17 -10
- data/fastlane/lib/fastlane/actions/git_add.rb +5 -10
- data/fastlane/lib/fastlane/actions/git_branch.rb +4 -10
- data/fastlane/lib/fastlane/actions/git_commit.rb +12 -10
- data/fastlane/lib/fastlane/actions/git_pull.rb +4 -10
- data/fastlane/lib/fastlane/actions/git_remote_branch.rb +57 -0
- data/fastlane/lib/fastlane/actions/git_submodule_update.rb +16 -8
- data/fastlane/lib/fastlane/actions/git_tag_exists.rb +4 -0
- data/fastlane/lib/fastlane/actions/github_api.rb +17 -8
- data/fastlane/lib/fastlane/actions/gradle.rb +12 -20
- data/fastlane/lib/fastlane/actions/hg_commit_version_bump.rb +1 -1
- data/fastlane/lib/fastlane/actions/hg_push.rb +1 -1
- data/fastlane/lib/fastlane/actions/hipchat.rb +6 -6
- data/fastlane/lib/fastlane/actions/hockey.rb +5 -12
- data/fastlane/lib/fastlane/actions/ifttt.rb +3 -6
- data/fastlane/lib/fastlane/actions/import_from_git.rb +7 -9
- data/fastlane/lib/fastlane/actions/increment_build_number.rb +8 -2
- data/fastlane/lib/fastlane/actions/install_on_device.rb +3 -6
- data/fastlane/lib/fastlane/actions/install_provisioning_profile.rb +4 -0
- data/fastlane/lib/fastlane/actions/installr.rb +22 -25
- data/fastlane/lib/fastlane/actions/ipa.rb +2 -2
- data/fastlane/lib/fastlane/actions/jazzy.rb +11 -8
- data/fastlane/lib/fastlane/actions/jira.rb +61 -14
- data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +6 -6
- data/fastlane/lib/fastlane/actions/lcov.rb +0 -4
- data/fastlane/lib/fastlane/actions/mailgun.rb +21 -27
- data/fastlane/lib/fastlane/actions/make_changelog_from_jenkins.rb +1 -1
- data/fastlane/lib/fastlane/actions/match_nuke.rb +59 -0
- data/fastlane/lib/fastlane/actions/modify_services.rb +59 -24
- data/fastlane/lib/fastlane/actions/nexus_upload.rb +3 -2
- data/fastlane/lib/fastlane/actions/notarize.rb +98 -54
- 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/oclint.rb +15 -14
- data/fastlane/lib/fastlane/actions/onesignal.rb +13 -3
- data/fastlane/lib/fastlane/actions/pod_push.rb +9 -2
- data/fastlane/lib/fastlane/actions/podio_item.rb +0 -7
- data/fastlane/lib/fastlane/actions/prompt.rb +3 -4
- data/fastlane/lib/fastlane/actions/push_git_tags.rb +1 -1
- data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +14 -3
- data/fastlane/lib/fastlane/actions/puts.rb +1 -2
- data/fastlane/lib/fastlane/actions/register_device.rb +10 -13
- data/fastlane/lib/fastlane/actions/register_devices.rb +11 -14
- data/fastlane/lib/fastlane/actions/reset_git_repo.rb +5 -8
- data/fastlane/lib/fastlane/actions/reset_simulator_contents.rb +0 -2
- data/fastlane/lib/fastlane/actions/resign.rb +2 -9
- data/fastlane/lib/fastlane/actions/restore_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/rsync.rb +3 -6
- data/fastlane/lib/fastlane/actions/run_tests.rb +1 -1
- data/fastlane/lib/fastlane/actions/s3.rb +1 -1
- data/fastlane/lib/fastlane/actions/say.rb +2 -3
- data/fastlane/lib/fastlane/actions/scp.rb +4 -10
- data/fastlane/lib/fastlane/actions/set_build_number_repository.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_changelog.rb +10 -13
- data/fastlane/lib/fastlane/actions/set_github_release.rb +23 -16
- data/fastlane/lib/fastlane/actions/set_info_plist_value.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_pod_key.rb +3 -4
- data/fastlane/lib/fastlane/actions/setup_ci.rb +1 -2
- data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +1 -1
- data/fastlane/lib/fastlane/actions/setup_jenkins.rb +7 -12
- data/fastlane/lib/fastlane/actions/setup_travis.rb +1 -1
- data/fastlane/lib/fastlane/actions/sh.rb +2 -4
- data/fastlane/lib/fastlane/actions/slack.rb +164 -145
- data/fastlane/lib/fastlane/actions/slather.rb +5 -21
- data/fastlane/lib/fastlane/actions/sonar.rb +12 -19
- data/fastlane/lib/fastlane/actions/sourcedocs.rb +128 -0
- data/fastlane/lib/fastlane/actions/spaceship_logs.rb +1 -1
- data/fastlane/lib/fastlane/actions/splunkmint.rb +2 -2
- data/fastlane/lib/fastlane/actions/spm.rb +8 -2
- data/fastlane/lib/fastlane/actions/ssh.rb +5 -10
- data/fastlane/lib/fastlane/actions/swiftlint.rb +21 -19
- data/fastlane/lib/fastlane/actions/sync_code_signing.rb +6 -1
- data/fastlane/lib/fastlane/actions/testfairy.rb +0 -1
- data/fastlane/lib/fastlane/actions/tryouts.rb +2 -3
- data/fastlane/lib/fastlane/actions/twitter.rb +0 -5
- data/fastlane/lib/fastlane/actions/unlock_keychain.rb +3 -3
- data/fastlane/lib/fastlane/actions/update_app_group_identifiers.rb +1 -4
- data/fastlane/lib/fastlane/actions/update_code_signing_settings.rb +8 -15
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +31 -10
- data/fastlane/lib/fastlane/actions/update_icloud_container_identifiers.rb +1 -4
- data/fastlane/lib/fastlane/actions/update_info_plist.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_keychain_access_groups.rb +1 -4
- data/fastlane/lib/fastlane/actions/update_plist.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +3 -4
- data/fastlane/lib/fastlane/actions/update_urban_airship_configuration.rb +0 -1
- data/fastlane/lib/fastlane/actions/update_url_schemes.rb +15 -26
- data/fastlane/lib/fastlane/actions/upload_app_privacy_details_to_app_store.rb +290 -0
- data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +8 -7
- data/fastlane/lib/fastlane/actions/upload_symbols_to_sentry.rb +3 -10
- data/fastlane/lib/fastlane/actions/upload_to_app_store.rb +8 -4
- data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +7 -2
- data/fastlane/lib/fastlane/actions/validate_play_store_json_key.rb +40 -44
- data/fastlane/lib/fastlane/actions/version_get_podspec.rb +1 -2
- data/fastlane/lib/fastlane/actions/xcode_install.rb +8 -5
- data/fastlane/lib/fastlane/actions/xcode_server_get_assets.rb +3 -3
- data/fastlane/lib/fastlane/actions/xcodebuild.rb +5 -5
- data/fastlane/lib/fastlane/cli_tools_distributor.rb +6 -3
- data/fastlane/lib/fastlane/commands_generator.rb +2 -1
- data/fastlane/lib/fastlane/documentation/actions_list.rb +2 -2
- data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
- data/fastlane/lib/fastlane/documentation/markdown_docs_generator.rb +1 -1
- data/fastlane/lib/fastlane/environment_printer.rb +1 -0
- data/fastlane/lib/fastlane/erb_template_helper.rb +7 -1
- data/fastlane/lib/fastlane/fast_file.rb +19 -7
- data/fastlane/lib/fastlane/fastlane_require.rb +7 -1
- data/fastlane/lib/fastlane/features.rb +1 -1
- data/fastlane/lib/fastlane/helper/adb_helper.rb +1 -1
- data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +4 -4
- data/fastlane/lib/fastlane/helper/gem_helper.rb +2 -2
- data/fastlane/lib/fastlane/helper/git_helper.rb +34 -5
- data/fastlane/lib/fastlane/lane_manager.rb +3 -2
- data/fastlane/lib/fastlane/notification/slack.rb +56 -0
- data/fastlane/lib/fastlane/plugins/plugin_fetcher.rb +1 -2
- data/fastlane/lib/fastlane/plugins/plugin_info.rb +2 -2
- data/fastlane/lib/fastlane/plugins/plugin_info_collector.rb +1 -2
- data/fastlane/lib/fastlane/plugins/plugin_manager.rb +2 -3
- data/fastlane/lib/fastlane/plugins/template/%gem_name%.gemspec.erb +7 -6
- data/fastlane/lib/fastlane/plugins/template/.circleci/config.yml +1 -1
- data/fastlane/lib/fastlane/plugins/template/.github/workflows/test.yml +1 -1
- data/fastlane/lib/fastlane/plugins/template/.rubocop.yml +31 -35
- data/fastlane/lib/fastlane/plugins/template/spec/spec_helper.rb.erb +1 -1
- data/fastlane/lib/fastlane/setup/setup.rb +23 -10
- data/fastlane/lib/fastlane/setup/setup_ios.rb +3 -3
- data/fastlane/lib/fastlane/swift_fastlane_api_generator.rb +3 -0
- data/fastlane/lib/fastlane/swift_fastlane_function.rb +44 -16
- data/fastlane/lib/fastlane/swift_runner_upgrader.rb +2 -0
- data/fastlane/lib/fastlane/version.rb +2 -2
- data/fastlane/swift/Actions.swift +1 -1
- data/fastlane/swift/Appfile.swift +1 -1
- data/fastlane/swift/ArgumentProcessor.swift +1 -1
- data/fastlane/swift/ControlCommand.swift +1 -1
- data/fastlane/swift/Deliverfile.swift +2 -2
- data/fastlane/swift/DeliverfileProtocol.swift +23 -23
- data/fastlane/swift/Fastfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +7965 -4213
- data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.pbxproj +4 -0
- data/fastlane/swift/Gymfile.swift +2 -2
- data/fastlane/swift/GymfileProtocol.swift +15 -3
- data/fastlane/swift/LaneFileProtocol.swift +12 -6
- data/fastlane/swift/MainProcess.swift +3 -1
- data/fastlane/swift/Matchfile.swift +2 -2
- data/fastlane/swift/MatchfileProtocol.swift +4 -4
- data/fastlane/swift/OptionalConfigValue.swift +101 -0
- data/fastlane/swift/Plugins.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +2 -2
- data/fastlane/swift/PrecheckfileProtocol.swift +8 -4
- data/fastlane/swift/RubyCommand.swift +2 -2
- data/fastlane/swift/RubyCommandable.swift +1 -1
- data/fastlane/swift/Runner.swift +3 -3
- data/fastlane/swift/RunnerArgument.swift +1 -1
- data/fastlane/swift/Scanfile.swift +2 -2
- data/fastlane/swift/ScanfileProtocol.swift +34 -2
- data/fastlane/swift/Screengrabfile.swift +2 -2
- data/fastlane/swift/ScreengrabfileProtocol.swift +5 -5
- data/fastlane/swift/Snapshotfile.swift +2 -2
- data/fastlane/swift/SnapshotfileProtocol.swift +19 -3
- data/fastlane/swift/SocketClient.swift +4 -3
- data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
- data/fastlane/swift/SocketResponse.swift +5 -3
- data/fastlane/swift/formatting/Brewfile.lock.json +24 -16
- data/fastlane/swift/main.swift +1 -1
- data/fastlane/swift/upgrade_manifest.json +1 -1
- data/fastlane_core/lib/fastlane_core.rb +22 -20
- data/fastlane_core/lib/fastlane_core/build_watcher.rb +89 -12
- data/fastlane_core/lib/fastlane_core/cert_checker.rb +12 -7
- data/fastlane_core/lib/fastlane_core/clipboard.rb +20 -0
- data/fastlane_core/lib/fastlane_core/command_executor.rb +3 -9
- data/fastlane_core/lib/fastlane_core/configuration/commander_generator.rb +6 -1
- data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +41 -3
- data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +14 -8
- data/fastlane_core/lib/fastlane_core/device_manager.rb +1 -1
- data/fastlane_core/lib/fastlane_core/helper.rb +78 -14
- data/fastlane_core/lib/fastlane_core/ipa_file_analyser.rb +41 -16
- data/fastlane_core/lib/fastlane_core/ipa_upload_package_builder.rb +3 -2
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +20 -15
- data/fastlane_core/lib/fastlane_core/keychain_importer.rb +1 -1
- data/fastlane_core/lib/fastlane_core/languages.rb +2 -2
- data/fastlane_core/lib/fastlane_core/pkg_upload_package_builder.rb +3 -2
- data/fastlane_core/lib/fastlane_core/print_table.rb +5 -3
- data/fastlane_core/lib/fastlane_core/project.rb +48 -28
- data/fastlane_core/lib/fastlane_core/provisioning_profile.rb +3 -1
- data/{deliver/lib/deliver → fastlane_core/lib/fastlane_core}/queue_worker.rb +4 -4
- data/fastlane_core/lib/fastlane_core/swag.rb +1 -1
- data/fastlane_core/lib/fastlane_core/ui/disable_colors.rb +8 -0
- data/fastlane_core/lib/fastlane_core/ui/help.erb +35 -0
- data/fastlane_core/lib/fastlane_core/ui/help_formatter.rb +16 -0
- data/fastlane_core/lib/fastlane_core/ui/implementations/shell.rb +16 -2
- data/fastlane_core/lib/fastlane_core/ui/interface.rb +1 -1
- data/fastlane_core/lib/fastlane_core/update_checker/update_checker.rb +2 -2
- data/frameit/lib/frameit/commands_generator.rb +2 -1
- data/frameit/lib/frameit/config_parser.rb +2 -2
- data/frameit/lib/frameit/device_types.rb +7 -1
- data/frameit/lib/frameit/frame_downloader.rb +2 -1
- data/gym/lib/gym/code_signing_mapping.rb +3 -3
- data/gym/lib/gym/commands_generator.rb +2 -1
- data/gym/lib/gym/error_handler.rb +8 -0
- data/gym/lib/gym/generators/build_command_generator.rb +3 -0
- data/gym/lib/gym/generators/package_command_generator.rb +4 -0
- data/gym/lib/gym/generators/package_command_generator_xcode7.rb +21 -15
- data/gym/lib/gym/options.rb +19 -3
- data/gym/lib/gym/runner.rb +15 -4
- data/match/lib/match/change_password.rb +3 -3
- data/match/lib/match/commands_generator.rb +2 -1
- data/match/lib/match/encryption/interface.rb +1 -1
- data/match/lib/match/encryption/openssl.rb +5 -3
- data/match/lib/match/importer.rb +9 -10
- data/match/lib/match/migrate.rb +2 -3
- data/match/lib/match/module.rb +2 -1
- data/match/lib/match/nuke.rb +19 -15
- data/match/lib/match/options.rb +4 -3
- data/match/lib/match/runner.rb +3 -4
- data/match/lib/match/spaceship_ensure.rb +3 -0
- data/match/lib/match/storage/git_storage.rb +14 -10
- data/match/lib/match/storage/google_cloud_storage.rb +2 -2
- data/match/lib/match/storage/s3_storage.rb +2 -2
- data/pem/lib/pem/commands_generator.rb +2 -1
- data/pilot/lib/pilot.rb +0 -1
- data/pilot/lib/pilot/build_manager.rb +41 -15
- data/pilot/lib/pilot/commands_generator.rb +2 -1
- data/pilot/lib/pilot/manager.rb +11 -8
- data/pilot/lib/pilot/options.rb +18 -9
- data/pilot/lib/pilot/tester_exporter.rb +0 -1
- data/pilot/lib/pilot/tester_manager.rb +0 -1
- data/precheck/lib/precheck/commands_generator.rb +2 -1
- data/precheck/lib/precheck/options.rb +9 -3
- data/precheck/lib/precheck/rule_processor.rb +1 -1
- data/precheck/lib/precheck/runner.rb +14 -9
- data/produce/lib/produce/commands_generator.rb +101 -28
- data/produce/lib/produce/developer_center.rb +42 -4
- data/produce/lib/produce/options.rb +1 -1
- data/produce/lib/produce/service.rb +270 -179
- data/scan/lib/scan/commands_generator.rb +2 -1
- data/scan/lib/scan/detect_values.rb +7 -2
- data/scan/lib/scan/module.rb +4 -0
- data/scan/lib/scan/options.rb +46 -1
- data/scan/lib/scan/runner.rb +88 -3
- data/scan/lib/scan/slack_poster.rb +4 -1
- data/scan/lib/scan/test_command_generator.rb +13 -8
- data/screengrab/lib/screengrab/android_environment.rb +5 -53
- data/screengrab/lib/screengrab/commands_generator.rb +2 -1
- data/screengrab/lib/screengrab/dependency_checker.rb +0 -20
- data/screengrab/lib/screengrab/options.rb +5 -2
- data/screengrab/lib/screengrab/runner.rb +111 -108
- data/sigh/lib/assets/resign.sh +81 -61
- data/sigh/lib/sigh/commands_generator.rb +2 -1
- data/sigh/lib/sigh/download_all.rb +4 -8
- data/sigh/lib/sigh/options.rb +3 -2
- data/sigh/lib/sigh/runner.rb +9 -9
- data/snapshot/lib/assets/SnapfileTemplate +3 -2
- data/snapshot/lib/assets/SnapfileTemplate.swift +2 -1
- data/snapshot/lib/assets/SnapshotHelper.swift +20 -12
- data/snapshot/lib/snapshot/commands_generator.rb +3 -1
- data/snapshot/lib/snapshot/options.rb +22 -2
- data/snapshot/lib/snapshot/reports_generator.rb +7 -1
- data/snapshot/lib/snapshot/simulator_launchers/launcher_configuration.rb +2 -0
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher.rb +1 -1
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +10 -5
- data/snapshot/lib/snapshot/test_command_generator.rb +18 -4
- data/snapshot/lib/snapshot/test_command_generator_base.rb +3 -1
- data/snapshot/lib/snapshot/test_command_generator_xcode_8.rb +1 -1
- data/snapshot/lib/snapshot/update.rb +1 -1
- data/spaceship/README.md +4 -14
- data/spaceship/lib/spaceship/base.rb +2 -2
- data/spaceship/lib/spaceship/client.rb +47 -29
- data/spaceship/lib/spaceship/commands_generator.rb +4 -2
- data/spaceship/lib/spaceship/connect_api.rb +6 -0
- data/spaceship/lib/spaceship/connect_api/api_client.rb +67 -9
- data/spaceship/lib/spaceship/connect_api/model.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +39 -6
- data/spaceship/lib/spaceship/connect_api/models/app.rb +95 -55
- data/spaceship/lib/spaceship/connect_api/models/app_data_usage.rb +59 -0
- data/spaceship/lib/spaceship/connect_api/models/app_data_usage_category.rb +65 -0
- data/spaceship/lib/spaceship/connect_api/models/app_data_usage_data_protection.rb +27 -0
- data/spaceship/lib/spaceship/connect_api/models/app_data_usage_grouping.rb +18 -0
- data/spaceship/lib/spaceship/connect_api/models/app_data_usage_purposes.rb +37 -0
- data/spaceship/lib/spaceship/connect_api/models/app_data_usages_publish_state.rb +36 -0
- data/spaceship/lib/spaceship/connect_api/models/app_info.rb +26 -10
- data/spaceship/lib/spaceship/connect_api/models/app_info_localization.rb +8 -4
- data/spaceship/lib/spaceship/connect_api/models/app_preview.rb +15 -11
- data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +18 -9
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +10 -8
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +20 -11
- data/spaceship/lib/spaceship/connect_api/models/app_store_review_attachment.rb +7 -5
- data/spaceship/lib/spaceship/connect_api/models/app_store_review_detail.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +62 -38
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +27 -14
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_submission.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/beta_app_review_submission.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/beta_feedback.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +29 -3
- data/spaceship/lib/spaceship/connect_api/models/beta_tester.rb +15 -9
- data/spaceship/lib/spaceship/connect_api/models/build.rb +34 -17
- data/spaceship/lib/spaceship/connect_api/models/build_beta_detail.rb +4 -0
- data/spaceship/lib/spaceship/connect_api/models/build_delivery.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +41 -6
- data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +86 -21
- data/spaceship/lib/spaceship/connect_api/models/certificate.rb +12 -8
- data/spaceship/lib/spaceship/connect_api/models/device.rb +36 -4
- data/spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/profile.rb +18 -8
- data/spaceship/lib/spaceship/connect_api/models/reset_ratings_request.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/sandbox_tester.rb +9 -6
- data/spaceship/lib/spaceship/connect_api/models/territory.rb +3 -2
- data/spaceship/lib/spaceship/connect_api/models/user.rb +6 -4
- data/spaceship/lib/spaceship/connect_api/models/user_invitation.rb +22 -6
- data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +99 -2
- data/spaceship/lib/spaceship/connect_api/response.rb +3 -1
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +50 -0
- data/spaceship/lib/spaceship/connect_api/token.rb +15 -3
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +122 -2
- data/spaceship/lib/spaceship/errors.rb +19 -0
- data/spaceship/lib/spaceship/playground.rb +2 -2
- data/spaceship/lib/spaceship/spaceauth_runner.rb +38 -15
- data/spaceship/lib/spaceship/tunes/iap_detail.rb +1 -1
- data/spaceship/lib/spaceship/tunes/members.rb +1 -1
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +4 -4
- data/spaceship/lib/spaceship/two_step_or_factor_client.rb +59 -33
- data/spaceship/lib/spaceship/ui.rb +2 -2
- data/spaceship/lib/spaceship/upgrade_2fa_later_client.rb +91 -0
- data/supply/lib/supply.rb +1 -1
- data/supply/lib/supply/client.rb +5 -3
- data/supply/lib/supply/commands_generator.rb +2 -1
- data/supply/lib/supply/options.rb +3 -3
- data/supply/lib/supply/uploader.rb +6 -4
- metadata +125 -93
- data/pilot/lib/pilot/features.rb +0 -0
- data/pilot/lib/pilot/tester_util.rb +0 -0
data/pilot/lib/pilot/manager.rb
CHANGED
@@ -13,28 +13,31 @@ module Pilot
|
|
13
13
|
def start(options, should_login: true)
|
14
14
|
return if @config # to not login multiple times
|
15
15
|
@config = options
|
16
|
-
|
16
|
+
|
17
|
+
# we will always start with App Store Connect API login 'if possible'
|
18
|
+
# else fallback to 'should_login' param for 'apple_id' login
|
19
|
+
login if options[:api_key_path] || options[:api_key] || should_login
|
17
20
|
end
|
18
21
|
|
19
22
|
def login
|
20
|
-
if api_token
|
23
|
+
if (api_token = Spaceship::ConnectAPI::Token.from(hash: config[:api_key], filepath: config[:api_key_path]))
|
21
24
|
UI.message("Creating authorization token for App Store Connect API")
|
22
25
|
Spaceship::ConnectAPI.token = api_token
|
26
|
+
elsif !Spaceship::ConnectAPI.token.nil?
|
27
|
+
UI.message("Using existing authorization token for App Store Connect API")
|
23
28
|
else
|
24
29
|
config[:username] ||= CredentialsManager::AppfileConfig.try_fetch_value(:apple_id)
|
25
30
|
|
31
|
+
# Username is now optional since addition of App Store Connect API Key
|
32
|
+
# Force asking for username to prompt user if not already set
|
33
|
+
config.fetch(:username, force_ask: true)
|
34
|
+
|
26
35
|
UI.message("Login to App Store Connect (#{config[:username]})")
|
27
36
|
Spaceship::ConnectAPI.login(config[:username], use_portal: false, use_tunes: true, tunes_team_id: config[:team_id], team_name: config[:team_name])
|
28
37
|
UI.message("Login successful")
|
29
38
|
end
|
30
39
|
end
|
31
40
|
|
32
|
-
def api_token
|
33
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(config[:api_key]) if config[:api_key]
|
34
|
-
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(config[:api_key_path]) if config[:api_key_path]
|
35
|
-
return @api_token
|
36
|
-
end
|
37
|
-
|
38
41
|
# The app object we're currently using
|
39
42
|
def app
|
40
43
|
@app_id ||= fetch_app_id
|
data/pilot/lib/pilot/options.rb
CHANGED
@@ -11,7 +11,7 @@ module Pilot
|
|
11
11
|
|
12
12
|
[
|
13
13
|
FastlaneCore::ConfigItem.new(key: :api_key_path,
|
14
|
-
|
14
|
+
env_names: ["PILOT_API_KEY_PATH", "APP_STORE_CONNECT_API_KEY_PATH"],
|
15
15
|
description: "Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)",
|
16
16
|
optional: true,
|
17
17
|
conflicting_options: [:username],
|
@@ -19,7 +19,7 @@ module Pilot
|
|
19
19
|
UI.user_error!("Couldn't find API key JSON file at path '#{value}'") unless File.exist?(value)
|
20
20
|
end),
|
21
21
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
22
|
-
|
22
|
+
env_names: ["PILOT_API_KEY", "APP_STORE_CONNECT_API_KEY"],
|
23
23
|
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#use-return-value-and-pass-in-as-an-option)",
|
24
24
|
type: Hash,
|
25
25
|
optional: true,
|
@@ -31,6 +31,7 @@ module Pilot
|
|
31
31
|
short_option: "-u",
|
32
32
|
env_name: "PILOT_USERNAME",
|
33
33
|
description: "Your Apple ID Username",
|
34
|
+
optional: true,
|
34
35
|
default_value: user,
|
35
36
|
default_value_dynamic: true),
|
36
37
|
FastlaneCore::ConfigItem.new(key: :app_identifier,
|
@@ -88,7 +89,7 @@ module Pilot
|
|
88
89
|
type: Boolean,
|
89
90
|
env_name: "DEMO_ACCOUNT_REQUIRED",
|
90
91
|
description: "Do you need a demo account when Apple does review?",
|
91
|
-
|
92
|
+
optional: true),
|
92
93
|
FastlaneCore::ConfigItem.new(key: :beta_app_review_info,
|
93
94
|
type: Hash,
|
94
95
|
env_name: "PILOT_BETA_APP_REVIEW_INFO",
|
@@ -177,13 +178,13 @@ module Pilot
|
|
177
178
|
FastlaneCore::ConfigItem.new(key: :distribute_external,
|
178
179
|
is_string: false,
|
179
180
|
env_name: "PILOT_DISTRIBUTE_EXTERNAL",
|
180
|
-
description: "Should the build be distributed to external testers?",
|
181
|
+
description: "Should the build be distributed to external testers? If set to true, use of `groups` option is required",
|
181
182
|
default_value: false),
|
182
183
|
FastlaneCore::ConfigItem.new(key: :notify_external_testers,
|
183
184
|
is_string: false,
|
184
185
|
env_name: "PILOT_NOTIFY_EXTERNAL_TESTERS",
|
185
|
-
description: "Should notify external testers?",
|
186
|
-
|
186
|
+
description: "Should notify external testers? (Not setting a value will use App Store Connect's default which is to notify)",
|
187
|
+
optional: true),
|
187
188
|
FastlaneCore::ConfigItem.new(key: :app_version,
|
188
189
|
env_name: "PILOT_APP_VERSION",
|
189
190
|
description: "The version number of the application build to distribute. If the version number is not specified, then the most recent build uploaded to TestFlight will be distributed. If specified, the most recent build for the version number will be distributed",
|
@@ -226,7 +227,7 @@ module Pilot
|
|
226
227
|
FastlaneCore::ConfigItem.new(key: :groups,
|
227
228
|
short_option: "-g",
|
228
229
|
env_name: "PILOT_GROUPS",
|
229
|
-
description: "Associate tester to one group or more by group name / group id. E.g. `-g \"Team 1\",\"Team 2\"`",
|
230
|
+
description: "Associate tester to one group or more by group name / group id. E.g. `-g \"Team 1\",\"Team 2\"` This is required when `distribute_external` option is set to true or when we want to add a tester to one or more external testing groups ",
|
230
231
|
optional: true,
|
231
232
|
type: Array,
|
232
233
|
verify_block: proc do |value|
|
@@ -268,12 +269,12 @@ module Pilot
|
|
268
269
|
verify_block: proc do |value|
|
269
270
|
ENV["FASTLANE_TEAM_ID"] = value.to_s
|
270
271
|
end),
|
271
|
-
# rubocop:disable
|
272
|
+
# rubocop:disable Layout/LineLength
|
272
273
|
FastlaneCore::ConfigItem.new(key: :itc_provider,
|
273
274
|
env_name: "PILOT_ITC_PROVIDER",
|
274
275
|
description: "The provider short name to be used with the iTMSTransporter to identify your team. This value will override the automatically detected provider short name. To get provider short name run `pathToXcode.app/Contents/Applications/Application\\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off`. The short names of providers should be listed in the second column",
|
275
276
|
optional: true),
|
276
|
-
# rubocop:enable
|
277
|
+
# rubocop:enable Layout/LineLength
|
277
278
|
|
278
279
|
# waiting and uploaded build
|
279
280
|
FastlaneCore::ConfigItem.new(key: :wait_processing_interval,
|
@@ -285,6 +286,14 @@ module Pilot
|
|
285
286
|
verify_block: proc do |value|
|
286
287
|
UI.user_error!("Please enter a valid positive number of seconds") unless value.to_i > 0
|
287
288
|
end),
|
289
|
+
FastlaneCore::ConfigItem.new(key: :wait_processing_timeout_duration,
|
290
|
+
env_name: "PILOT_WAIT_PROCESSING_TIMEOUT_DURATION",
|
291
|
+
description: "Timeout duration in seconds to wait for App Store Connect processing. If set, after exceeding timeout duration, this will `force stop` to wait for App Store Connect processing and exit with exception",
|
292
|
+
optional: true,
|
293
|
+
type: Integer,
|
294
|
+
verify_block: proc do |value|
|
295
|
+
UI.user_error!("Please enter a valid positive number of seconds") unless value.to_i > 0
|
296
|
+
end),
|
288
297
|
FastlaneCore::ConfigItem.new(key: :wait_for_uploaded_build,
|
289
298
|
env_name: "PILOT_WAIT_FOR_UPLOADED_BUILD",
|
290
299
|
deprecated: "No longer needed with the transition over to the App Store Connect API",
|
@@ -4,6 +4,7 @@ require "fastlane_core/configuration/commander_generator"
|
|
4
4
|
require "fastlane_core/configuration/configuration"
|
5
5
|
require "fastlane_core/helper"
|
6
6
|
require "fastlane/version"
|
7
|
+
require 'fastlane_core/ui/help_formatter'
|
7
8
|
|
8
9
|
require_relative 'module'
|
9
10
|
require_relative 'options'
|
@@ -26,7 +27,7 @@ module Precheck
|
|
26
27
|
program :help, "Author", "Joshua Liebowitz <taquitos@gmail.com>, @taquitos"
|
27
28
|
program :help, "Website", "https://fastlane.tools"
|
28
29
|
program :help, "Documentation", "https://docs.fastlane.tools/actions/precheck/"
|
29
|
-
program :help_formatter,
|
30
|
+
program :help_formatter, FastlaneCore::HelpFormatter
|
30
31
|
|
31
32
|
global_option("--verbose") { FastlaneCore::Globals.verbose = true }
|
32
33
|
|
@@ -26,7 +26,7 @@ module Precheck
|
|
26
26
|
|
27
27
|
[
|
28
28
|
FastlaneCore::ConfigItem.new(key: :api_key_path,
|
29
|
-
|
29
|
+
env_names: ["PRECHECK_API_KEY_PATH", "APP_STORE_CONNECT_API_KEY_PATH"],
|
30
30
|
description: "Path to your App Store Connect API Key JSON file (https://docs.fastlane.tools/app-store-connect-api/#using-fastlane-api-key-json-file)",
|
31
31
|
optional: true,
|
32
32
|
conflicting_options: [:username],
|
@@ -34,7 +34,7 @@ module Precheck
|
|
34
34
|
UI.user_error!("Couldn't find API key JSON file at path '#{value}'") unless File.exist?(value)
|
35
35
|
end),
|
36
36
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
37
|
-
|
37
|
+
env_names: ["PRECHECK_API_KEY", "APP_STORE_CONNECT_API_KEY"],
|
38
38
|
description: "Your App Store Connect API Key information (https://docs.fastlane.tools/app-store-connect-api/#use-return-value-and-pass-in-as-an-option)",
|
39
39
|
type: Hash,
|
40
40
|
optional: true,
|
@@ -52,6 +52,7 @@ module Precheck
|
|
52
52
|
short_option: "-u",
|
53
53
|
env_name: "PRECHECK_USERNAME",
|
54
54
|
description: "Your Apple ID Username",
|
55
|
+
optional: true,
|
55
56
|
default_value: user,
|
56
57
|
default_value_dynamic: true),
|
57
58
|
FastlaneCore::ConfigItem.new(key: :team_id,
|
@@ -97,7 +98,12 @@ module Precheck
|
|
97
98
|
description: "Should check in-app purchases?",
|
98
99
|
is_string: false,
|
99
100
|
optional: true,
|
100
|
-
default_value: true)
|
101
|
+
default_value: true),
|
102
|
+
FastlaneCore::ConfigItem.new(key: :use_live,
|
103
|
+
env_name: "PRECHECK_USE_LIVE",
|
104
|
+
description: "Should force check live app?",
|
105
|
+
is_string: false,
|
106
|
+
default_value: false)
|
101
107
|
] + rules
|
102
108
|
end
|
103
109
|
end
|
@@ -130,7 +130,7 @@ module Precheck
|
|
130
130
|
items = []
|
131
131
|
|
132
132
|
# App info localizations
|
133
|
-
app_info = app.
|
133
|
+
app_info = Precheck.config[:use_live] ? app.fetch_live_app_info : app.fetch_latest_app_info
|
134
134
|
app_info_localizations = app_info.get_app_info_localizations
|
135
135
|
app_info_localizations.each do |localization|
|
136
136
|
items << collect_text_items_from_language_item(locale: localization.locale,
|
@@ -18,6 +18,14 @@ module Precheck
|
|
18
18
|
hide_keys: [:output_path],
|
19
19
|
title: "Summary for precheck #{Fastlane::VERSION}")
|
20
20
|
|
21
|
+
api_token = if (token = Spaceship::ConnectAPI::Token.from(hash: Precheck.config[:api_key], filepath: Precheck.config[:api_key_path]))
|
22
|
+
UI.message("Creating authorization token for App Store Connect API")
|
23
|
+
token
|
24
|
+
elsif (token = Spaceship::ConnectAPI.token)
|
25
|
+
UI.message("Using existing authorization token for App Store Connect API")
|
26
|
+
token
|
27
|
+
end
|
28
|
+
|
21
29
|
if api_token
|
22
30
|
|
23
31
|
# As of 2020-09-15, App Store Connect API does not have support for IAPs yet
|
@@ -26,12 +34,15 @@ module Precheck
|
|
26
34
|
# There is also a check in Deliver::Runner for this.
|
27
35
|
# Please remove check in Deliver when the API support IAPs.
|
28
36
|
if Precheck.config[:include_in_app_purchases]
|
29
|
-
UI.user_error!("Precheck cannot check In-app purchases with the App Store Connect API Key (yet). Exclude In-app purchases from precheck or use Apple ID login")
|
37
|
+
UI.user_error!("Precheck cannot check In-app purchases with the App Store Connect API Key (yet). Exclude In-app purchases from precheck, disable the precheck step in your build step, or use Apple ID login")
|
30
38
|
end
|
31
39
|
|
32
|
-
UI.message("Creating authorization token for App Store Connect API")
|
33
40
|
Spaceship::ConnectAPI.token = api_token
|
34
41
|
elsif Spaceship::Tunes.client.nil?
|
42
|
+
# Username is now optional since addition of App Store Connect API Key
|
43
|
+
# Force asking for username to prompt user if not already set
|
44
|
+
Precheck.config.fetch(:username, force_ask: true)
|
45
|
+
|
35
46
|
# Team selection passed though FASTLANE_ITC_TEAM_ID and FASTLANE_ITC_TEAM_NAME environment variables
|
36
47
|
# Prompts select team if multiple teams and none specified
|
37
48
|
UI.message("Starting login with user '#{Precheck.config[:username]}'")
|
@@ -71,12 +82,6 @@ module Precheck
|
|
71
82
|
return true
|
72
83
|
end
|
73
84
|
|
74
|
-
def api_token
|
75
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(Precheck.config[:api_key]) if Precheck.config[:api_key]
|
76
|
-
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(Precheck.config[:api_key_path]) if Precheck.config[:api_key_path]
|
77
|
-
return @api_token
|
78
|
-
end
|
79
|
-
|
80
85
|
def print_items_not_checked(processor_result: nil)
|
81
86
|
names = processor_result.items_not_checked.map(&:friendly_name)
|
82
87
|
UI.message("😶 Metadata fields not checked by any rule: #{names.join(', ')}".yellow) if names.length > 0
|
@@ -185,7 +190,7 @@ module Precheck
|
|
185
190
|
|
186
191
|
def latest_app_version
|
187
192
|
platform = Spaceship::ConnectAPI::Platform.map(Precheck.config[:platform])
|
188
|
-
@latest_version ||= app.
|
193
|
+
@latest_version ||= Precheck.config[:use_live] ? app.get_live_app_store_version(platform: platform) : app.get_latest_app_store_version(platform: platform)
|
189
194
|
end
|
190
195
|
|
191
196
|
# Makes sure the current App ID exists. If not, it will show an appropriate error message
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'commander'
|
2
2
|
|
3
3
|
require 'fastlane/version'
|
4
|
+
require 'fastlane_core/ui/help_formatter'
|
4
5
|
require 'fastlane_core/configuration/config_item'
|
5
6
|
require_relative 'module'
|
6
7
|
require_relative 'manager'
|
@@ -23,7 +24,7 @@ module Produce
|
|
23
24
|
program :help, 'Author', 'Felix Krause <produce@krausefx.com>'
|
24
25
|
program :help, 'Website', 'https://fastlane.tools'
|
25
26
|
program :help, 'Documentation', 'https://docs.fastlane.tools/actions/produce/'
|
26
|
-
program :help_formatter,
|
27
|
+
program :help_formatter, FastlaneCore::HelpFormatter
|
27
28
|
|
28
29
|
global_option('--verbose') { FastlaneCore::Globals.verbose = true }
|
29
30
|
global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')
|
@@ -46,29 +47,65 @@ module Produce
|
|
46
47
|
c.description = 'Enable specific Application Services for a specific app on the Apple Developer Portal'
|
47
48
|
c.example('Enable HealthKit, HomeKit and Passbook', 'fastlane produce enable_services -a com.example.app --healthkit --homekit --passbook')
|
48
49
|
|
49
|
-
c.option('--access-wifi', 'Enable Access
|
50
|
-
c.option('--app-
|
50
|
+
c.option('--access-wifi', 'Enable Access Wifi')
|
51
|
+
c.option('--app-attest', 'Enable App Attest')
|
52
|
+
c.option('--app-group', 'Enable App Group')
|
51
53
|
c.option('--apple-pay', 'Enable Apple Pay')
|
52
|
-
c.option('--auto-fill-credential', 'Enable AutoFill Credential')
|
53
54
|
c.option('--associated-domains', 'Enable Associated Domains')
|
55
|
+
c.option('--auto-fill-credential', 'Enable Auto Fill Credential')
|
56
|
+
c.option('--class-kit', 'Enable Class Kit')
|
57
|
+
c.option('--icloud STRING', String, 'Enable iCloud, suitable values are "xcode5_compatible" and "xcode6_compatible"')
|
58
|
+
c.option('--custom-network-protocol', 'Enable Custom Network Protocol')
|
54
59
|
c.option('--data-protection STRING', String, 'Enable Data Protection, suitable values are "complete", "unlessopen" and "untilfirstauth"')
|
55
|
-
c.option('--
|
56
|
-
c.option('--
|
57
|
-
c.option('--
|
60
|
+
c.option('--family-controls', 'Enable Family Controls')
|
61
|
+
c.option('--file-provider-testing-mode', 'Enable File Provider Testing Mode')
|
62
|
+
c.option('--fonts', 'Enable Fonts')
|
63
|
+
c.option('--extended-virtual-address-space', 'Enable Extended Virtual Address Space')
|
64
|
+
c.option('--game-center STRING', String, 'Enable Game Center, suitable values are "ios" and "macos"')
|
65
|
+
c.option('--health-kit', 'Enable Health Kit')
|
66
|
+
c.option('--hls-interstitial-preview', 'Enable Hls Interstitial Preview')
|
67
|
+
c.option('--home-kit', 'Enable Home Kit')
|
58
68
|
c.option('--hotspot', 'Enable Hotspot')
|
59
|
-
c.option('--
|
60
|
-
c.option('--
|
61
|
-
c.option('--
|
69
|
+
c.option('--in-app-purchase', 'Enable In App Purchase')
|
70
|
+
c.option('--inter-app-audio', 'Enable Inter App Audio')
|
71
|
+
c.option('--low-latency-hls', 'Enable Low Latency Hls')
|
72
|
+
c.option('--managed-associated-domains', 'Enable Managed Associated Domains')
|
73
|
+
c.option('--maps', 'Enable Maps')
|
62
74
|
c.option('--multipath', 'Enable Multipath')
|
63
|
-
c.option('--network-extension', 'Enable Network
|
75
|
+
c.option('--network-extension', 'Enable Network Extension')
|
64
76
|
c.option('--nfc-tag-reading', 'Enable NFC Tag Reading')
|
65
77
|
c.option('--personal-vpn', 'Enable Personal VPN')
|
66
78
|
c.option('--passbook', 'Enable Passbook (deprecated)')
|
67
|
-
c.option('--push-notification', 'Enable Push
|
68
|
-
c.option('--
|
69
|
-
c.option('--
|
79
|
+
c.option('--push-notification', 'Enable Push Notification')
|
80
|
+
c.option('--sign-in-with-apple', 'Enable Sign In With Apple')
|
81
|
+
c.option('--siri-kit', 'Enable Siri Kit')
|
82
|
+
c.option('--system-extension', 'Enable System Extension')
|
83
|
+
c.option('--user-management', 'Enable User Management')
|
84
|
+
c.option('--vpn-configuration', 'Enable Vpn Configuration (deprecated)')
|
70
85
|
c.option('--wallet', 'Enable Wallet')
|
71
|
-
c.option('--wireless-
|
86
|
+
c.option('--wireless-accessory', 'Enable Wireless Accessory')
|
87
|
+
c.option('--car-play-audio-app', 'Enable Car Play Audio App')
|
88
|
+
c.option('--car-play-messaging-app', 'Enable Car Play Messaging App')
|
89
|
+
c.option('--car-play-navigation-app', 'Enable Car Play Navigation App')
|
90
|
+
c.option('--car-play-voip-calling-app', 'Enable Car Play Voip Calling App')
|
91
|
+
c.option('--critical-alerts', 'Enable Critical Alerts')
|
92
|
+
c.option('--hotspot-helper', 'Enable Hotspot Helper')
|
93
|
+
c.option('--driver-kit', 'Enable DriverKit')
|
94
|
+
c.option('--driver-kit-endpoint-security', 'Enable DriverKit Endpoint Security')
|
95
|
+
c.option('--driver-kit-family-hid-device', 'Enable DriverKit Family HID Device')
|
96
|
+
c.option('--driver-kit-family-networking', 'Enable DriverKit Family Networking')
|
97
|
+
c.option('--driver-kit-family-serial', 'Enable DriverKit Family Serial')
|
98
|
+
c.option('--driver-kit-hid-event-service', 'Enable DriverKit HID EventService')
|
99
|
+
c.option('--driver-kit-transport-hid', 'Enable DriverKit Transport HID')
|
100
|
+
c.option('--multitasking-camera-access', 'Enable Multitasking Camera Access')
|
101
|
+
c.option('--sf-universal-link-api', 'Enable SFUniversalLink API')
|
102
|
+
c.option('--vp9-decoder', 'Enable VP9 Decoder')
|
103
|
+
c.option('--music-kit', 'Enable MusicKit')
|
104
|
+
c.option('--shazam-kit', 'Enable ShazamKit')
|
105
|
+
c.option('--communication-notifications', 'Enable Communication Notifications')
|
106
|
+
c.option('--group-activities', 'Enable Group Activities')
|
107
|
+
c.option('--health-kit-estimate-recalibration', 'Enable HealthKit Estimate Recalibration')
|
108
|
+
c.option('--time-sensitive-notifications', 'Enable Time Sensitive Notifications')
|
72
109
|
|
73
110
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
74
111
|
|
@@ -87,29 +124,65 @@ module Produce
|
|
87
124
|
c.description = 'Disable specific Application Services for a specific app on the Apple Developer Portal'
|
88
125
|
c.example('Disable HealthKit', 'fastlane produce disable_services -a com.example.app --healthkit')
|
89
126
|
|
90
|
-
c.option('--access-wifi', 'Disable Access
|
91
|
-
c.option('--app-
|
127
|
+
c.option('--access-wifi', 'Disable Access Wifi')
|
128
|
+
c.option('--app-attest', 'Disable App Attest')
|
129
|
+
c.option('--app-group', 'Disable App Group')
|
92
130
|
c.option('--apple-pay', 'Disable Apple Pay')
|
93
|
-
c.option('--auto-fill-credential', 'Disable AutoFill Credential')
|
94
131
|
c.option('--associated-domains', 'Disable Associated Domains')
|
132
|
+
c.option('--auto-fill-credential', 'Disable Auto Fill Credential')
|
133
|
+
c.option('--class-kit', 'Disable Class Kit')
|
134
|
+
c.option('--icloud', 'Disable iCloud')
|
135
|
+
c.option('--custom-network-protocol', 'Disable Custom Network Protocol')
|
95
136
|
c.option('--data-protection', 'Disable Data Protection')
|
137
|
+
c.option('--extended-virtual-address-space', 'Disable Extended Virtual Address Space')
|
138
|
+
c.option('--family-controls', 'Disable Family Controls')
|
139
|
+
c.option('--file-provider-testing-mode', 'Disable File Provider Testing Mode')
|
140
|
+
c.option('--fonts', 'Disable Fonts')
|
96
141
|
c.option('--game-center', 'Disable Game Center')
|
97
|
-
c.option('--
|
98
|
-
c.option('--
|
142
|
+
c.option('--health-kit', 'Disable Health Kit')
|
143
|
+
c.option('--hls-interstitial-preview', 'Disable Hls Interstitial Preview')
|
144
|
+
c.option('--home-kit', 'Disable Home Kit')
|
99
145
|
c.option('--hotspot', 'Disable Hotspot')
|
100
|
-
c.option('--
|
101
|
-
c.option('--
|
102
|
-
c.option('--
|
146
|
+
c.option('--in-app-purchase', 'Disable In App Purchase')
|
147
|
+
c.option('--inter-app-audio', 'Disable Inter App Audio')
|
148
|
+
c.option('--low-latency-hls', 'Disable Low Latency Hls')
|
149
|
+
c.option('--managed-associated-domains', 'Disable Managed Associated Domains')
|
150
|
+
c.option('--maps', 'Disable Maps')
|
103
151
|
c.option('--multipath', 'Disable Multipath')
|
104
|
-
c.option('--network-extension', 'Disable Network
|
152
|
+
c.option('--network-extension', 'Disable Network Extension')
|
105
153
|
c.option('--nfc-tag-reading', 'Disable NFC Tag Reading')
|
106
154
|
c.option('--personal-vpn', 'Disable Personal VPN')
|
107
155
|
c.option('--passbook', 'Disable Passbook (deprecated)')
|
108
|
-
c.option('--push-notification', 'Disable Push
|
109
|
-
c.option('--
|
110
|
-
c.option('--
|
156
|
+
c.option('--push-notification', 'Disable Push Notification')
|
157
|
+
c.option('--sign-in-with-apple', 'Disable Sign In With Apple')
|
158
|
+
c.option('--siri-kit', 'Disable Siri Kit')
|
159
|
+
c.option('--system-extension', 'Disable System Extension')
|
160
|
+
c.option('--user-management', 'Disable User Management')
|
161
|
+
c.option('--vpn-configuration', 'Disable Vpn Configuration (deprecated)')
|
111
162
|
c.option('--wallet', 'Disable Wallet')
|
112
|
-
c.option('--wireless-
|
163
|
+
c.option('--wireless-accessory', 'Disable Wireless Accessory')
|
164
|
+
c.option('--car-play-audio-app', 'Disable Car Play Audio App')
|
165
|
+
c.option('--car-play-messaging-app', 'Disable Car Play Messaging App')
|
166
|
+
c.option('--car-play-navigation-app', 'Disable Car Play Navigation App')
|
167
|
+
c.option('--car-play-voip-calling-app', 'Disable Car Play Voip Calling App')
|
168
|
+
c.option('--critical-alerts', 'Disable Critical Alerts')
|
169
|
+
c.option('--hotspot-helper', 'Disable Hotspot Helper')
|
170
|
+
c.option('--driver-kit', 'Disable DriverKit')
|
171
|
+
c.option('--driver-kit-endpoint-security', 'Disable DriverKit Endpoint Security')
|
172
|
+
c.option('--driver-kit-family-hid-device', 'Disable DriverKit Family HID Device')
|
173
|
+
c.option('--driver-kit-family-networking', 'Disable DriverKit Family Networking')
|
174
|
+
c.option('--driver-kit-family-serial', 'Disable DriverKit Family Serial')
|
175
|
+
c.option('--driver-kit-hid-event-service', 'Disable DriverKit HID EventService')
|
176
|
+
c.option('--driver-kit-transport-hid', 'Disable DriverKit Transport HID')
|
177
|
+
c.option('--multitasking-camera-access', 'Disable Multitasking Camera Access')
|
178
|
+
c.option('--sf-universal-link-api', 'Disable SFUniversalLink API')
|
179
|
+
c.option('--vp9-decoder', 'Disable VP9 Decoder')
|
180
|
+
c.option('--music-kit', 'Disable MusicKit')
|
181
|
+
c.option('--shazam-kit', 'Disable ShazamKit')
|
182
|
+
c.option('--communication-notifications', 'Disable Communication Notifications')
|
183
|
+
c.option('--group-activities', 'Disable Group Activities')
|
184
|
+
c.option('--health-kit-estimate-recalibration', 'Disable HealthKit Estimate Recalibration')
|
185
|
+
c.option('--time-sensitive-notifications', 'Disable Time Sensitive Notifications')
|
113
186
|
|
114
187
|
FastlaneCore::CommanderGenerator.new.generate(Produce::Options.available_options, command: c)
|
115
188
|
|
@@ -10,37 +10,75 @@ module Produce
|
|
10
10
|
SERVICE_UNTIL_FIRST_LAUNCH = "untilfirstauth"
|
11
11
|
SERVICE_LEGACY = "legacy"
|
12
12
|
SERVICE_CLOUDKIT = "cloudkit"
|
13
|
+
SERVICE_GAME_CENTER_IOS = "ios"
|
14
|
+
SERVICE_GAME_CENTER_MAC = "mac"
|
15
|
+
SERVICE_PRIMARY_APP_CONSENT = "on"
|
13
16
|
|
14
17
|
ALLOWED_SERVICES = {
|
15
18
|
access_wifi: [SERVICE_ON, SERVICE_OFF],
|
19
|
+
app_attest: [SERVICE_ON, SERVICE_OFF],
|
16
20
|
app_group: [SERVICE_ON, SERVICE_OFF],
|
17
21
|
apple_pay: [SERVICE_ON, SERVICE_OFF],
|
18
22
|
associated_domains: [SERVICE_ON, SERVICE_OFF],
|
19
23
|
auto_fill_credential: [SERVICE_ON, SERVICE_OFF],
|
24
|
+
class_kit: [SERVICE_ON, SERVICE_OFF],
|
25
|
+
icloud: [SERVICE_LEGACY, SERVICE_CLOUDKIT],
|
26
|
+
custom_network_protocol: [SERVICE_ON, SERVICE_OFF],
|
20
27
|
data_protection: [
|
21
28
|
SERVICE_COMPLETE,
|
22
29
|
SERVICE_UNLESS_OPEN,
|
23
30
|
SERVICE_UNTIL_FIRST_LAUNCH
|
24
31
|
],
|
25
|
-
|
32
|
+
extended_virtual_address_space: [SERVICE_ON, SERVICE_OFF],
|
33
|
+
family_controls: [SERVICE_ON, SERVICE_OFF],
|
34
|
+
file_provider_testing_mode: [SERVICE_ON, SERVICE_OFF],
|
35
|
+
fonts: [SERVICE_ON, SERVICE_OFF],
|
36
|
+
game_center: [SERVICE_GAME_CENTER_IOS, SERVICE_GAME_CENTER_MAC],
|
26
37
|
health_kit: [SERVICE_ON, SERVICE_OFF],
|
38
|
+
hls_interstitial_preview: [SERVICE_ON, SERVICE_OFF],
|
27
39
|
home_kit: [SERVICE_ON, SERVICE_OFF],
|
28
40
|
hotspot: [SERVICE_ON, SERVICE_OFF],
|
29
|
-
icloud: [SERVICE_LEGACY, SERVICE_CLOUDKIT],
|
30
41
|
in_app_purchase: [SERVICE_ON, SERVICE_OFF],
|
31
42
|
inter_app_audio: [SERVICE_ON, SERVICE_OFF],
|
43
|
+
low_latency_hls: [SERVICE_ON, SERVICE_OFF],
|
44
|
+
managed_associated_domains: [SERVICE_ON, SERVICE_OFF],
|
45
|
+
maps: [SERVICE_ON, SERVICE_OFF],
|
32
46
|
multipath: [SERVICE_ON, SERVICE_OFF],
|
33
47
|
network_extension: [SERVICE_ON, SERVICE_OFF],
|
34
48
|
nfc_tag_reading: [SERVICE_ON, SERVICE_OFF],
|
35
49
|
personal_vpn: [SERVICE_ON, SERVICE_OFF],
|
36
50
|
passbook: [SERVICE_ON, SERVICE_OFF],
|
37
51
|
push_notification: [SERVICE_ON, SERVICE_OFF],
|
52
|
+
sign_in_with_apple: [SERVICE_PRIMARY_APP_CONSENT],
|
38
53
|
siri_kit: [SERVICE_ON, SERVICE_OFF],
|
54
|
+
system_extension: [SERVICE_ON, SERVICE_OFF],
|
55
|
+
user_management: [SERVICE_ON, SERVICE_OFF],
|
39
56
|
vpn_configuration: [SERVICE_ON, SERVICE_OFF],
|
40
57
|
wallet: [SERVICE_ON, SERVICE_OFF],
|
41
|
-
wireless_accessory: [SERVICE_ON, SERVICE_OFF]
|
58
|
+
wireless_accessory: [SERVICE_ON, SERVICE_OFF],
|
59
|
+
car_play_audio_app: [SERVICE_ON, SERVICE_OFF],
|
60
|
+
car_play_messaging_app: [SERVICE_ON, SERVICE_OFF],
|
61
|
+
car_play_navigation_app: [SERVICE_ON, SERVICE_OFF],
|
62
|
+
car_play_voip_calling_app: [SERVICE_ON, SERVICE_OFF],
|
63
|
+
critical_alerts: [SERVICE_ON, SERVICE_OFF],
|
64
|
+
hotspot_helper: [SERVICE_ON, SERVICE_OFF],
|
65
|
+
driver_kit: [SERVICE_ON, SERVICE_OFF],
|
66
|
+
driver_kit_endpoint_security: [SERVICE_ON, SERVICE_OFF],
|
67
|
+
driver_kit_family_hid_device: [SERVICE_ON, SERVICE_OFF],
|
68
|
+
driver_kit_family_networking: [SERVICE_ON, SERVICE_OFF],
|
69
|
+
driver_kit_family_serial: [SERVICE_ON, SERVICE_OFF],
|
70
|
+
driver_kit_hid_event_service: [SERVICE_ON, SERVICE_OFF],
|
71
|
+
driver_kit_transport_hid: [SERVICE_ON, SERVICE_OFF],
|
72
|
+
multitasking_camera_access: [SERVICE_ON, SERVICE_OFF],
|
73
|
+
sf_universal_link_api: [SERVICE_ON, SERVICE_OFF],
|
74
|
+
vp9_decoder: [SERVICE_ON, SERVICE_OFF],
|
75
|
+
music_kit: [SERVICE_ON, SERVICE_OFF],
|
76
|
+
shazam_kit: [SERVICE_ON, SERVICE_OFF],
|
77
|
+
communication_notifications: [SERVICE_ON, SERVICE_OFF],
|
78
|
+
group_activities: [SERVICE_ON, SERVICE_OFF],
|
79
|
+
health_kit_estimate_recalibration: [SERVICE_ON, SERVICE_OFF],
|
80
|
+
time_sensitive_notifications: [SERVICE_ON, SERVICE_OFF],
|
42
81
|
}
|
43
|
-
|
44
82
|
def run
|
45
83
|
login
|
46
84
|
create_new_app
|