fastlane 2.173.0 → 2.194.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 +105 -85
- data/cert/lib/cert/commands_generator.rb +2 -1
- data/cert/lib/cert/options.rb +4 -3
- data/cert/lib/cert/runner.rb +7 -7
- data/deliver/lib/assets/summary.html.erb +10 -10
- data/deliver/lib/deliver/app_screenshot.rb +8 -3
- data/deliver/lib/deliver/app_screenshot_iterator.rb +2 -2
- data/deliver/lib/deliver/commands_generator.rb +3 -2
- 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 +1 -1
- data/deliver/lib/deliver/module.rb +6 -0
- data/deliver/lib/deliver/options.rb +48 -56
- data/deliver/lib/deliver/runner.rb +28 -15
- data/deliver/lib/deliver/screenshot_comparable.rb +62 -0
- data/deliver/lib/deliver/setup.rb +1 -2
- data/deliver/lib/deliver/submit_for_review.rb +4 -4
- data/deliver/lib/deliver/sync_screenshots.rb +200 -0
- data/deliver/lib/deliver/upload_metadata.rb +26 -11
- data/deliver/lib/deliver/upload_price_tier.rb +1 -1
- data/deliver/lib/deliver/upload_screenshots.rb +13 -12
- data/fastlane/lib/assets/completions/completion.bash +4 -1
- data/fastlane/lib/assets/completions/completion.zsh +6 -5
- data/{spaceship/lib/spaceship/connect_api/models/.app_store_version_submission.rb.swp → fastlane/lib/fastlane/actions/.notarize.rb.swp} +0 -0
- data/fastlane/lib/fastlane/actions/actions_helper.rb +2 -2
- 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 +4 -4
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +18 -18
- 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 +45 -45
- data/fastlane/lib/fastlane/actions/apteligent.rb +3 -2
- data/fastlane/lib/fastlane/actions/artifactory.rb +5 -6
- 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 +4 -0
- data/fastlane/lib/fastlane/actions/bundle_install.rb +21 -11
- 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 +25 -2
- 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 +0 -9
- data/fastlane/lib/fastlane/actions/create_xcframework.rb +102 -17
- 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 +29 -30
- data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +3 -3
- data/fastlane/lib/fastlane/actions/docs/create_app_online.md +171 -67
- data/fastlane/lib/fastlane/actions/docs/frame_screenshots.md +19 -2
- data/fastlane/lib/fastlane/actions/docs/sync_code_signing.md +8 -2
- data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +37 -18
- data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +2 -1
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +10 -4
- data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +1 -1
- data/fastlane/lib/fastlane/actions/download_dsyms.rb +8 -19
- 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 +10 -2
- 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 +6 -8
- 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 +4 -6
- data/fastlane/lib/fastlane/actions/gradle.rb +13 -21
- 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 +7 -7
- 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 +2 -2
- data/fastlane/lib/fastlane/actions/notarize.rb +181 -52
- 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/pod_push.rb +0 -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 +2 -2
- data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +6 -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 +10 -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 +11 -14
- data/fastlane/lib/fastlane/actions/set_github_release.rb +2 -8
- 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 +161 -141
- data/fastlane/lib/fastlane/actions/slather.rb +9 -19
- 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 +3 -3
- data/fastlane/lib/fastlane/actions/ssh.rb +5 -10
- data/fastlane/lib/fastlane/actions/swiftlint.rb +18 -16
- data/fastlane/lib/fastlane/actions/sync_code_signing.rb +7 -2
- 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 +2 -2
- 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 +1 -2
- 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 +5 -1
- data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +10 -3
- 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_server_get_assets.rb +3 -3
- data/fastlane/lib/fastlane/actions/xcodebuild.rb +5 -5
- data/fastlane/lib/fastlane/actions/zip.rb +86 -21
- data/fastlane/lib/fastlane/cli_tools_distributor.rb +1 -1
- 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 +12 -6
- 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 +3 -0
- 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 +30 -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_function.rb +43 -15
- 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 +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +27 -23
- data/fastlane/swift/Fastlane.swift +7993 -4352
- data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.pbxproj +4 -0
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/LaneFileProtocol.swift +10 -4
- data/fastlane/swift/MainProcess.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +3 -3
- data/fastlane/swift/OptionalConfigValue.swift +101 -0
- data/fastlane/swift/Plugins.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +4 -4
- data/fastlane/swift/RubyCommand.swift +2 -2
- data/fastlane/swift/RubyCommandable.swift +1 -1
- data/fastlane/swift/Runner.swift +2 -2
- data/fastlane/swift/RunnerArgument.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +17 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +4 -4
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +5 -1
- data/fastlane/swift/SocketClient.swift +3 -2
- data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
- data/fastlane/swift/SocketResponse.swift +5 -3
- data/fastlane/swift/formatting/Brewfile.lock.json +37 -21
- data/fastlane/swift/main.swift +1 -1
- data/fastlane/swift/upgrade_manifest.json +1 -1
- data/fastlane_core/lib/fastlane_core/build_watcher.rb +113 -17
- 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 +66 -10
- data/fastlane_core/lib/fastlane_core/ipa_upload_package_builder.rb +3 -2
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +14 -8
- data/fastlane_core/lib/fastlane_core/keychain_importer.rb +12 -5
- data/fastlane_core/lib/fastlane_core/languages.rb +2 -2
- data/fastlane_core/lib/fastlane_core/pkg_file_analyser.rb +5 -0
- 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 +30 -23
- 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 +1 -0
- data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +41 -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/fastlane_core/lib/fastlane_core.rb +22 -20
- data/frameit/lib/frameit/commands_generator.rb +2 -1
- data/frameit/lib/frameit/config_parser.rb +2 -2
- data/frameit/lib/frameit/frame_downloader.rb +2 -1
- data/gym/lib/gym/code_signing_mapping.rb +2 -2
- data/gym/lib/gym/commands_generator.rb +2 -1
- data/gym/lib/gym/generators/package_command_generator.rb +4 -0
- data/gym/lib/gym/generators/package_command_generator_xcode7.rb +19 -13
- 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 +2 -2
- data/match/lib/match/importer.rb +9 -10
- data/match/lib/match/migrate.rb +2 -3
- data/match/lib/match/module.rb +1 -0
- data/match/lib/match/nuke.rb +10 -10
- data/match/lib/match/options.rb +5 -4
- data/match/lib/match/runner.rb +12 -12
- data/match/lib/match/spaceship_ensure.rb +3 -0
- 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/build_manager.rb +45 -15
- data/pilot/lib/pilot/commands_generator.rb +2 -1
- data/pilot/lib/pilot/manager.rb +14 -9
- data/pilot/lib/pilot/options.rb +39 -11
- data/pilot/lib/pilot/tester_exporter.rb +0 -1
- data/pilot/lib/pilot/tester_manager.rb +0 -1
- data/pilot/lib/pilot.rb +0 -1
- data/precheck/lib/precheck/commands_generator.rb +2 -1
- data/precheck/lib/precheck/module.rb +2 -0
- data/precheck/lib/precheck/options.rb +7 -6
- data/precheck/lib/precheck/runner.rb +13 -8
- data/produce/lib/produce/commands_generator.rb +129 -28
- data/produce/lib/produce/developer_center.rb +42 -4
- data/produce/lib/produce/options.rb +1 -1
- data/produce/lib/produce/service.rb +285 -179
- data/scan/lib/scan/commands_generator.rb +2 -1
- data/scan/lib/scan/detect_values.rb +26 -14
- data/scan/lib/scan/module.rb +1 -0
- data/scan/lib/scan/options.rb +32 -6
- data/scan/lib/scan/runner.rb +81 -1
- data/scan/lib/scan/test_command_generator.rb +37 -12
- data/scan/lib/scan/xcpretty_reporter_options_generator.rb +1 -1
- 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 +110 -109
- 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 +6 -4
- data/sigh/lib/sigh/runner.rb +8 -8
- data/snapshot/lib/assets/SnapfileTemplate +3 -2
- data/snapshot/lib/assets/SnapfileTemplate.swift +2 -1
- data/snapshot/lib/assets/SnapshotHelper.swift +14 -10
- data/snapshot/lib/snapshot/commands_generator.rb +3 -1
- data/snapshot/lib/snapshot/options.rb +5 -0
- 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 +12 -6
- data/snapshot/lib/snapshot/test_command_generator.rb +17 -3
- data/spaceship/README.md +4 -14
- data/spaceship/lib/spaceship/base.rb +2 -2
- data/spaceship/lib/spaceship/client.rb +37 -20
- data/spaceship/lib/spaceship/commands_generator.rb +4 -2
- data/spaceship/lib/spaceship/connect_api/api_client.rb +80 -8
- data/spaceship/lib/spaceship/connect_api/model.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +36 -4
- data/spaceship/lib/spaceship/connect_api/models/app.rb +10 -2
- data/spaceship/lib/spaceship/connect_api/models/app_info.rb +10 -0
- data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +2 -3
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +6 -0
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +8 -1
- data/spaceship/lib/spaceship/connect_api/models/beta_tester.rb +3 -1
- data/spaceship/lib/spaceship/connect_api/models/build.rb +14 -1
- data/spaceship/lib/spaceship/connect_api/models/build_beta_detail.rb +8 -0
- data/spaceship/lib/spaceship/connect_api/models/bundle_id.rb +32 -0
- data/spaceship/lib/spaceship/connect_api/models/bundle_id_capability.rb +84 -21
- data/spaceship/lib/spaceship/connect_api/models/capabilities.rb +27 -0
- data/spaceship/lib/spaceship/connect_api/models/profile.rb +6 -0
- data/spaceship/lib/spaceship/connect_api/models/user.rb +17 -3
- data/spaceship/lib/spaceship/connect_api/models/user_invitation.rb +37 -3
- data/spaceship/lib/spaceship/connect_api/provisioning/provisioning.rb +104 -2
- data/spaceship/lib/spaceship/connect_api/testflight/client.rb +3 -0
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +72 -5
- data/spaceship/lib/spaceship/connect_api/token.rb +19 -4
- data/spaceship/lib/spaceship/connect_api/tunes/client.rb +3 -0
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +19 -2
- data/spaceship/lib/spaceship/connect_api/users/client.rb +3 -0
- data/spaceship/lib/spaceship/connect_api/users/users.rb +58 -3
- data/spaceship/lib/spaceship/connect_api.rb +1 -0
- data/spaceship/lib/spaceship/playground.rb +2 -2
- data/spaceship/lib/spaceship/spaceauth_runner.rb +38 -15
- data/spaceship/lib/spaceship/tunes/members.rb +1 -1
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +5 -2
- data/spaceship/lib/spaceship/two_step_or_factor_client.rb +42 -29
- data/spaceship/lib/spaceship/ui.rb +2 -2
- data/supply/lib/supply/client.rb +45 -4
- data/supply/lib/supply/commands_generator.rb +2 -1
- data/supply/lib/supply/options.rb +14 -2
- data/supply/lib/supply/uploader.rb +13 -9
- metadata +119 -98
- data/fastlane/lib/fastlane/.erb_template_helper.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/.git_commit.rb.swp +0 -0
- data/pilot/lib/pilot/features.rb +0 -0
- data/pilot/lib/pilot/tester_util.rb +0 -0
- data/spaceship/lib/spaceship/.DS_Store +0 -0
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'base64'
|
2
|
+
require 'spaceship'
|
2
3
|
|
3
4
|
module Fastlane
|
4
5
|
module Actions
|
@@ -29,7 +30,7 @@ module Fastlane
|
|
29
30
|
key = {
|
30
31
|
key_id: key_id,
|
31
32
|
issuer_id: issuer_id,
|
32
|
-
key: key_content || File.binread(key_filepath),
|
33
|
+
key: key_content || File.binread(File.expand_path(key_filepath)),
|
33
34
|
is_key_content_base64: is_key_content_base64,
|
34
35
|
duration: duration,
|
35
36
|
in_house: in_house
|
@@ -37,6 +38,10 @@ module Fastlane
|
|
37
38
|
|
38
39
|
Actions.lane_context.set_sensitive(SharedValues::APP_STORE_CONNECT_API_KEY, key)
|
39
40
|
|
41
|
+
# Creates Spaceship API Key session
|
42
|
+
# User does not need to pass the token into any actions because of this
|
43
|
+
Spaceship::ConnectAPI.token = Spaceship::ConnectAPI::Token.create(**key) if options[:set_spaceship_token]
|
44
|
+
|
40
45
|
return key
|
41
46
|
end
|
42
47
|
|
@@ -58,7 +63,7 @@ module Fastlane
|
|
58
63
|
optional: true,
|
59
64
|
conflicting_options: [:key_content],
|
60
65
|
verify_block: proc do |value|
|
61
|
-
UI.user_error!("Couldn't find key p8 file at path '#{value}'") unless File.exist?(value)
|
66
|
+
UI.user_error!("Couldn't find key p8 file at path '#{value}'") unless File.exist?(File.expand_path(value))
|
62
67
|
end),
|
63
68
|
FastlaneCore::ConfigItem.new(key: :key_content,
|
64
69
|
env_name: "APP_STORE_CONNECT_API_KEY_KEY",
|
@@ -75,12 +80,21 @@ module Fastlane
|
|
75
80
|
env_name: "APP_STORE_CONNECT_API_KEY_DURATION",
|
76
81
|
description: "The token session duration",
|
77
82
|
optional: true,
|
78
|
-
|
83
|
+
default_value: Spaceship::ConnectAPI::Token::DEFAULT_TOKEN_DURATION,
|
84
|
+
type: Integer,
|
85
|
+
verify_block: proc do |value|
|
86
|
+
UI.user_error!("The duration can't be more than 1200 (20 minutes) and the value entered was '#{value}'") unless value <= 1200
|
87
|
+
end),
|
79
88
|
FastlaneCore::ConfigItem.new(key: :in_house,
|
80
89
|
env_name: "APP_STORE_CONNECT_API_KEY_IN_HOUSE",
|
81
|
-
description: "Is App Store or Enterprise (in house) team? App Store Connect API cannot
|
82
|
-
|
83
|
-
|
90
|
+
description: "Is App Store or Enterprise (in house) team? App Store Connect API cannot determine this on its own (yet)",
|
91
|
+
type: Boolean,
|
92
|
+
default_value: false),
|
93
|
+
FastlaneCore::ConfigItem.new(key: :set_spaceship_token,
|
94
|
+
env_name: "APP_STORE_CONNECT_API_KEY_SET_SPACESHIP_TOKEN",
|
95
|
+
description: "Authorizes all Spaceship::ConnectAPI requests by automatically setting Spaceship::ConnectAPI.token",
|
96
|
+
type: Boolean,
|
97
|
+
default_value: true)
|
84
98
|
]
|
85
99
|
end
|
86
100
|
|
@@ -95,7 +109,7 @@ module Fastlane
|
|
95
109
|
end
|
96
110
|
|
97
111
|
def self.is_supported?(platform)
|
98
|
-
|
112
|
+
[:ios, :mac, :tvos].include?(platform)
|
99
113
|
end
|
100
114
|
|
101
115
|
def self.details
|
@@ -10,7 +10,7 @@ module Fastlane
|
|
10
10
|
binary_url = get_binary_link(binary, api_key, store_id, params[:group_ids])
|
11
11
|
return if binary_url.nil?
|
12
12
|
screenshots_url = get_screenshots_links(api_key, store_id, params[:screenshots], params[:locale], params[:device])
|
13
|
-
upload_on_appaloosa(api_key, store_id, binary_url, screenshots_url, params[:group_ids], params[:description])
|
13
|
+
upload_on_appaloosa(api_key, store_id, binary_url, screenshots_url, params[:group_ids], params[:description], params[:changelog])
|
14
14
|
end
|
15
15
|
|
16
16
|
def self.get_binary_link(binary, api_key, store_id, group_ids)
|
@@ -101,7 +101,7 @@ module Fastlane
|
|
101
101
|
end.compact
|
102
102
|
end
|
103
103
|
|
104
|
-
def self.upload_on_appaloosa(api_key, store_id, binary_path, screenshots, group_ids, description)
|
104
|
+
def self.upload_on_appaloosa(api_key, store_id, binary_path, screenshots, group_ids, description, changelog)
|
105
105
|
screenshots = all_screenshots_links(screenshots)
|
106
106
|
uri = URI("#{APPALOOSA_SERVER}/#{store_id}/mobile_application_updates/upload")
|
107
107
|
http = Net::HTTP.new(uri.host, uri.port)
|
@@ -111,6 +111,7 @@ module Fastlane
|
|
111
111
|
api_key: api_key,
|
112
112
|
mobile_application_update: {
|
113
113
|
description: description,
|
114
|
+
changelog: changelog,
|
114
115
|
binary_path: binary_path,
|
115
116
|
screenshot1: screenshots[0],
|
116
117
|
screenshot2: screenshots[1],
|
@@ -218,6 +219,10 @@ module Fastlane
|
|
218
219
|
FastlaneCore::ConfigItem.new(key: :description,
|
219
220
|
env_name: 'FL_APPALOOSA_DESCRIPTION',
|
220
221
|
description: 'Your app description',
|
222
|
+
optional: true),
|
223
|
+
FastlaneCore::ConfigItem.new(key: :changelog,
|
224
|
+
env_name: 'FL_APPALOOSA_CHANGELOG',
|
225
|
+
description: 'Your app changelog',
|
221
226
|
optional: true)
|
222
227
|
]
|
223
228
|
end
|
@@ -31,6 +31,10 @@ module Fastlane
|
|
31
31
|
|
32
32
|
params[:note] = options[:note] if options[:note].to_s.length > 0
|
33
33
|
|
34
|
+
if options[:timeout]
|
35
|
+
params[:timeout] = options[:timeout]
|
36
|
+
end
|
37
|
+
|
34
38
|
uri = URI.parse(appetize_url(options))
|
35
39
|
req = create_request(uri, params)
|
36
40
|
req.basic_auth(options[:api_token], nil)
|
@@ -105,7 +109,6 @@ module Fastlane
|
|
105
109
|
FastlaneCore::ConfigItem.new(key: :api_host,
|
106
110
|
env_name: "APPETIZE_API_HOST",
|
107
111
|
description: "Appetize API host",
|
108
|
-
is_string: true,
|
109
112
|
default_value: 'api.appetize.io',
|
110
113
|
verify_block: proc do |value|
|
111
114
|
UI.user_error!("API host should not contain the scheme e.g. `https`") if value.start_with?('https')
|
@@ -114,29 +117,24 @@ module Fastlane
|
|
114
117
|
env_name: "APPETIZE_API_TOKEN",
|
115
118
|
sensitive: true,
|
116
119
|
description: "Appetize.io API Token",
|
117
|
-
is_string: true,
|
118
120
|
verify_block: proc do |value|
|
119
121
|
UI.user_error!("No API Token for Appetize.io given, pass using `api_token: 'token'`") unless value.to_s.length > 0
|
120
122
|
end),
|
121
123
|
FastlaneCore::ConfigItem.new(key: :url,
|
122
124
|
env_name: "APPETIZE_URL",
|
123
125
|
description: "URL from which the ipa file can be fetched. Alternative to :path",
|
124
|
-
is_string: true,
|
125
126
|
optional: true),
|
126
127
|
FastlaneCore::ConfigItem.new(key: :platform,
|
127
128
|
env_name: "APPETIZE_PLATFORM",
|
128
129
|
description: "Platform. Either `ios` or `android`",
|
129
|
-
is_string: true,
|
130
130
|
default_value: 'ios'),
|
131
131
|
FastlaneCore::ConfigItem.new(key: :path,
|
132
132
|
env_name: "APPETIZE_FILE_PATH",
|
133
133
|
description: "Path to zipped build on the local filesystem. Either this or `url` must be specified",
|
134
|
-
is_string: true,
|
135
134
|
optional: true),
|
136
135
|
FastlaneCore::ConfigItem.new(key: :public_key,
|
137
136
|
env_name: "APPETIZE_PUBLICKEY",
|
138
137
|
description: "If not provided, a new app will be created. If provided, the existing build will be overwritten",
|
139
|
-
is_string: true,
|
140
138
|
optional: true,
|
141
139
|
verify_block: proc do |value|
|
142
140
|
if value.start_with?("private_")
|
@@ -146,8 +144,15 @@ module Fastlane
|
|
146
144
|
FastlaneCore::ConfigItem.new(key: :note,
|
147
145
|
env_name: "APPETIZE_NOTE",
|
148
146
|
description: "Notes you wish to add to the uploaded app",
|
149
|
-
|
150
|
-
|
147
|
+
optional: true),
|
148
|
+
FastlaneCore::ConfigItem.new(key: :timeout,
|
149
|
+
env_name: "APPETIZE_TIMEOUT",
|
150
|
+
description: "The number of seconds to wait until automatically ending the session due to user inactivity. Must be 30, 60, 90, 120, 180, 300, 600, 1800, 3600 or 7200. Default is 120",
|
151
|
+
type: Integer,
|
152
|
+
optional: true,
|
153
|
+
verify_block: proc do |value|
|
154
|
+
UI.user_error!("The value provided doesn't match any of the supported options.") unless [30, 60, 90, 120, 180, 300, 600, 1800, 3600, 7200].include?(value)
|
155
|
+
end)
|
151
156
|
]
|
152
157
|
end
|
153
158
|
|
@@ -50,7 +50,6 @@ module Fastlane
|
|
50
50
|
FastlaneCore::ConfigItem.new(key: :public_key,
|
51
51
|
env_name: "APPETIZE_PUBLICKEY",
|
52
52
|
description: "Public key of the app you wish to update",
|
53
|
-
is_string: true,
|
54
53
|
sensitive: true,
|
55
54
|
default_value: Actions.lane_context[SharedValues::APPETIZE_PUBLIC_KEY],
|
56
55
|
default_value_dynamic: true,
|
@@ -63,18 +62,15 @@ module Fastlane
|
|
63
62
|
FastlaneCore::ConfigItem.new(key: :base_url,
|
64
63
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_BASE",
|
65
64
|
description: "Base URL of Appetize service",
|
66
|
-
is_string: true,
|
67
65
|
default_value: "https://appetize.io/embed",
|
68
66
|
optional: true),
|
69
67
|
FastlaneCore::ConfigItem.new(key: :device,
|
70
68
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_DEVICE",
|
71
69
|
description: "Device type: iphone4s, iphone5s, iphone6, iphone6plus, ipadair, iphone6s, iphone6splus, ipadair2, nexus5, nexus7 or nexus9",
|
72
|
-
is_string: true,
|
73
70
|
default_value: "iphone5s"),
|
74
71
|
FastlaneCore::ConfigItem.new(key: :scale,
|
75
72
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_SCALE",
|
76
73
|
description: "Scale of the simulator",
|
77
|
-
is_string: true,
|
78
74
|
optional: true,
|
79
75
|
verify_block: proc do |value|
|
80
76
|
available = ["25", "50", "75", "100"]
|
@@ -83,7 +79,6 @@ module Fastlane
|
|
83
79
|
FastlaneCore::ConfigItem.new(key: :orientation,
|
84
80
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_ORIENTATION",
|
85
81
|
description: "Device orientation",
|
86
|
-
is_string: true,
|
87
82
|
default_value: "portrait",
|
88
83
|
verify_block: proc do |value|
|
89
84
|
available = ["portrait", "landscape"]
|
@@ -92,12 +87,10 @@ module Fastlane
|
|
92
87
|
FastlaneCore::ConfigItem.new(key: :language,
|
93
88
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_LANGUAGE",
|
94
89
|
description: "Device language in ISO 639-1 language code, e.g. 'de'",
|
95
|
-
is_string: true,
|
96
90
|
optional: true),
|
97
91
|
FastlaneCore::ConfigItem.new(key: :color,
|
98
92
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_COLOR",
|
99
93
|
description: "Color of the device",
|
100
|
-
is_string: true,
|
101
94
|
default_value: "black",
|
102
95
|
verify_block: proc do |value|
|
103
96
|
available = ["black", "white", "silver", "gray"]
|
@@ -106,22 +99,18 @@ module Fastlane
|
|
106
99
|
FastlaneCore::ConfigItem.new(key: :launch_url,
|
107
100
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_LAUNCH_URL",
|
108
101
|
description: "Specify a deep link to open when your app is launched",
|
109
|
-
is_string: true,
|
110
102
|
optional: true),
|
111
103
|
FastlaneCore::ConfigItem.new(key: :os_version,
|
112
104
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_OS_VERSION",
|
113
105
|
description: "The operating system version on which to run your app, e.g. 10.3, 8.0",
|
114
|
-
is_string: true,
|
115
106
|
optional: true),
|
116
107
|
FastlaneCore::ConfigItem.new(key: :params,
|
117
108
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_PARAMS",
|
118
109
|
description: "Specify params value to be passed to Appetize",
|
119
|
-
is_string: true,
|
120
110
|
optional: true),
|
121
111
|
FastlaneCore::ConfigItem.new(key: :proxy,
|
122
112
|
env_name: "APPETIZE_VIEWING_URL_GENERATOR_PROXY",
|
123
113
|
description: "Specify a HTTP proxy to be passed to Appetize",
|
124
|
-
is_string: true,
|
125
114
|
optional: true)
|
126
115
|
]
|
127
116
|
end
|
@@ -105,71 +105,46 @@ module Fastlane
|
|
105
105
|
|
106
106
|
def self.available_options
|
107
107
|
[
|
108
|
-
FastlaneCore::ConfigItem.new(
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
FastlaneCore::ConfigItem.new(
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
FastlaneCore::ConfigItem.new(
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
optional: true
|
149
|
-
),
|
150
|
-
FastlaneCore::ConfigItem.new(
|
151
|
-
key: :appium_path,
|
152
|
-
env_name: 'FL_APPIUM_EXECUTABLE_PATH',
|
153
|
-
description: 'Path to Appium executable',
|
154
|
-
is_string: true,
|
155
|
-
optional: true
|
156
|
-
),
|
157
|
-
FastlaneCore::ConfigItem.new(
|
158
|
-
key: :caps,
|
159
|
-
env_name: 'FL_APPIUM_CAPS',
|
160
|
-
description: 'Hash of caps for Appium::Driver',
|
161
|
-
is_string: false,
|
162
|
-
type: Hash,
|
163
|
-
optional: true
|
164
|
-
),
|
165
|
-
FastlaneCore::ConfigItem.new(
|
166
|
-
key: :appium_lib,
|
167
|
-
env_name: 'FL_APPIUM_LIB',
|
168
|
-
description: 'Hash of appium_lib for Appium::Driver',
|
169
|
-
is_string: false,
|
170
|
-
type: Hash,
|
171
|
-
optional: true
|
172
|
-
)
|
108
|
+
FastlaneCore::ConfigItem.new(key: :platform,
|
109
|
+
env_name: 'FL_APPIUM_PLATFORM',
|
110
|
+
description: 'Appium platform name'),
|
111
|
+
FastlaneCore::ConfigItem.new(key: :spec_path,
|
112
|
+
env_name: 'FL_APPIUM_SPEC_PATH',
|
113
|
+
description: 'Path to Appium spec directory'),
|
114
|
+
FastlaneCore::ConfigItem.new(key: :app_path,
|
115
|
+
env_name: 'FL_APPIUM_APP_FILE_PATH',
|
116
|
+
description: 'Path to Appium target app file'),
|
117
|
+
FastlaneCore::ConfigItem.new(key: :invoke_appium_server,
|
118
|
+
env_name: 'FL_APPIUM_INVOKE_APPIUM_SERVER',
|
119
|
+
description: 'Use local Appium server with invoke automatically',
|
120
|
+
type: Boolean,
|
121
|
+
default_value: true,
|
122
|
+
optional: true),
|
123
|
+
FastlaneCore::ConfigItem.new(key: :host,
|
124
|
+
env_name: 'FL_APPIUM_HOST',
|
125
|
+
description: 'Hostname of Appium server',
|
126
|
+
default_value: '0.0.0.0',
|
127
|
+
optional: true),
|
128
|
+
FastlaneCore::ConfigItem.new(key: :port,
|
129
|
+
env_name: 'FL_APPIUM_PORT',
|
130
|
+
description: 'HTTP port of Appium server',
|
131
|
+
type: Integer,
|
132
|
+
default_value: 4723,
|
133
|
+
optional: true),
|
134
|
+
FastlaneCore::ConfigItem.new(key: :appium_path,
|
135
|
+
env_name: 'FL_APPIUM_EXECUTABLE_PATH',
|
136
|
+
description: 'Path to Appium executable',
|
137
|
+
optional: true),
|
138
|
+
FastlaneCore::ConfigItem.new(key: :caps,
|
139
|
+
env_name: 'FL_APPIUM_CAPS',
|
140
|
+
description: 'Hash of caps for Appium::Driver',
|
141
|
+
type: Hash,
|
142
|
+
optional: true),
|
143
|
+
FastlaneCore::ConfigItem.new(key: :appium_lib,
|
144
|
+
env_name: 'FL_APPIUM_LIB',
|
145
|
+
description: 'Hash of appium_lib for Appium::Driver',
|
146
|
+
type: Hash,
|
147
|
+
optional: true)
|
173
148
|
]
|
174
149
|
end
|
175
150
|
|
@@ -125,63 +125,63 @@ module Fastlane
|
|
125
125
|
def self.available_options
|
126
126
|
[
|
127
127
|
# PATHS
|
128
|
-
FastlaneCore::ConfigItem.new(key: :input, env_name: "FL_APPLEDOC_INPUT", description: "Path(s) to source file directories or individual source files. Accepts a single path or an array of paths",
|
129
|
-
FastlaneCore::ConfigItem.new(key: :output, env_name: "FL_APPLEDOC_OUTPUT", description: "Output path",
|
130
|
-
FastlaneCore::ConfigItem.new(key: :templates, env_name: "FL_APPLEDOC_TEMPLATES", description: "Template files path",
|
131
|
-
FastlaneCore::ConfigItem.new(key: :docset_install_path, env_name: "FL_APPLEDOC_DOCSET_INSTALL_PATH", description: "DocSet installation path",
|
132
|
-
FastlaneCore::ConfigItem.new(key: :include, env_name: "FL_APPLEDOC_INCLUDE", description: "Include static doc(s) at path",
|
133
|
-
FastlaneCore::ConfigItem.new(key: :ignore, env_name: "FL_APPLEDOC_IGNORE", description: "Ignore given path",
|
134
|
-
FastlaneCore::ConfigItem.new(key: :exclude_output, env_name: "FL_APPLEDOC_EXCLUDE_OUTPUT", description: "Exclude given path from output",
|
135
|
-
FastlaneCore::ConfigItem.new(key: :index_desc, env_name: "FL_APPLEDOC_INDEX_DESC", description: "File including main index description",
|
128
|
+
FastlaneCore::ConfigItem.new(key: :input, env_name: "FL_APPLEDOC_INPUT", description: "Path(s) to source file directories or individual source files. Accepts a single path or an array of paths", type: Array),
|
129
|
+
FastlaneCore::ConfigItem.new(key: :output, env_name: "FL_APPLEDOC_OUTPUT", description: "Output path", optional: true),
|
130
|
+
FastlaneCore::ConfigItem.new(key: :templates, env_name: "FL_APPLEDOC_TEMPLATES", description: "Template files path", optional: true),
|
131
|
+
FastlaneCore::ConfigItem.new(key: :docset_install_path, env_name: "FL_APPLEDOC_DOCSET_INSTALL_PATH", description: "DocSet installation path", optional: true),
|
132
|
+
FastlaneCore::ConfigItem.new(key: :include, env_name: "FL_APPLEDOC_INCLUDE", description: "Include static doc(s) at path", optional: true),
|
133
|
+
FastlaneCore::ConfigItem.new(key: :ignore, env_name: "FL_APPLEDOC_IGNORE", description: "Ignore given path", type: Array, optional: true),
|
134
|
+
FastlaneCore::ConfigItem.new(key: :exclude_output, env_name: "FL_APPLEDOC_EXCLUDE_OUTPUT", description: "Exclude given path from output", type: Array, optional: true),
|
135
|
+
FastlaneCore::ConfigItem.new(key: :index_desc, env_name: "FL_APPLEDOC_INDEX_DESC", description: "File including main index description", optional: true),
|
136
136
|
|
137
137
|
# PROJECT INFO
|
138
|
-
FastlaneCore::ConfigItem.new(key: :project_name, env_name: "FL_APPLEDOC_PROJECT_NAME", description: "Project name"
|
139
|
-
FastlaneCore::ConfigItem.new(key: :project_version, env_name: "FL_APPLEDOC_PROJECT_VERSION", description: "Project version",
|
140
|
-
FastlaneCore::ConfigItem.new(key: :project_company, env_name: "FL_APPLEDOC_PROJECT_COMPANY", description: "Project company"
|
141
|
-
FastlaneCore::ConfigItem.new(key: :company_id, env_name: "FL_APPLEDOC_COMPANY_ID", description: "Company UTI (i.e. reverse DNS name)",
|
138
|
+
FastlaneCore::ConfigItem.new(key: :project_name, env_name: "FL_APPLEDOC_PROJECT_NAME", description: "Project name"),
|
139
|
+
FastlaneCore::ConfigItem.new(key: :project_version, env_name: "FL_APPLEDOC_PROJECT_VERSION", description: "Project version", optional: true),
|
140
|
+
FastlaneCore::ConfigItem.new(key: :project_company, env_name: "FL_APPLEDOC_PROJECT_COMPANY", description: "Project company"),
|
141
|
+
FastlaneCore::ConfigItem.new(key: :company_id, env_name: "FL_APPLEDOC_COMPANY_ID", description: "Company UTI (i.e. reverse DNS name)", optional: true),
|
142
142
|
|
143
143
|
# OUTPUT GENERATION
|
144
|
-
FastlaneCore::ConfigItem.new(key: :create_html, env_name: "FL_APPLEDOC_CREATE_HTML", description: "Create HTML",
|
145
|
-
FastlaneCore::ConfigItem.new(key: :create_docset, env_name: "FL_APPLEDOC_CREATE_DOCSET", description: "Create documentation set",
|
146
|
-
FastlaneCore::ConfigItem.new(key: :install_docset, env_name: "FL_APPLEDOC_INSTALL_DOCSET", description: "Install documentation set to Xcode",
|
147
|
-
FastlaneCore::ConfigItem.new(key: :publish_docset, env_name: "FL_APPLEDOC_PUBLISH_DOCSET", description: "Prepare DocSet for publishing",
|
148
|
-
FastlaneCore::ConfigItem.new(key: :no_create_docset, env_name: "FL_APPLEDOC_NO_CREATE_DOCSET", description: "Create HTML and skip creating a DocSet",
|
149
|
-
FastlaneCore::ConfigItem.new(key: :html_anchors, env_name: "FL_APPLEDOC_HTML_ANCHORS", description: "The html anchor format to use in DocSet HTML",
|
150
|
-
FastlaneCore::ConfigItem.new(key: :clean_output, env_name: "FL_APPLEDOC_CLEAN_OUTPUT", description: "Remove contents of output path before starting",
|
144
|
+
FastlaneCore::ConfigItem.new(key: :create_html, env_name: "FL_APPLEDOC_CREATE_HTML", description: "Create HTML", type: Boolean, default_value: false),
|
145
|
+
FastlaneCore::ConfigItem.new(key: :create_docset, env_name: "FL_APPLEDOC_CREATE_DOCSET", description: "Create documentation set", type: Boolean, default_value: false),
|
146
|
+
FastlaneCore::ConfigItem.new(key: :install_docset, env_name: "FL_APPLEDOC_INSTALL_DOCSET", description: "Install documentation set to Xcode", type: Boolean, default_value: false),
|
147
|
+
FastlaneCore::ConfigItem.new(key: :publish_docset, env_name: "FL_APPLEDOC_PUBLISH_DOCSET", description: "Prepare DocSet for publishing", type: Boolean, default_value: false),
|
148
|
+
FastlaneCore::ConfigItem.new(key: :no_create_docset, env_name: "FL_APPLEDOC_NO_CREATE_DOCSET", description: "Create HTML and skip creating a DocSet", type: Boolean, default_value: false),
|
149
|
+
FastlaneCore::ConfigItem.new(key: :html_anchors, env_name: "FL_APPLEDOC_HTML_ANCHORS", description: "The html anchor format to use in DocSet HTML", optional: true),
|
150
|
+
FastlaneCore::ConfigItem.new(key: :clean_output, env_name: "FL_APPLEDOC_CLEAN_OUTPUT", description: "Remove contents of output path before starting", type: Boolean, default_value: false),
|
151
151
|
|
152
152
|
# DOCUMENTATION SET INFO
|
153
|
-
FastlaneCore::ConfigItem.new(key: :docset_bundle_id, env_name: "FL_APPLEDOC_DOCSET_BUNDLE_ID", description: "DocSet bundle identifier",
|
154
|
-
FastlaneCore::ConfigItem.new(key: :docset_bundle_name, env_name: "FL_APPLEDOC_DOCSET_BUNDLE_NAME", description: "DocSet bundle name",
|
155
|
-
FastlaneCore::ConfigItem.new(key: :docset_desc, env_name: "FL_APPLEDOC_DOCSET_DESC", description: "DocSet description",
|
156
|
-
FastlaneCore::ConfigItem.new(key: :docset_copyright, env_name: "FL_APPLEDOC_DOCSET_COPYRIGHT", description: "DocSet copyright message",
|
157
|
-
FastlaneCore::ConfigItem.new(key: :docset_feed_name, env_name: "FL_APPLEDOC_DOCSET_FEED_NAME", description: "DocSet feed name",
|
158
|
-
FastlaneCore::ConfigItem.new(key: :docset_feed_url, env_name: "FL_APPLEDOC_DOCSET_FEED_URL", description: "DocSet feed URL",
|
159
|
-
FastlaneCore::ConfigItem.new(key: :docset_feed_formats, env_name: "FL_APPLEDOC_DOCSET_FEED_FORMATS", description: "DocSet feed formats. Separated by a comma [atom,xml]",
|
160
|
-
FastlaneCore::ConfigItem.new(key: :docset_package_url, env_name: "FL_APPLEDOC_DOCSET_PACKAGE_URL", description: "DocSet package (.xar) URL",
|
161
|
-
FastlaneCore::ConfigItem.new(key: :docset_fallback_url, env_name: "FL_APPLEDOC_DOCSET_FALLBACK_URL", description: "DocSet fallback URL",
|
162
|
-
FastlaneCore::ConfigItem.new(key: :docset_publisher_id, env_name: "FL_APPLEDOC_DOCSET_PUBLISHER_ID", description: "DocSet publisher identifier",
|
163
|
-
FastlaneCore::ConfigItem.new(key: :docset_publisher_name, env_name: "FL_APPLEDOC_DOCSET_PUBLISHER_NAME", description: "DocSet publisher name",
|
164
|
-
FastlaneCore::ConfigItem.new(key: :docset_min_xcode_version, env_name: "FL_APPLEDOC_DOCSET_MIN_XCODE_VERSION", description: "DocSet min. Xcode version",
|
165
|
-
FastlaneCore::ConfigItem.new(key: :docset_platform_family, env_name: "FL_APPLEDOC_DOCSET_PLATFORM_FAMILY", description: "DocSet platform family",
|
166
|
-
FastlaneCore::ConfigItem.new(key: :docset_cert_issuer, env_name: "FL_APPLEDOC_DOCSET_CERT_ISSUER", description: "DocSet certificate issuer",
|
167
|
-
FastlaneCore::ConfigItem.new(key: :docset_cert_signer, env_name: "FL_APPLEDOC_DOCSET_CERT_SIGNER", description: "DocSet certificate signer",
|
168
|
-
FastlaneCore::ConfigItem.new(key: :docset_bundle_filename, env_name: "FL_APPLEDOC_DOCSET_BUNDLE_FILENAME", description: "DocSet bundle filename",
|
169
|
-
FastlaneCore::ConfigItem.new(key: :docset_atom_filename, env_name: "FL_APPLEDOC_DOCSET_ATOM_FILENAME", description: "DocSet atom feed filename",
|
170
|
-
FastlaneCore::ConfigItem.new(key: :docset_xml_filename, env_name: "FL_APPLEDOC_DOCSET_XML_FILENAME", description: "DocSet xml feed filename",
|
171
|
-
FastlaneCore::ConfigItem.new(key: :docset_package_filename, env_name: "FL_APPLEDOC_DOCSET_PACKAGE_FILENAME", description: "DocSet package (.xar,.tgz) filename",
|
153
|
+
FastlaneCore::ConfigItem.new(key: :docset_bundle_id, env_name: "FL_APPLEDOC_DOCSET_BUNDLE_ID", description: "DocSet bundle identifier", optional: true),
|
154
|
+
FastlaneCore::ConfigItem.new(key: :docset_bundle_name, env_name: "FL_APPLEDOC_DOCSET_BUNDLE_NAME", description: "DocSet bundle name", optional: true),
|
155
|
+
FastlaneCore::ConfigItem.new(key: :docset_desc, env_name: "FL_APPLEDOC_DOCSET_DESC", description: "DocSet description", optional: true),
|
156
|
+
FastlaneCore::ConfigItem.new(key: :docset_copyright, env_name: "FL_APPLEDOC_DOCSET_COPYRIGHT", description: "DocSet copyright message", optional: true),
|
157
|
+
FastlaneCore::ConfigItem.new(key: :docset_feed_name, env_name: "FL_APPLEDOC_DOCSET_FEED_NAME", description: "DocSet feed name", optional: true),
|
158
|
+
FastlaneCore::ConfigItem.new(key: :docset_feed_url, env_name: "FL_APPLEDOC_DOCSET_FEED_URL", description: "DocSet feed URL", optional: true),
|
159
|
+
FastlaneCore::ConfigItem.new(key: :docset_feed_formats, env_name: "FL_APPLEDOC_DOCSET_FEED_FORMATS", description: "DocSet feed formats. Separated by a comma [atom,xml]", optional: true),
|
160
|
+
FastlaneCore::ConfigItem.new(key: :docset_package_url, env_name: "FL_APPLEDOC_DOCSET_PACKAGE_URL", description: "DocSet package (.xar) URL", optional: true),
|
161
|
+
FastlaneCore::ConfigItem.new(key: :docset_fallback_url, env_name: "FL_APPLEDOC_DOCSET_FALLBACK_URL", description: "DocSet fallback URL", optional: true),
|
162
|
+
FastlaneCore::ConfigItem.new(key: :docset_publisher_id, env_name: "FL_APPLEDOC_DOCSET_PUBLISHER_ID", description: "DocSet publisher identifier", optional: true),
|
163
|
+
FastlaneCore::ConfigItem.new(key: :docset_publisher_name, env_name: "FL_APPLEDOC_DOCSET_PUBLISHER_NAME", description: "DocSet publisher name", optional: true),
|
164
|
+
FastlaneCore::ConfigItem.new(key: :docset_min_xcode_version, env_name: "FL_APPLEDOC_DOCSET_MIN_XCODE_VERSION", description: "DocSet min. Xcode version", optional: true),
|
165
|
+
FastlaneCore::ConfigItem.new(key: :docset_platform_family, env_name: "FL_APPLEDOC_DOCSET_PLATFORM_FAMILY", description: "DocSet platform family", optional: true),
|
166
|
+
FastlaneCore::ConfigItem.new(key: :docset_cert_issuer, env_name: "FL_APPLEDOC_DOCSET_CERT_ISSUER", description: "DocSet certificate issuer", optional: true),
|
167
|
+
FastlaneCore::ConfigItem.new(key: :docset_cert_signer, env_name: "FL_APPLEDOC_DOCSET_CERT_SIGNER", description: "DocSet certificate signer", optional: true),
|
168
|
+
FastlaneCore::ConfigItem.new(key: :docset_bundle_filename, env_name: "FL_APPLEDOC_DOCSET_BUNDLE_FILENAME", description: "DocSet bundle filename", optional: true),
|
169
|
+
FastlaneCore::ConfigItem.new(key: :docset_atom_filename, env_name: "FL_APPLEDOC_DOCSET_ATOM_FILENAME", description: "DocSet atom feed filename", optional: true),
|
170
|
+
FastlaneCore::ConfigItem.new(key: :docset_xml_filename, env_name: "FL_APPLEDOC_DOCSET_XML_FILENAME", description: "DocSet xml feed filename", optional: true),
|
171
|
+
FastlaneCore::ConfigItem.new(key: :docset_package_filename, env_name: "FL_APPLEDOC_DOCSET_PACKAGE_FILENAME", description: "DocSet package (.xar,.tgz) filename", optional: true),
|
172
172
|
|
173
173
|
# OPTIONS
|
174
|
-
FastlaneCore::ConfigItem.new(key: :options, env_name: "FL_APPLEDOC_OPTIONS", description: "Documentation generation options",
|
175
|
-
FastlaneCore::ConfigItem.new(key: :crossref_format, env_name: "FL_APPLEDOC_OPTIONS_CROSSREF_FORMAT", description: "Cross reference template regex",
|
176
|
-
FastlaneCore::ConfigItem.new(key: :exit_threshold, env_name: "FL_APPLEDOC_OPTIONS_EXIT_THRESHOLD", description: "Exit code threshold below which 0 is returned",
|
177
|
-
FastlaneCore::ConfigItem.new(key: :docs_section_title, env_name: "FL_APPLEDOC_OPTIONS_DOCS_SECTION_TITLE", description: "Title of the documentation section (defaults to \"Programming Guides\"",
|
174
|
+
FastlaneCore::ConfigItem.new(key: :options, env_name: "FL_APPLEDOC_OPTIONS", description: "Documentation generation options", optional: true),
|
175
|
+
FastlaneCore::ConfigItem.new(key: :crossref_format, env_name: "FL_APPLEDOC_OPTIONS_CROSSREF_FORMAT", description: "Cross reference template regex", optional: true),
|
176
|
+
FastlaneCore::ConfigItem.new(key: :exit_threshold, env_name: "FL_APPLEDOC_OPTIONS_EXIT_THRESHOLD", description: "Exit code threshold below which 0 is returned", type: Integer, default_value: 2, optional: true),
|
177
|
+
FastlaneCore::ConfigItem.new(key: :docs_section_title, env_name: "FL_APPLEDOC_OPTIONS_DOCS_SECTION_TITLE", description: "Title of the documentation section (defaults to \"Programming Guides\"", optional: true),
|
178
178
|
|
179
179
|
# WARNINGS
|
180
|
-
FastlaneCore::ConfigItem.new(key: :warnings, env_name: "FL_APPLEDOC_WARNINGS", description: "Documentation generation warnings",
|
180
|
+
FastlaneCore::ConfigItem.new(key: :warnings, env_name: "FL_APPLEDOC_WARNINGS", description: "Documentation generation warnings", optional: true),
|
181
181
|
|
182
182
|
# MISCELLANEOUS
|
183
|
-
FastlaneCore::ConfigItem.new(key: :logformat, env_name: "FL_APPLEDOC_LOGFORMAT", description: "Log format [0-3]",
|
184
|
-
FastlaneCore::ConfigItem.new(key: :verbose, env_name: "FL_APPLEDOC_VERBOSE", description: "Log verbosity level [0-6,xcode]",
|
183
|
+
FastlaneCore::ConfigItem.new(key: :logformat, env_name: "FL_APPLEDOC_LOGFORMAT", description: "Log format [0-3]", type: Integer, optional: true),
|
184
|
+
FastlaneCore::ConfigItem.new(key: :verbose, env_name: "FL_APPLEDOC_VERBOSE", description: "Log verbosity level [0-6,xcode]", skip_type_validation: true, optional: true) # allow Integer, String
|
185
185
|
]
|
186
186
|
end
|
187
187
|
|
@@ -70,11 +70,12 @@ module Fastlane
|
|
70
70
|
optional: true),
|
71
71
|
FastlaneCore::ConfigItem.new(key: :app_id,
|
72
72
|
env_name: "FL_APTELIGENT_APP_ID",
|
73
|
-
|
74
|
-
|
73
|
+
description: "Apteligent App ID key e.g. 569f5c87cb99e10e00c7xxxx",
|
74
|
+
optional: false),
|
75
75
|
FastlaneCore::ConfigItem.new(key: :api_key,
|
76
76
|
env_name: "FL_APTELIGENT_API_KEY",
|
77
77
|
sensitive: true,
|
78
|
+
code_gen_sensitive: true,
|
78
79
|
description: "Apteligent App API key e.g. IXPQIi8yCbHaLliqzRoo065tH0lxxxxx",
|
79
80
|
optional: false)
|
80
81
|
]
|
@@ -126,6 +126,7 @@ module Fastlane
|
|
126
126
|
env_name: "FL_ARTIFACTORY_PASSWORD",
|
127
127
|
description: "Artifactory password",
|
128
128
|
sensitive: true,
|
129
|
+
code_gen_sensitive: true,
|
129
130
|
optional: true,
|
130
131
|
conflicting_options: [:api_key],
|
131
132
|
conflict_block: proc do |value|
|
@@ -135,6 +136,7 @@ module Fastlane
|
|
135
136
|
env_name: "FL_ARTIFACTORY_API_KEY",
|
136
137
|
description: "Artifactory API key",
|
137
138
|
sensitive: true,
|
139
|
+
code_gen_sensitive: true,
|
138
140
|
optional: true,
|
139
141
|
conflicting_options: [:username, :password],
|
140
142
|
conflict_block: proc do |value|
|
@@ -143,7 +145,7 @@ module Fastlane
|
|
143
145
|
FastlaneCore::ConfigItem.new(key: :properties,
|
144
146
|
env_name: "FL_ARTIFACTORY_PROPERTIES",
|
145
147
|
description: "Artifact properties hash",
|
146
|
-
|
148
|
+
type: Hash,
|
147
149
|
default_value: {},
|
148
150
|
optional: true),
|
149
151
|
FastlaneCore::ConfigItem.new(key: :ssl_pem_file,
|
@@ -154,7 +156,7 @@ module Fastlane
|
|
154
156
|
FastlaneCore::ConfigItem.new(key: :ssl_verify,
|
155
157
|
env_name: "FL_ARTIFACTORY_SSL_VERIFY",
|
156
158
|
description: "Verify SSL",
|
157
|
-
|
159
|
+
type: Boolean,
|
158
160
|
default_value: true,
|
159
161
|
optional: true),
|
160
162
|
FastlaneCore::ConfigItem.new(key: :proxy_username,
|
@@ -166,22 +168,19 @@ module Fastlane
|
|
166
168
|
env_name: "FL_ARTIFACTORY_PROXY_PASSWORD",
|
167
169
|
description: "Proxy password",
|
168
170
|
sensitive: true,
|
169
|
-
|
171
|
+
code_gen_sensitive: true,
|
170
172
|
optional: true),
|
171
173
|
FastlaneCore::ConfigItem.new(key: :proxy_address,
|
172
174
|
env_name: "FL_ARTIFACTORY_PROXY_ADDRESS",
|
173
175
|
description: "Proxy address",
|
174
|
-
default_value: nil,
|
175
176
|
optional: true),
|
176
177
|
FastlaneCore::ConfigItem.new(key: :proxy_port,
|
177
178
|
env_name: "FL_ARTIFACTORY_PROXY_PORT",
|
178
179
|
description: "Proxy port",
|
179
|
-
default_value: nil,
|
180
180
|
optional: true),
|
181
181
|
FastlaneCore::ConfigItem.new(key: :read_timeout,
|
182
182
|
env_name: "FL_ARTIFACTORY_READ_TIMEOUT",
|
183
183
|
description: "Read timeout",
|
184
|
-
default_value: nil,
|
185
184
|
optional: true)
|
186
185
|
]
|
187
186
|
end
|
@@ -126,39 +126,33 @@ module Fastlane
|
|
126
126
|
FastlaneCore::ConfigItem.new(key: :use_automatic_signing,
|
127
127
|
env_name: "FL_PROJECT_USE_AUTOMATIC_SIGNING",
|
128
128
|
description: "Defines if project should use automatic signing",
|
129
|
-
|
129
|
+
type: Boolean,
|
130
130
|
default_value: false),
|
131
131
|
FastlaneCore::ConfigItem.new(key: :team_id,
|
132
132
|
env_name: "FASTLANE_TEAM_ID",
|
133
133
|
optional: true,
|
134
|
-
description: "Team ID, is used when upgrading project",
|
135
|
-
is_string: true),
|
134
|
+
description: "Team ID, is used when upgrading project"),
|
136
135
|
FastlaneCore::ConfigItem.new(key: :targets,
|
137
136
|
env_name: "FL_PROJECT_SIGNING_TARGETS",
|
138
137
|
optional: true,
|
139
138
|
type: Array,
|
140
|
-
description: "Specify targets you want to toggle the signing mech. (default to all targets)",
|
141
|
-
is_string: false),
|
139
|
+
description: "Specify targets you want to toggle the signing mech. (default to all targets)"),
|
142
140
|
FastlaneCore::ConfigItem.new(key: :code_sign_identity,
|
143
141
|
env_name: "FL_CODE_SIGN_IDENTITY",
|
144
142
|
description: "Code signing identity type (iPhone Developer, iPhone Distribution)",
|
145
|
-
optional: true,
|
146
|
-
is_string: true),
|
143
|
+
optional: true),
|
147
144
|
FastlaneCore::ConfigItem.new(key: :profile_name,
|
148
145
|
env_name: "FL_PROVISIONING_PROFILE_SPECIFIER",
|
149
146
|
description: "Provisioning profile name to use for code signing",
|
150
|
-
optional: true,
|
151
|
-
is_string: true),
|
147
|
+
optional: true),
|
152
148
|
FastlaneCore::ConfigItem.new(key: :profile_uuid,
|
153
149
|
env_name: "FL_PROVISIONING_PROFILE",
|
154
150
|
description: "Provisioning profile UUID to use for code signing",
|
155
|
-
optional: true,
|
156
|
-
is_string: true),
|
151
|
+
optional: true),
|
157
152
|
FastlaneCore::ConfigItem.new(key: :bundle_identifier,
|
158
153
|
env_name: "FL_APP_IDENTIFIER",
|
159
154
|
description: "Application Product Bundle Identifier",
|
160
|
-
optional: true
|
161
|
-
is_string: true)
|
155
|
+
optional: true)
|
162
156
|
]
|
163
157
|
end
|
164
158
|
|