codemagic-cli-tools 0.40.5__tar.gz → 0.42.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/PKG-INFO +1 -1
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/pyproject.toml +1 -1
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/__version__.py +1 -1
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/__version__.py-e +1 -1
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/typed_cli_argument.py +5 -6
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xcodebuild.py +4 -4
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/arguments.py +49 -19
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_xcode_project/arguments.py +8 -2
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/android_keystore/argument_types.py +1 -2
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/app_store_connect.py +51 -11
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/argument_types.py +1 -2
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/xcode_project.py +10 -4
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/LICENSE +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/README.md +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/api_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/api_error.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/api_session.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/apps/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/apps/apps.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/builds/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/builds/builds.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/json_web_token_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/provisioning/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/provisioning/bundle_id_capabilities.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/provisioning/bundle_ids.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/provisioning/devices.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/provisioning/profiles.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/provisioning/signing_certificates.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/resource_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/testflight/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/testflight/beta_groups.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/type_declarations.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/app_store_version_localizations.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/app_store_version_submissions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/app_store_versions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/beta_app_review_submissions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/beta_build_localizations.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/pre_release_versions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/review_submission_items.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/app_store_connect/versioning/review_submissions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/app.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/app_store_version.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/app_store_version_localization.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/app_store_version_submission.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/beta_app_localization.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/beta_app_review_detail.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/beta_app_review_submission.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/beta_build_localization.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/beta_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/build.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/bundle_id.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/bundle_id_capability.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/device.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/enums.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/error_response.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/pre_release_version.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/profile.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/review_submission.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/review_submission_item.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/signing_certificate.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/action_callable.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/argument.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/argument_formatter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/argument_parser_builder.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/argument_properties.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/common_argument_types.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_app.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_help_formatter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_process.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_process_stream.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_types.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/colors.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/environment.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/data/jars/bundletool-all-1.13.1.jar +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/errors.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/firebase_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/google_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resource_managers/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resource_managers/mixins/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resource_managers/mixins/acting_manager_mixin.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resource_managers/mixins/listing_manager_mixin.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resource_managers/release_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resource_managers/resource_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/identifiers/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/identifiers/app_identifier.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/identifiers/resource_identifier.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/release.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/release_notes.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/api_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/api_error.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/resources/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/resources/edit.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/resources/enums.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/resources/resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google_play/resources/track.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/mixins/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/mixins/path_finder.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/mixins/running_cli_app.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/mixins/str_converter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/altool/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/altool/altool.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/altool/altool_result.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/altool/enums.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/android_signing_info.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/application_package/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/application_package/abstract_package.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/application_package/ipa.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/application_package/macos_package.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/bundle_id_detector.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/certificate.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/certificate_attributes.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/certificate_p12_exporter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/code_sign_entitlements.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/code_signing_settings_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/enums.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/export_options.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/json_serializable.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/junit/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/junit/definitions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/junit/printer.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/keystore.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/pbx_project.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/private_key.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/provisioning_profile.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/simulator/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/simulator/core_simulator_service.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/simulator/runtime.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/simulator/simulator.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/table/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/table/line.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/table/table.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xcode.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xcpretty.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xctests/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xctests/collector.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xctests/converter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xctests/xcresult.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xctests/xcresulttool.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/py.typed +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/scripts/code_signing_manager.rb +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/shell_tools/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/shell_tools/abstract_shell_tool.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/shell_tools/keytool.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/abstract_base_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/app_store_version_localizations_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/app_store_version_submissions_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/app_store_versions_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/apps_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/beta_app_review_submissions_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/beta_build_localizations_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/beta_groups_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/builds_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/review_submission_items_actions_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/action_groups/review_submissions_actions_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/actions/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/actions/publish_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/errors.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/resource_manager_mixin.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_app_store_connect/resource_printer.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/_xcode_project/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/android_app_bundle.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/android_keystore/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/android_keystore/__main__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/android_keystore/android_keystore.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/android_keystore/arguments.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/codemagic_cli_tools.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/__main__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/action_groups/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/action_groups/firebase_action_groups.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/action_groups/releases_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/actions/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/actions/get_latest_build_version_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/arguments.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/errors.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/firebase_app_distribution.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/firebase_app_distribution_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/firebase_app_distribution/resource_printer.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/git_changelog.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/__main__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/action_groups/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/action_groups/google_play_action_groups.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/action_groups/tracks_action_group.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/actions/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/actions/get_latest_build_number_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/argument_types.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/arguments.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/errors.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/google_play.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/google_play/google_play_base_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/keychain.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/universal_apk_generator.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/auditing/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/auditing/base_auditor.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/auditing/exception_auditor.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/auditing/http_request_auditor.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/backwards_file_reader.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/decorators.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/levenshtein_distance.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/log.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/utilities/versions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/apps/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/apps/test_apps.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/builds/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/builds/test_builds.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/test_bundle_id_capabilities.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/test_bundle_ids.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/test_devices.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/test_profiles.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/provisioning/test_signing_certificates.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/resource_manager_test_base.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/test_api_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/test_api_session.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/test_json_web_token_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/test_resource_manager.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/testflight/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/testflight/test_beta_groups.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_app_store_version_localizations.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_app_store_version_submissions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_app_store_versions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_beta_app_review_submissions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_beta_build_localizations.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_pre_release_versions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_review_submission_items.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/app_store_connect/versioning/test_review_submissions.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/enums/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/enums/test_profile_type.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/app_store_version.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/build.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/bundle_id.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/bundle_id_capability.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/certificate.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/device.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/error_response.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/error_response_with_links.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/mock_resource.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/pre_release_version.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/mocks/profile.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_app_store_version_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_build_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_bundle_id_capability_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_bundle_id_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_device_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_error_response.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_pre_release_version_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_profile_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_signing_certificate_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/apple/resources/test_undefined_resource_fields.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/argument/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/argument/common_argument_types/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/argument/common_argument_types/test_iso_8601_datetime.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/argument/common_argument_types/test_maybe_dir.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/argument/test_argument.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/mocks/utf-8-sample.txt +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/test_cli_process.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/cli/test_decorators.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google/test_firebase_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google/test_live_firebase_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/mocks/edit.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/mocks/track.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/test_edit_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/test_resource_print.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/resources/test_track_resource.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/google_play/test_api_client.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mixins/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mixins/test_string_converter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mocks/certificate.asn1 +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mocks/encrypted.pem +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mocks/encrypted.pem.pub +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mocks/unencrypted.pem +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/mocks/unencrypted.pem.pub +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/mocks/mock_failure_auth.txt +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/mocks/mock_failure_other.txt +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/mocks/mock_upload_success.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/mocks/mock_validation_failure.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/test_altool_result.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/altool/test_altool_retrying.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/enums/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/enums/test_resource_enum.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/junit/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/junit/mocks/testsuite.xml +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/junit/test_xml_generation.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/certificate-no-password.p12 +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/certificate.p12 +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/codemagic_io_wildcard_development.mobileprovision +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/export_options.plist +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock.ipa +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock.xcarchive/Products/Applications/Capybara App.app/Capybara App +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock_0_icloud_container_environments.plist +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock_1_icloud_container_environments.plist +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock_2_icloud_container_environments.plist +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock_openssh_private_key +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock_rsa_private_key +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/mocks/mock_xcode/Contents/version.plist +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/simulator/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/simulator/mocks/devices.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/simulator/mocks/simulator.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/simulator/test_runtime.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/simulator/test_simulator.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_certificate.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_certificate_attributes.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_code_sign_entitlements.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_export_options.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_private_key.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_provisioning_profile.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_table.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/test_xcode.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_1NtPgUPcB1A83X977l5Q91ElstUeVDnqAhumk_VJG8DIS4GA1sb8ElPPHZZGYEHmNvnHU1VVaPDCw1tI8n3uXg__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_5rAUs3HknUI7DU8Jyc5RlFcosqCXTOV-qwOaOE1Mul_ppK8QCta-NSxxCdtVg6i12km4zTR5l0SjgzfHGUNxog__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_97T9qQZ3dEI1oDS6NvYTPcFk_jUXFJ0NRwyd5FZ2S585JGMtlqbF28Hc85yeifgKEnNoInoW93Za9c5QJCspeQ__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_DVcJZnHFaQQlzl8czovv7RuDRQIToEr5_3lLe-Mn1Sm6VreJ5xoXEFqBaWNv0XRmSg00NJ77XzQKgddhfkuk7w__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_FZMbIp5VAUEiJv1wUUM-K78Dtmb4o-titbTusDJqRuarbS9OatzAykygXo4NUqEoR9sxCIoeu8VDioQmbba6mw__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_Hj6SOUxY1APmxdQEA2HdqbA52GD3WJE571nqr_Z-w8vi_buxP-GUjNxCsGYQvnKnnwlyykwxY-KJmjqKYmPyXQ__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_NnCmQ8rMqVyUBgL3ZDjfjJ9Vt1AMGeMzZPkDH30rGMYer0pFDpp4UDZlCEHRImO-48LdC_KdcbjP70IZA6zKUQ__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_YK9aPHVT-grv_ZVooRT79GBO9n82BNogkuWVzFO6itJEtbtsRTQpK2-0ZDLot1JpCfPb26aZwEZjeb9G4GHiBQ__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0__H1_RrdBT9b-ZhkWCQiRKpHlwURmyWUudeOhj5UslLXhXl8mr9w5CGqdobi9A5wCVEIRMsO4yuFyzx2gMPr-_Q__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/0_evvkuGf92MVrmIvhr07911LuRTiPBKDjIQ0q_7L-mPGGYkWVKMBPQ5pB5lbjoaOnvr0fpC9k003EunfwSdss2g__.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/mocks/actions_invocation_record.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/test_collector.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/test_converter.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/models/xctests/test_xcresult.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/mocks/android.ks +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/mocks/non-rfc-cert-keystore.jks +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/mocks/non-rfc-cert-keystore.p12 +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/mocks/rfc-cert-keystore.jks +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/mocks/rfc-cert-keystore.p12 +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/test_get_certificate.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/test_get_certificates.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/shell_tools/keytool/test_validate.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/arguments/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/arguments/test_beta_build_localizations.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/conftest.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/mocks/AuthKeyMock.p8 +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/test_from_cli_args.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/app_store_connect/test_publish_action.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/mocks/firebase_releases.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/mocks/google_play_tracks.json +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/test_android_app_bundle.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/test_firebase_app_distribution.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/test_google_play.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/test_keychain.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/tools/test_universal_apk_generator.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/utilities/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/utilities/decorators/__init__.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/utilities/decorators/test_deprecated.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/utilities/test_backwards_file_reader.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/utilities/test_levenshtein_distance.py +0 -0
- {codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/tests/utilities/test_versions.py +0 -0
|
@@ -85,8 +85,8 @@ class TypedCliArgument(Generic[T], metaclass=TypedCliArgumentMeta):
|
|
|
85
85
|
|
|
86
86
|
def __init__(self, raw_value: str, from_environment=False):
|
|
87
87
|
self._raw_value = raw_value
|
|
88
|
-
self.value: T = self._parse_value()
|
|
89
88
|
self._from_environment = from_environment
|
|
89
|
+
self.value: T = self._parse_value()
|
|
90
90
|
|
|
91
91
|
@classmethod
|
|
92
92
|
def resolve_value(cls, argument_instance: Optional[Union[T, TypedCliArgument]]) -> T:
|
|
@@ -119,10 +119,9 @@ class TypedCliArgument(Generic[T], metaclass=TypedCliArgumentMeta):
|
|
|
119
119
|
def _is_valid(cls, value: T) -> bool:
|
|
120
120
|
return bool(value)
|
|
121
121
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
if not cls._is_valid(value):
|
|
122
|
+
def _apply_type(self, non_typed_value: str) -> T:
|
|
123
|
+
value = self.argument_type(non_typed_value) # type: ignore
|
|
124
|
+
if not self._is_valid(value):
|
|
126
125
|
raise argparse.ArgumentTypeError(f'Provided value "{non_typed_value}" is not valid')
|
|
127
126
|
return value
|
|
128
127
|
|
|
@@ -239,4 +238,4 @@ class EnvironmentArgumentValue(TypedCliArgument[T], metaclass=TypedCliArgumentMe
|
|
|
239
238
|
return self._raw_value
|
|
240
239
|
|
|
241
240
|
def __repr__(self):
|
|
242
|
-
return self._raw_value
|
|
241
|
+
return f"{self.__class__.__name__}({self._raw_value!r})"
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/models/xcodebuild.py
RENAMED
|
@@ -176,7 +176,7 @@ class Xcodebuild(RunningCliAppMixin):
|
|
|
176
176
|
|
|
177
177
|
def _construct_test_command(
|
|
178
178
|
self,
|
|
179
|
-
sdk: str,
|
|
179
|
+
sdk: Optional[str],
|
|
180
180
|
simulators: List[Simulator],
|
|
181
181
|
only_testing: Optional[str],
|
|
182
182
|
enable_code_coverage: bool,
|
|
@@ -188,6 +188,7 @@ class Xcodebuild(RunningCliAppMixin):
|
|
|
188
188
|
max_devices_flag = "-maximum-concurrent-test-device-destinations"
|
|
189
189
|
max_sims_flag = "-maximum-concurrent-test-simulator-destinations"
|
|
190
190
|
|
|
191
|
+
sdk_args = ["-sdk", sdk] if sdk else []
|
|
191
192
|
destinations_args = [["-destination", f"id={s.udid}"] for s in simulators]
|
|
192
193
|
only_testing_args = ["-only-testing", only_testing] if only_testing else []
|
|
193
194
|
max_devices_args = [max_devices_flag, str(max_devices)] if max_devices else []
|
|
@@ -197,8 +198,7 @@ class Xcodebuild(RunningCliAppMixin):
|
|
|
197
198
|
return [
|
|
198
199
|
*self._construct_base_command(custom_flags),
|
|
199
200
|
*only_testing_args,
|
|
200
|
-
|
|
201
|
-
sdk,
|
|
201
|
+
*sdk_args,
|
|
202
202
|
*coverage_args,
|
|
203
203
|
*reduce(add, destinations_args, []),
|
|
204
204
|
*max_devices_args,
|
|
@@ -280,7 +280,7 @@ class Xcodebuild(RunningCliAppMixin):
|
|
|
280
280
|
|
|
281
281
|
def test(
|
|
282
282
|
self,
|
|
283
|
-
sdk: str,
|
|
283
|
+
sdk: Optional[str],
|
|
284
284
|
simulators: List[Simulator],
|
|
285
285
|
*,
|
|
286
286
|
enable_code_coverage: bool = False,
|
|
@@ -2,6 +2,7 @@ import argparse
|
|
|
2
2
|
import json
|
|
3
3
|
import pathlib
|
|
4
4
|
import re
|
|
5
|
+
import shlex
|
|
5
6
|
from argparse import ArgumentTypeError
|
|
6
7
|
from collections import Counter
|
|
7
8
|
from dataclasses import dataclass
|
|
@@ -80,9 +81,8 @@ class Types:
|
|
|
80
81
|
)
|
|
81
82
|
environment_variable_key = "APP_STORE_CONNECT_PRIVATE_KEY"
|
|
82
83
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
pem_private_key = cls.argument_type(non_typed_value)
|
|
84
|
+
def _apply_type(self, non_typed_value: str) -> str:
|
|
85
|
+
pem_private_key = self.argument_type(non_typed_value)
|
|
86
86
|
try:
|
|
87
87
|
_ = load_pem_private_key(pem_private_key.encode(), None)
|
|
88
88
|
except ValueError as ve:
|
|
@@ -190,10 +190,9 @@ class Types:
|
|
|
190
190
|
),
|
|
191
191
|
)
|
|
192
192
|
|
|
193
|
-
|
|
194
|
-
def _apply_type(cls, non_typed_value: str) -> datetime:
|
|
193
|
+
def _apply_type(self, non_typed_value: str) -> datetime:
|
|
195
194
|
value = cli.CommonArgumentTypes.iso_8601_datetime(non_typed_value)
|
|
196
|
-
|
|
195
|
+
self.validate(value)
|
|
197
196
|
return value
|
|
198
197
|
|
|
199
198
|
class AppStoreVersionInfoArgument(cli.EnvironmentArgumentValue[AppStoreVersionInfo]):
|
|
@@ -209,8 +208,7 @@ class Types:
|
|
|
209
208
|
},
|
|
210
209
|
)
|
|
211
210
|
|
|
212
|
-
|
|
213
|
-
def _apply_type(cls, non_typed_value: str) -> AppStoreVersionInfo:
|
|
211
|
+
def _apply_type(self, non_typed_value: str) -> AppStoreVersionInfo:
|
|
214
212
|
try:
|
|
215
213
|
given_app_store_version_info = json.loads(non_typed_value)
|
|
216
214
|
assert isinstance(given_app_store_version_info, dict)
|
|
@@ -272,8 +270,7 @@ class Types:
|
|
|
272
270
|
],
|
|
273
271
|
)
|
|
274
272
|
|
|
275
|
-
|
|
276
|
-
def _apply_type(cls, non_typed_value: str) -> List[AppStoreVersionLocalizationInfo]:
|
|
273
|
+
def _apply_type(self, non_typed_value: str) -> List[AppStoreVersionLocalizationInfo]:
|
|
277
274
|
try:
|
|
278
275
|
given_localization_infos = json.loads(non_typed_value)
|
|
279
276
|
assert isinstance(given_localization_infos, list)
|
|
@@ -323,8 +320,7 @@ class Types:
|
|
|
323
320
|
environment_variable_key = "APP_STORE_CONNECT_BETA_BUILD_LOCALIZATIONS"
|
|
324
321
|
example_value = json.dumps([{"locale": "en-US", "whats_new": "What's new in English"}])
|
|
325
322
|
|
|
326
|
-
|
|
327
|
-
def _apply_type(cls, non_typed_value: str) -> List[BetaBuildInfo]:
|
|
323
|
+
def _apply_type(self, non_typed_value: str) -> List[BetaBuildInfo]:
|
|
328
324
|
try:
|
|
329
325
|
given_beta_build_localizations = json.loads(non_typed_value)
|
|
330
326
|
assert isinstance(given_beta_build_localizations, list)
|
|
@@ -357,6 +353,21 @@ class Types:
|
|
|
357
353
|
|
|
358
354
|
return beta_build_infos
|
|
359
355
|
|
|
356
|
+
class DeviceUdidsArgument(cli.EnvironmentArgumentValue[List[str]]):
|
|
357
|
+
argument_type = List[str]
|
|
358
|
+
environment_variable_key = "APP_STORE_CONNECT_DEVICE_UDIDS"
|
|
359
|
+
example_value = "00000000-000000000000001E"
|
|
360
|
+
|
|
361
|
+
def _apply_type(self, non_typed_value: str) -> List[str]:
|
|
362
|
+
is_from_cli = not (self._is_from_environment() or self._is_from_file() or self._from_environment)
|
|
363
|
+
if is_from_cli:
|
|
364
|
+
udids = [non_typed_value.strip()]
|
|
365
|
+
else:
|
|
366
|
+
udids = [udid.strip() for udid in shlex.split(non_typed_value) if udid.strip()]
|
|
367
|
+
if udids and all(udids):
|
|
368
|
+
return udids
|
|
369
|
+
raise argparse.ArgumentTypeError(f'Provided value "{non_typed_value}" is not valid')
|
|
370
|
+
|
|
360
371
|
|
|
361
372
|
_API_DOCS_REFERENCE = f"Learn more at {AppStoreConnectApiClient.API_KEYS_DOCS_URL}."
|
|
362
373
|
_LOCALE_CODES_URL = (
|
|
@@ -1212,19 +1223,24 @@ class DeviceArgument(cli.Argument):
|
|
|
1212
1223
|
)
|
|
1213
1224
|
DEVICE_NAME = cli.ArgumentProperties(
|
|
1214
1225
|
key="device_name",
|
|
1215
|
-
flags=("--name",),
|
|
1216
|
-
description="
|
|
1226
|
+
flags=("--name", "-n"),
|
|
1227
|
+
description="Common name of Devices",
|
|
1217
1228
|
argparse_kwargs={"required": True},
|
|
1218
1229
|
)
|
|
1219
1230
|
DEVICE_NAME_OPTIONAL = cli.ArgumentProperties.duplicate(
|
|
1220
1231
|
DEVICE_NAME,
|
|
1221
1232
|
argparse_kwargs={"required": False},
|
|
1222
1233
|
)
|
|
1223
|
-
|
|
1224
|
-
key="
|
|
1225
|
-
flags=("--udid",),
|
|
1226
|
-
|
|
1227
|
-
|
|
1234
|
+
DEVICE_UDIDS = cli.ArgumentProperties(
|
|
1235
|
+
key="device_udids",
|
|
1236
|
+
flags=("--udid", "-u"),
|
|
1237
|
+
type=Types.DeviceUdidsArgument,
|
|
1238
|
+
description=f"Device ID (UDID), for example: {Types.DeviceUdidsArgument.example_value}",
|
|
1239
|
+
argparse_kwargs={
|
|
1240
|
+
"required": False,
|
|
1241
|
+
"nargs": "+",
|
|
1242
|
+
"metavar": "UDID",
|
|
1243
|
+
},
|
|
1228
1244
|
)
|
|
1229
1245
|
DEVICE_STATUS = cli.ArgumentProperties(
|
|
1230
1246
|
key="device_status",
|
|
@@ -1236,6 +1252,20 @@ class DeviceArgument(cli.Argument):
|
|
|
1236
1252
|
"choices": list(DeviceStatus),
|
|
1237
1253
|
},
|
|
1238
1254
|
)
|
|
1255
|
+
IGNORE_REGISTRATION_ERRORS = cli.ArgumentProperties(
|
|
1256
|
+
key="ignore_registration_errors",
|
|
1257
|
+
flags=("--ignore-registration-errors",),
|
|
1258
|
+
type=bool,
|
|
1259
|
+
description=(
|
|
1260
|
+
"Ignore device registration failures, e.g. invalid UDID or duplicate UDID submission. "
|
|
1261
|
+
"Proceed registering remaining UDIDs when the flag is set."
|
|
1262
|
+
),
|
|
1263
|
+
argparse_kwargs={
|
|
1264
|
+
"required": False,
|
|
1265
|
+
"action": "store_true",
|
|
1266
|
+
"default": False,
|
|
1267
|
+
},
|
|
1268
|
+
)
|
|
1239
1269
|
|
|
1240
1270
|
|
|
1241
1271
|
class CertificateArgument(cli.Argument):
|
|
@@ -33,8 +33,7 @@ class CustomExportOptions(cli.EnvironmentArgumentValue[dict]):
|
|
|
33
33
|
},
|
|
34
34
|
)
|
|
35
35
|
|
|
36
|
-
|
|
37
|
-
def _apply_type(cls, non_typed_value: str) -> Dict:
|
|
36
|
+
def _apply_type(self, non_typed_value: str) -> Dict:
|
|
38
37
|
try:
|
|
39
38
|
given_custom_export_options = json.loads(non_typed_value)
|
|
40
39
|
if not isinstance(given_custom_export_options, dict):
|
|
@@ -320,6 +319,13 @@ class TestArgument(cli.Argument):
|
|
|
320
319
|
description="Name of the SDK that should be used for building the application for testing.",
|
|
321
320
|
argparse_kwargs={"required": False, "default": "iphonesimulator"},
|
|
322
321
|
)
|
|
322
|
+
OMIT_TEST_SDK = cli.ArgumentProperties(
|
|
323
|
+
key="omit_test_sdk",
|
|
324
|
+
flags=("--omit-sdk",),
|
|
325
|
+
type=bool,
|
|
326
|
+
description="Do not pass -sdk argument to `xcodebuild test` command",
|
|
327
|
+
argparse_kwargs={"required": False, "action": "store_true"},
|
|
328
|
+
)
|
|
323
329
|
|
|
324
330
|
|
|
325
331
|
class TestResultArgument(cli.Argument):
|
|
@@ -4,8 +4,7 @@ from codemagic import cli
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
class Password(cli.EnvironmentArgumentValue[str]):
|
|
7
|
-
|
|
8
|
-
def _apply_type(cls, non_typed_value: str) -> str:
|
|
7
|
+
def _apply_type(self, non_typed_value: str) -> str:
|
|
9
8
|
value = super()._apply_type(non_typed_value)
|
|
10
9
|
if len(value) < 6:
|
|
11
10
|
raise argparse.ArgumentTypeError("Minimum required password length is 6 characters")
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/app_store_connect.py
RENAMED
|
@@ -492,25 +492,65 @@ class AppStoreConnect(
|
|
|
492
492
|
"register-device",
|
|
493
493
|
BundleIdArgument.PLATFORM,
|
|
494
494
|
DeviceArgument.DEVICE_NAME,
|
|
495
|
-
DeviceArgument.
|
|
495
|
+
DeviceArgument.DEVICE_UDIDS,
|
|
496
|
+
DeviceArgument.IGNORE_REGISTRATION_ERRORS,
|
|
496
497
|
)
|
|
497
498
|
def register_device(
|
|
498
499
|
self,
|
|
499
500
|
platform: BundleIdPlatform,
|
|
500
501
|
device_name: str,
|
|
501
|
-
device_udid: str,
|
|
502
|
+
device_udid: Optional[str] = None, # Deprecated in https://github.com/codemagic-ci-cd/cli-tools/pull/331
|
|
503
|
+
device_udids: Optional[
|
|
504
|
+
Union[
|
|
505
|
+
str,
|
|
506
|
+
Types.DeviceUdidsArgument,
|
|
507
|
+
Sequence[Union[str, Types.DeviceUdidsArgument]],
|
|
508
|
+
]
|
|
509
|
+
] = None,
|
|
510
|
+
ignore_registration_errors: bool = DeviceArgument.IGNORE_REGISTRATION_ERRORS.get_default(),
|
|
502
511
|
should_print: bool = True,
|
|
503
|
-
) -> Device:
|
|
512
|
+
) -> List[Device]:
|
|
504
513
|
"""
|
|
505
|
-
Register
|
|
514
|
+
Register new Devices for app development
|
|
506
515
|
"""
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
516
|
+
if not device_udids and not device_udid:
|
|
517
|
+
DeviceArgument.DEVICE_UDIDS.raise_argument_error("At least one device UDID is required")
|
|
518
|
+
|
|
519
|
+
if device_udids is None:
|
|
520
|
+
device_udids = []
|
|
521
|
+
if isinstance(device_udids, str) or isinstance(device_udids, Types.DeviceUdidsArgument):
|
|
522
|
+
device_udids = [device_udids]
|
|
523
|
+
|
|
524
|
+
if device_udid:
|
|
525
|
+
device_udids = [device_udid, *device_udids]
|
|
526
|
+
|
|
527
|
+
device_udids_values: List[str] = []
|
|
528
|
+
for device_udids in device_udids:
|
|
529
|
+
if isinstance(device_udids, Types.DeviceUdidsArgument):
|
|
530
|
+
device_udids_values.extend(device_udids.value)
|
|
531
|
+
else:
|
|
532
|
+
device_udids_values.append(device_udids)
|
|
533
|
+
|
|
534
|
+
registered_devices = []
|
|
535
|
+
for device_udid in device_udids_values:
|
|
536
|
+
try:
|
|
537
|
+
device = self._create_resource(
|
|
538
|
+
self.api_client.devices,
|
|
539
|
+
should_print,
|
|
540
|
+
udid=device_udid,
|
|
541
|
+
name=device_name,
|
|
542
|
+
platform=platform,
|
|
543
|
+
)
|
|
544
|
+
except AppStoreConnectError as error:
|
|
545
|
+
if not ignore_registration_errors:
|
|
546
|
+
raise error
|
|
547
|
+
self.logger.error(Colors.YELLOW(f"Failed to register a device: {error.args[0]}"))
|
|
548
|
+
else:
|
|
549
|
+
registered_devices.append(device)
|
|
550
|
+
|
|
551
|
+
self.echo("") if should_print else None
|
|
552
|
+
|
|
553
|
+
return registered_devices
|
|
514
554
|
|
|
515
555
|
@cli.action(
|
|
516
556
|
"create-bundle-id",
|
|
@@ -9,8 +9,7 @@ class CredentialsArgument(cli.EnvironmentArgumentValue[dict]):
|
|
|
9
9
|
argument_type = dict
|
|
10
10
|
environment_variable_key = "FIREBASE_SERVICE_ACCOUNT_CREDENTIALS"
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
def _apply_type(cls, non_typed_value: str) -> Dict[str, str]:
|
|
12
|
+
def _apply_type(self, non_typed_value: str) -> Dict[str, str]:
|
|
14
13
|
try:
|
|
15
14
|
value = json.loads(non_typed_value)
|
|
16
15
|
except json.decoder.JSONDecodeError as e:
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/tools/xcode_project.py
RENAMED
|
@@ -431,6 +431,7 @@ class XcodeProject(cli.CliApp, PathFinderMixin):
|
|
|
431
431
|
TestArgument.TEST_DEVICES,
|
|
432
432
|
TestArgument.TEST_ONLY,
|
|
433
433
|
TestArgument.TEST_SDK,
|
|
434
|
+
TestArgument.OMIT_TEST_SDK,
|
|
434
435
|
TestResultArgument.OUTPUT_DIRECTORY,
|
|
435
436
|
TestResultArgument.OUTPUT_EXTENSION,
|
|
436
437
|
XcodeArgument.TEST_FLAGS,
|
|
@@ -459,6 +460,7 @@ class XcodeProject(cli.CliApp, PathFinderMixin):
|
|
|
459
460
|
output_dir: pathlib.Path = TestResultArgument.OUTPUT_DIRECTORY.get_default(),
|
|
460
461
|
output_extension: str = TestResultArgument.OUTPUT_EXTENSION.get_default(),
|
|
461
462
|
graceful_exit: bool = False,
|
|
463
|
+
omit_test_sdk: bool = False,
|
|
462
464
|
):
|
|
463
465
|
"""
|
|
464
466
|
Run unit or UI tests for given Xcode project or workspace
|
|
@@ -473,7 +475,7 @@ class XcodeProject(cli.CliApp, PathFinderMixin):
|
|
|
473
475
|
xcresult_collector.ignore_results(Xcode.DERIVED_DATA_PATH)
|
|
474
476
|
try:
|
|
475
477
|
xcodebuild.test(
|
|
476
|
-
test_sdk,
|
|
478
|
+
None if omit_test_sdk else test_sdk,
|
|
477
479
|
simulators,
|
|
478
480
|
enable_code_coverage=not disable_code_coverage,
|
|
479
481
|
only_testing=test_only,
|
|
@@ -669,14 +671,18 @@ class XcodeProject(cli.CliApp, PathFinderMixin):
|
|
|
669
671
|
f'File "{export_options_plist}" is not a valid property list',
|
|
670
672
|
)
|
|
671
673
|
|
|
672
|
-
def _get_test_destinations(
|
|
674
|
+
def _get_test_destinations(
|
|
675
|
+
self,
|
|
676
|
+
test_sdk: str | None,
|
|
677
|
+
requested_devices: Optional[List[str]],
|
|
678
|
+
) -> List[Simulator]:
|
|
673
679
|
if requested_devices:
|
|
674
680
|
try:
|
|
675
681
|
simulators = Simulator.find_simulators(requested_devices)
|
|
676
682
|
except ValueError as ve:
|
|
677
683
|
raise TestArgument.TEST_DEVICES.raise_argument_error(str(ve)) from ve
|
|
678
|
-
elif "macos" in test_sdk.lower():
|
|
679
|
-
# macOS tests
|
|
684
|
+
elif test_sdk and "macos" in test_sdk.lower():
|
|
685
|
+
# macOS tests run on the host machine and no test destinations are required
|
|
680
686
|
simulators = []
|
|
681
687
|
else:
|
|
682
688
|
simulators = [self.get_default_test_destination(should_print=False)]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/__init__.py
RENAMED
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/app.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/build.py
RENAMED
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/bundle_id.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/device.py
RENAMED
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/enums.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/profile.py
RENAMED
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/apple/resources/resource.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/argument/argument.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_help_formatter.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/cli/cli_process_stream.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/firebase_client.py
RENAMED
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/google_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemagic_cli_tools-0.40.5 → codemagic_cli_tools-0.42.0}/src/codemagic/google/resources/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|