ruby-jss 2.0.0a10 → 2.0.0b3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README-2.0.0.md +53 -32
- data/lib/jamf/api/classic/api_objects/computer.rb +18 -15
- data/lib/jamf/api/classic/api_objects/computer_group.rb +1 -0
- data/lib/jamf/api/classic/api_objects/criteriable.rb +1 -1
- data/lib/jamf/api/classic/api_objects/mdm.rb +40 -24
- data/lib/jamf/api/classic/api_objects/mobile_device.rb +8 -12
- data/lib/jamf/api/classic/api_objects/mobile_device_application.rb +35 -6
- data/lib/jamf/api/classic/api_objects/policy.rb +8 -17
- data/lib/jamf/api/classic/api_objects/script.rb +1 -1
- data/lib/jamf/api/classic/base_classes/advanced_search.rb +5 -5
- data/lib/jamf/api/classic/base_classes/api_object.rb +26 -26
- data/lib/jamf/api/classic/base_classes/extension_attribute.rb +2 -2
- data/lib/jamf/api/classic/base_classes/group.rb +57 -40
- data/lib/jamf/api/connection/attributes.rb +51 -4
- data/lib/jamf/api/connection/classic_api.rb +2 -1
- data/lib/jamf/api/connection/connect.rb +49 -2
- data/lib/jamf/api/connection/constants.rb +6 -0
- data/lib/jamf/api/connection/jamf_pro_api.rb +6 -2
- data/lib/jamf/api/connection/token.rb +10 -3
- data/lib/jamf/api/connection.rb +1 -1
- data/lib/jamf/api/jamf_pro/api_objects/inventory_preload_record.rb +9 -1
- data/lib/jamf/api/jamf_pro/base_classes/oapi_object.rb +21 -9
- data/lib/jamf/api/jamf_pro/mixins/macos_managed_updates.rb +178 -0
- data/lib/jamf/api/jamf_pro/mixins/prestage.rb +17 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/access_groups_preview_search_results.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/access_groups_v2_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/account.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/{access_groups_search_results.rb → account_driven_user_enrollment_session_token_settings.rb} +14 -14
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_group.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_v4.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/active_patch_history.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/active_patch_history_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/active_patch_summary.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/admin_account.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_search.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_search_criteria_choices.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_search_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_user_content_search.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_user_content_search_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/android_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_error.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_error_cause.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_analytics_setting.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_dynamics_config.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_path.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_request_form_input_field.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_request_form_input_field_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_request_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/apple_tv_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/application_attributes.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/application_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/assign_remove_profile_response_sync_state.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/attributes.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_account.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_account_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_token.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_token_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/authorization.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/authorization_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/{deprecated_configuration_search_results.rb → available_updates.rb} +12 -20
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_ad_migration_report_process_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_ad_migration_report_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_configuration_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_configuration_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_mappings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_server_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_server_configuration_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_server_configuration_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/branding_image_url.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/building.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/building_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cache_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/categories_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/category.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_details.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_identity_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_key.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_record.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/classic_ldap_mappings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/client_check_in_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/client_check_in_v3.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_id_p_common.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_id_p_common_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_id_p_common_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_connection_pool_statistics.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_connection_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_keystore.rb +1 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_keystore_file.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_mappings_request.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_mappings_response.rb +1 -9
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_server_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_server_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_server_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_application.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_attachment.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_certificate.rb +26 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_configuration_profile.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_alert.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_cache_detail.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_data_migration_error.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_data_migration_error_user_info.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_alert.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_capabilities.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_local_network.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_disk.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_disk_encryption.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_extension_attribute.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_font.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_general.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_general_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/{mdm_signing_certificate.rb → computer_group.rb} +18 -24
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_hardware.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_hardware_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_ibeacon.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/{computer_inventory_response.rb → computer_inventory.rb} +4 -5
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_collection_preferences.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_collection_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_recovery_lock_password_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_search_results.rb +4 -5
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_update_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_licensed_software.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_local_user_account.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_location.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_mdm_capability.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_operating_system.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_operating_system_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_overview.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_package_receipts.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition_encryption.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition_file_vault2_state.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_plugin.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_search_results_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_printer.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_purchase.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_remote_management.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_section.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_security.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_service.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_software_update.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_storage.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_user_and_location.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/computers_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/configuration_profile.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/configuration_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_candidate_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_status_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_update_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/country.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/country_codes.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/create_path.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/csa_token.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/current_account.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/current_authorization.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/data_roaming_setting.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/database_password.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/day_of_week.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/delete_user_command.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/department.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/departments_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/deployment_task.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/deployment_task_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_communication_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_compliance_information.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_device.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_device_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_disown_body.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_disown_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_instance.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_instance_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_instance_sync_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_token.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/diagnostic_submission_setting.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_exclusions.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_limitations.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_scope.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enable_lost_mode_command.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/engage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_access_group_preview.rb +12 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_access_group_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_branding_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_dependencies.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_dependency.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_ldap_group_access.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_ldap_auth.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_list.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_sso_auth.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_text.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_search_results_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_v2.rb +3 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_method.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_process_text_object.rb +5 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_settings_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/export_field.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/export_parameters.rb +5 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/extension_attribute.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/extension_attribute_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/external_recipient.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_attachment.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_attachment_delete.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_attachment_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/filter.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/font_path.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_computer_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_computer_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel_ldap_auth.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel_sso_auth.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel_text.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_mobile_device_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_mobile_device_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_mappings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_membership.rb +2 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_test_search.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_test_search_request.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_test_search_response.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/history_search_results.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/history_search_results_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/href_response.rb +3 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/icon_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/id_and_name.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/id_and_name_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ids.rb +5 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/initialize.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/initialize_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/install_package.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/integer_wrapper.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/internal_recipient.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_information.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_error.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_validation_error.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_validation_error_cause.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_validation_success.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute_column.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute_column_result.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_invalid_csv_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record_search_results_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ios_branding_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ios_branding_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ios_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ios_details_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_application_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_nation_credentials.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_package_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_information.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/{enrollment_access_group.rb → jamf_pro_information_v2.rb} +35 -34
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_server_url.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_version.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_protect_plan.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/language_code.rb +5 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_configuration_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_configuration_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_configuration_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_group.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_group_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_server.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/linked_connect_profile.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/linked_connect_profile_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/locale.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/location.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/location_information.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/location_information_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/location_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_branding_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_branding_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_managed_software_update.rb +28 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_managed_software_update_response.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/markdown.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_client_type.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_client.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_state.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_type.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/membership_mappings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/membership_test_search_request.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/membership_test_search_response.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/memcached_endpoints.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_application.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_attachment.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_attachment_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_certificate_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_certificate_v2.rb +61 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_details_get_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_details_v2.rb +7 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_ebook.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_extension_attribute_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_group.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_name.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_name_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_names.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_names_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_search_results_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_search_params.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_search_results_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/network.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/network_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/notification.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/notification_type.rb +3 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/notification_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/object_history.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/object_history_note.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/object_history_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/order_by.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/package_manifest.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/parent_app.rb +5 -5
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_ids_on_dashboard.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_attempt.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_attempt_action.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_on_dashboard.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_summary.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_version.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/personal_hotspot_setting.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plugin_path.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/policy_properties.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/policy_properties_v1.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/post_computer_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_dependencies.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_dependency.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_file_attachment.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_file_attachment_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_purchasing_information.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_purchasing_information_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_assignment.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_assignment_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_response_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_sync_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_sync_status_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/process_texts_search_results.rb +3 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/protect_registration_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/protect_settings_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/protect_updatable_settings_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/provisioning_profile.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/purchasing.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/purchasing_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_computer_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_computer_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_mobile_device_prestage.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_mobile_device_prestage_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/recalculation_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/recipient.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/recipients.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/redeploy_jamf_management_framework_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/reenrollment.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/remote_administration_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/remote_administration_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/renew_mdm_profile_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/restart_device_command.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/retry_patch_policy_params.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/{safelisted_apps.rb → safelisted_app.rb} +15 -11
- data/lib/jamf/api/jamf_pro/oapi_schemas/script.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/scripts_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/search_active_patch_history_params.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/search_patch_policy_log_params.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/security.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/security_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_install_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_interaction_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_login_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/session.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_candidate_request.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_details_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/set_recovery_lock_command.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/settings_command.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/shared_device_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/signature.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/site.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/smart_search_criterion.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/software_title_configuration.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/software_title_patch_policy_summaries.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/software_update_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_cert_parse_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_parse.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_response_with_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_with_details.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_metadata_url.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_settings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/startup_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/static_user_group.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_certificate_upload.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_create.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_update.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/teacher_features.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/teacher_settings_request.rb +5 -5
- data/lib/jamf/api/jamf_pro/oapi_schemas/teacher_settings_response.rb +5 -5
- data/lib/jamf/api/jamf_pro/oapi_schemas/time_frame.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/time_zone.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/tv_os_details.rb +9 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/udids.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_apple_tv.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_ios.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_ios_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_mobile_device.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_mobile_device_v2.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_tv_os.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_attributes.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_mappings.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_search.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_search_request.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_search_response.rb +1 -4
- data/lib/jamf/api/jamf_pro/oapi_schemas/v1_site.rb +3 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_ca_record.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_pki_payload_record.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_pki_payload_record_search_results.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_service_status.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/verbose_package_deployment_response.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/voice_roaming_setting.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_content.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location_list_view.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location_patch.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location_post.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_locations.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_subscription.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_subscription_base.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_subscriptions.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/vpp_admin_account.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/vpp_token_subscription.rb +1 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/web_link.rb +1 -2
- data/lib/jamf/client/jamf_binary.rb +76 -77
- data/lib/jamf/client/jamf_helper.rb +245 -235
- data/lib/jamf/client/management_action.rb +63 -53
- data/lib/jamf/client.rb +3 -3
- data/lib/jamf/constants.rb +1 -1
- data/lib/jamf/deprecations/deprecated_api_connection_class.rb +29 -0
- data/lib/jamf/deprecations/deprecated_api_constant.rb +3 -1
- data/lib/jamf/deprecations/deprecated_config_constant.rb +3 -1
- data/lib/jamf/version.rb +1 -1
- data/lib/zeitwerk_config.rb +23 -17
- data/test/{README.md → README-TEST.md} +3 -0
- data/test/bin/runtests +42 -2
- data/test/lib/jamf_test/APITest.rb +33 -7
- data/test/lib/jamf_test/advanced_search.rb +40 -0
- data/test/lib/jamf_test/collection_tests.rb +8 -13
- data/test/lib/jamf_test/prestage_tests.rb +135 -0
- data/test/lib/jamf_test.rb +7 -1
- data/test/tests/advanced_computer_search.rb +36 -0
- data/test/tests/advanced_mobile_device_search.rb +36 -0
- data/test/tests/advanced_user_search.rb +36 -0
- data/test/tests/building.rb +41 -0
- data/test/tests/computer.rb +41 -0
- data/test/tests/computer_group.rb +132 -0
- data/test/tests/computer_prestage.rb +36 -0
- data/test/tests/department.rb +41 -0
- data/test/tests/inventory_preload_record.rb +2 -2
- data/test/tests/mobile_device.rb +41 -0
- data/test/tests/mobile_device_prestage.rb +37 -0
- data/test/tests/policy.rb +39 -50
- metadata +41 -53
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_identity_v1.rb +0 -102
- data/lib/jamf/api/jamf_pro/oapi_schemas/deprecated_configuration_request.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/deprecated_configuration_response.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/deprecated_configuration_update.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/deprecated_server_request.rb +0 -166
- data/lib/jamf/api/jamf_pro/oapi_schemas/deprecated_server_response.rb +0 -163
- data/lib/jamf/api/jamf_pro/oapi_schemas/deprecated_server_update.rb +0 -171
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_settings.rb +0 -264
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e4da473b27e4faa5f1a6e9249b5fd8ac6347161bd6db568335b47d57ee0c6600
|
|
4
|
+
data.tar.gz: b4864c373f399e8a2b73d7191d9c8407b3df0a7e134f35593a13acde67548652
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9f85ca5790b4c365a9c85c58a803d54e79b4916d2b4d4e4afb32d98b4131bc0137df647f65c4144d5d711890c6453532ff30b24565db443ab6fa9d698a28e2b1
|
|
7
|
+
data.tar.gz: 76434531dba3201bcc711d19154798bd5ac2a4deb998aea3b82dd07aaebc4a69df41909848fe2cffb466b5752f04735b2f09a54dc2f127ddcdd3ead3e31efb51
|
data/README-2.0.0.md
CHANGED
|
@@ -8,47 +8,52 @@ These changes have been in mind for some time, but the ability (soon to be requi
|
|
|
8
8
|
|
|
9
9
|
**CONTENTS**
|
|
10
10
|
|
|
11
|
-
<!-- TOC
|
|
12
|
-
|
|
13
|
-
- [
|
|
14
|
-
- [
|
|
15
|
-
- [
|
|
16
|
-
|
|
17
|
-
- [
|
|
18
|
-
- [
|
|
19
|
-
- [
|
|
20
|
-
|
|
21
|
-
- [
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
- [
|
|
26
|
-
- [
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
- [
|
|
31
|
-
|
|
32
|
-
- [
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
- [
|
|
39
|
-
- [
|
|
11
|
+
<!-- TOC -->
|
|
12
|
+
|
|
13
|
+
- [ruby-jss 2.0: Combined access to the Classic and Jamf Pro APIs](#ruby-jss-20-combined-access-to-the-classic-and-jamf-pro-apis)
|
|
14
|
+
- [Requirements](#requirements)
|
|
15
|
+
- [High level changes](#high-level-changes)
|
|
16
|
+
- [Ruby 3.x support](#ruby-3x-support)
|
|
17
|
+
- [Combined API access](#combined-api-access)
|
|
18
|
+
- [A single Connection class](#a-single-connection-class)
|
|
19
|
+
- [Connecting to the API](#connecting-to-the-api)
|
|
20
|
+
- [The default connection](#the-default-connection)
|
|
21
|
+
- [A single namespace Jamf](#a-single-namespace-jamf)
|
|
22
|
+
- [Inherant differences between the APIs](#inherant-differences-between-the-apis)
|
|
23
|
+
- [Which API does an object come from?](#which-api-does-an-object-come-from)
|
|
24
|
+
- [Automatic code generation](#automatic-code-generation)
|
|
25
|
+
- [Autoloading with Zeitwerk](#autoloading-with-zeitwerk)
|
|
26
|
+
- [Notable changes from ruby-jss 1.x](#notable-changes-from-ruby-jss-1x)
|
|
27
|
+
- [Paged queries to the Jamf Pro API](#paged-queries-to-the-jamf-pro-api)
|
|
28
|
+
- [API data are no longer cached ?](#api-data-are-no-longer-cached-)
|
|
29
|
+
- [No Attribute aliases for Jamf Pro API objects](#no-attribute-aliases-for-jamf-pro-api-objects)
|
|
30
|
+
- [Class/Mixin hierarchy for Jamf Pro API objects](#classmixin-hierarchy-for-jamf-pro-api-objects)
|
|
31
|
+
- [Support for 'Sticky Sessions' in Jamf Cloud](#support-for-sticky-sessions-in-jamf-cloud)
|
|
32
|
+
- [Planned deprecations](#planned-deprecations)
|
|
33
|
+
- [Use of the term 'api' in method names, parameter names, and attributes](#use-of-the-term-api-in-method-names-parameter-names-and-attributes)
|
|
34
|
+
- [.map_all_ids_to method for Classic API collection classes](#map_all_ids_to-method-for-classic-api-collection-classes)
|
|
35
|
+
- [Using .make, #create, and #update for Classic API objects](#using-make-create-and-update-for-classic-api-objects)
|
|
36
|
+
- [JSS::CONFIG](#jssconfig)
|
|
37
|
+
- [Jamf::Connection instance methods #next_refresh, #secs_to_refresh, & #time_to_refresh](#jamfconnection-instance-methods-next_refresh-secs_to_refresh---time_to_refresh)
|
|
38
|
+
- [Cross-object validation in setters](#cross-object-validation-in-setters)
|
|
39
|
+
- [fetch :random](#fetch-random)
|
|
40
|
+
- [Documentation](#documentation)
|
|
41
|
+
- [How to install for testing](#how-to-install-for-testing)
|
|
42
|
+
- [Contact](#contact)
|
|
40
43
|
|
|
41
44
|
<!-- /TOC -->
|
|
42
45
|
|
|
43
46
|
## Requirements
|
|
44
47
|
|
|
45
|
-
ruby-jss 2.0
|
|
48
|
+
ruby-jss 2.0 requires ruby 2.6.3 or higher, and a Jamf Pro server running version 10.35 or higher.
|
|
49
|
+
|
|
50
|
+
This means it will work with the OS-supplied /usr/bin/ruby in macOS 10.15 Catalina and above, until Apple removes ruby from the OS.
|
|
46
51
|
|
|
47
52
|
## High level changes
|
|
48
53
|
|
|
49
54
|
### Ruby 3.x support
|
|
50
55
|
|
|
51
|
-
The plan is for ruby-jss 2.0+ to be compatible with ruby 2.
|
|
56
|
+
The plan is for ruby-jss 2.0+ to be compatible with ruby 2.6.3 and higher, including ruby 3.x
|
|
52
57
|
|
|
53
58
|
As of this writing, basic access to the API seems to be working in ruby 3, but much much more testing is needed.
|
|
54
59
|
|
|
@@ -122,7 +127,7 @@ If you develop ruby-jss, please see (documentation link TBA) for more info about
|
|
|
122
127
|
|
|
123
128
|
### Autoloading with Zeitwerk
|
|
124
129
|
|
|
125
|
-
Because the classes generated from the OAPI spec number in the hundreds, it's a waste of memory and time to load all of them in every time you `require ruby-jss`, since most of them will never be used for any given application.
|
|
130
|
+
Because the classes generated from the OAPI spec number in the hundreds, it's a waste of memory and time to load all of them in every time you `require 'ruby-jss'`, since most of them will never be used for any given application.
|
|
126
131
|
|
|
127
132
|
To deal with this, ruby-jss now uses the wonderfully cool [Zeitwerk gem](https://github.com/fxn/zeitwerk) to automatically load only the files needed for classes and modules as they are used.
|
|
128
133
|
|
|
@@ -174,6 +179,17 @@ There's a lot to document about these changes, and much of the current documenta
|
|
|
174
179
|
|
|
175
180
|
Give us time and we'll get everything updated. In the meantime, feel free to reach out in the #ruby-jss channel of Macadmins Slack, or open an issue on GitHub, or email ruby-jss@pixar.com.
|
|
176
181
|
|
|
182
|
+
### Support for 'Sticky Sessions' in Jamf Cloud
|
|
183
|
+
|
|
184
|
+
If you are connecting to a Jamf Cloud server, you can specifcy `sticky_sessions: true` when calling `Jamf::Connection.new` or `Jamf::Connection#connect`. If you already have a connected Connection object, you can enable or disable Sticky Sessions using `my_connection_object.sticky_session =` with a boolean value (for the default connection use `Jamf.cnx.sticky_session = <boolean>`). To see the actual cookie being sent to enable sticky sessions, use `Jamf::Connection#sticky_session_cookie`.
|
|
185
|
+
|
|
186
|
+
Attempting to enable a sticky session with a connection to an on-prem server (host not ending in 'jamfcloud.com') will raise an error.
|
|
187
|
+
|
|
188
|
+
For details about Sticky Sessions see [Sticky Sessions for Jamf Cloud](https://developer.jamf.com/developer-guide/docs/sticky-sessions-for-jamf-cloud) at the Jamf Developer site.
|
|
189
|
+
|
|
190
|
+
**WARNING:** Jamf recommends NOT using sticky sessions unless they are needed. Using them inappropriately may negatively impact performance, especially for large automated processes.
|
|
191
|
+
|
|
192
|
+
|
|
177
193
|
## Planned deprecations
|
|
178
194
|
|
|
179
195
|
### Use of the term 'api' in method names, parameter names, and attributes
|
|
@@ -300,6 +316,11 @@ The last point is very important. Right now, in order to be able to manipulate
|
|
|
300
316
|
|
|
301
317
|
You can still fetch random objects from a collection, but use `.fetch random: true`. The older `.fetch :random` is deprecated and will be removed.
|
|
302
318
|
|
|
319
|
+
## Documentation
|
|
320
|
+
|
|
321
|
+
The YARD documentation for v2.0.0 is available before release in the [github.io site for ruby-jss](http://pixaranimationstudios.github.io/ruby-jss/docs/v2.x/index.html).
|
|
322
|
+
|
|
323
|
+
All the documentation for ruby-jss is in need of updating, from the top-level README to the auto-generated YARD docs. If you have questions that aren't answered there, please reach out (see Contact, below)
|
|
303
324
|
|
|
304
325
|
## How to install for testing
|
|
305
326
|
|
|
@@ -158,6 +158,7 @@ module Jamf
|
|
|
158
158
|
include Jamf::Sitable
|
|
159
159
|
include Jamf::MDM
|
|
160
160
|
include Jamf::ManagementHistory
|
|
161
|
+
include Jamf::MacOSManagedUpdates
|
|
161
162
|
|
|
162
163
|
extend Jamf::Matchable
|
|
163
164
|
|
|
@@ -183,24 +184,20 @@ module Jamf
|
|
|
183
184
|
# these keys, as well as :id and :name, can be used to look up objects
|
|
184
185
|
# of this class in the JSS
|
|
185
186
|
#
|
|
186
|
-
# the weird alises mac_addresse and macaddresse
|
|
187
|
-
# are for proper pluralization of 'mac_address' and such
|
|
188
187
|
OTHER_LOOKUP_KEYS = {
|
|
189
188
|
udid: {
|
|
190
|
-
aliases: [
|
|
189
|
+
aliases: %i[uuid guid],
|
|
191
190
|
fetch_rsrc_key: :udid
|
|
192
191
|
},
|
|
193
192
|
serial_number: {
|
|
194
|
-
aliases: [
|
|
193
|
+
aliases: %i[serialnumber sn],
|
|
195
194
|
fetch_rsrc_key: :serialnumber
|
|
196
195
|
},
|
|
197
196
|
mac_address: {
|
|
198
|
-
aliases: [
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
:macaddresse,
|
|
203
|
-
:macaddr
|
|
197
|
+
aliases: %i[
|
|
198
|
+
mac_address
|
|
199
|
+
macaddress
|
|
200
|
+
macaddr
|
|
204
201
|
],
|
|
205
202
|
fetch_rsrc_key: :macaddress
|
|
206
203
|
}
|
|
@@ -367,14 +364,14 @@ module Jamf
|
|
|
367
364
|
def self.all_macbookpros(refresh = false, api: nil, cnx: Jamf.cnx)
|
|
368
365
|
cnx = api if api
|
|
369
366
|
|
|
370
|
-
all(refresh, cnx: cnx).select { |d| d[:model] =~ /^macbookpro\d/i
|
|
367
|
+
all(refresh, cnx: cnx).select { |d| d[:model] =~ /^macbookpro\d/i }
|
|
371
368
|
end
|
|
372
369
|
|
|
373
370
|
# @return [Array<Hash>] all macbookairs in the jss
|
|
374
371
|
def self.all_macbookairs(refresh = false, api: nil, cnx: Jamf.cnx)
|
|
375
372
|
cnx = api if api
|
|
376
373
|
|
|
377
|
-
all(refresh, cnx: cnx).select { |d| d[:model] =~ /^macbookair\d/i
|
|
374
|
+
all(refresh, cnx: cnx).select { |d| d[:model] =~ /^macbookair\d/i }
|
|
378
375
|
end
|
|
379
376
|
|
|
380
377
|
# @return [Array<Hash>] all xserves in the jss
|
|
@@ -573,6 +570,7 @@ module Jamf
|
|
|
573
570
|
|
|
574
571
|
id = valid_id ident, cnx: cnx
|
|
575
572
|
raise "No computer matches identifier: #{ident}" unless id
|
|
573
|
+
|
|
576
574
|
if subset
|
|
577
575
|
management_data_subset id, subset: subset, only: only, cnx: cnx
|
|
578
576
|
else
|
|
@@ -1007,6 +1005,7 @@ module Jamf
|
|
|
1007
1005
|
#
|
|
1008
1006
|
def filevault1_accounts
|
|
1009
1007
|
return [] if filevault2_enabled?
|
|
1008
|
+
|
|
1010
1009
|
local_accounts.select { |a| a[:filevault_enabled] }
|
|
1011
1010
|
end
|
|
1012
1011
|
|
|
@@ -1059,6 +1058,7 @@ module Jamf
|
|
|
1059
1058
|
#
|
|
1060
1059
|
def management_data(subset: nil, only: nil)
|
|
1061
1060
|
raise Jamf::NoSuchItemError, 'Computer not yet saved in the JSS' unless @in_jss
|
|
1061
|
+
|
|
1062
1062
|
Jamf::Computer.management_data @id, subset: subset, only: only, cnx: @cnx
|
|
1063
1063
|
end
|
|
1064
1064
|
|
|
@@ -1144,6 +1144,7 @@ module Jamf
|
|
|
1144
1144
|
#
|
|
1145
1145
|
def make_unmanaged
|
|
1146
1146
|
return nil unless managed?
|
|
1147
|
+
|
|
1147
1148
|
set_management_to(nil, nil)
|
|
1148
1149
|
@unmange_at_update = true
|
|
1149
1150
|
end
|
|
@@ -1186,30 +1187,35 @@ module Jamf
|
|
|
1186
1187
|
|
|
1187
1188
|
def ip_address=(new_val)
|
|
1188
1189
|
return nil if @ip_address == new_val
|
|
1190
|
+
|
|
1189
1191
|
@ip_address = new_val.empty? ? new_val : Jamf::Validate.ip_address(new_val)
|
|
1190
1192
|
@need_to_update = true
|
|
1191
1193
|
end
|
|
1192
1194
|
|
|
1193
1195
|
def mac_address=(new_val)
|
|
1194
1196
|
return nil if new_val == @mac_address
|
|
1197
|
+
|
|
1195
1198
|
@mac_address = new_val.empty? ? new_val : Jamf::Validate.mac_address(new_val)
|
|
1196
1199
|
@need_to_update = true
|
|
1197
1200
|
end
|
|
1198
1201
|
|
|
1199
1202
|
def alt_mac_address=(new_val)
|
|
1200
1203
|
return nil if new_val == @alt_mac_address
|
|
1204
|
+
|
|
1201
1205
|
@alt_mac_address = new_val.empty? ? new_val : Jamf::Validate.mac_address(new_val)
|
|
1202
1206
|
@need_to_update = true
|
|
1203
1207
|
end
|
|
1204
1208
|
|
|
1205
1209
|
def serial_number=(new_val)
|
|
1206
1210
|
return nil if new_val == @serial_number
|
|
1211
|
+
|
|
1207
1212
|
@serial_number = new_val.empty? ? new_val : Jamf::Validate.doesnt_already_exist(Jamf::Computer, :serial_number, new_val, cnx: cnx)
|
|
1208
1213
|
@need_to_update = true
|
|
1209
1214
|
end
|
|
1210
1215
|
|
|
1211
1216
|
def udid=(new_val)
|
|
1212
1217
|
return nil if new_val == @udid
|
|
1218
|
+
|
|
1213
1219
|
@udid = new_val.empty? ? new_val : Jamf::Validate.doesnt_already_exist(Jamf::Computer, :udid, new_val, cnx: cnx)
|
|
1214
1220
|
@need_to_update = true
|
|
1215
1221
|
end
|
|
@@ -1269,9 +1275,6 @@ module Jamf
|
|
|
1269
1275
|
@software = nil
|
|
1270
1276
|
end # delete
|
|
1271
1277
|
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
1278
|
# aliases
|
|
1276
1279
|
alias alt_macaddress alt_mac_address
|
|
1277
1280
|
alias bar_code_1 barcode1
|
|
@@ -153,7 +153,7 @@ module Jamf
|
|
|
153
153
|
#
|
|
154
154
|
def parse_criteria
|
|
155
155
|
@criteria = Jamf::Criteriable::Criteria.new
|
|
156
|
-
@criteria.criteria = @init_data[:criteria].map { |c| Jamf::Criteriable::Criterion.new
|
|
156
|
+
@criteria.criteria = @init_data[:criteria].map { |c| Jamf::Criteriable::Criterion.new(**c) } if @init_data[:criteria]
|
|
157
157
|
|
|
158
158
|
@criteria.container = self
|
|
159
159
|
end
|
|
@@ -442,7 +442,7 @@ module Jamf
|
|
|
442
442
|
#
|
|
443
443
|
# @return [Array<Integer>] The ids of the target devices for a command
|
|
444
444
|
#
|
|
445
|
-
def raw_targets_to_ids(targets, expand_groups: true, api: nil, cnx: Jamf.cnx)
|
|
445
|
+
def raw_targets_to_ids(targets, expand_groups: true, unmanaged_ok: false, api: nil, cnx: Jamf.cnx)
|
|
446
446
|
cnx = api if api
|
|
447
447
|
|
|
448
448
|
targets = targets.is_a?(Array) ? targets : [targets]
|
|
@@ -454,6 +454,7 @@ module Jamf
|
|
|
454
454
|
targets.map! do |md|
|
|
455
455
|
id = valid_id md, cnx: cnx
|
|
456
456
|
raise Jamf::NoSuchItemError, "No #{self} matches identifier: #{md}" unless id
|
|
457
|
+
|
|
457
458
|
id
|
|
458
459
|
end # map!
|
|
459
460
|
|
|
@@ -465,13 +466,17 @@ module Jamf
|
|
|
465
466
|
end
|
|
466
467
|
|
|
467
468
|
# make sure all of them are managed, or else the API will raise a 400
|
|
468
|
-
# 'Bad Request' when sending the command to an unmanaged target
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
469
|
+
# 'Bad Request' when sending the command to an unmanaged target.
|
|
470
|
+
# Some actions, like flushing MDM commands (see .flush_mdm_commands)
|
|
471
|
+
# are OK on unmanaged machines, so they will specify 'unmanaged_ok'
|
|
472
|
+
unless unmanaged_ok
|
|
473
|
+
all_mgd = map_all_ids_to(:managed, cnx: cnx).select { |_id, mgd| mgd }.keys
|
|
474
|
+
|
|
475
|
+
targets.each do |target_id|
|
|
476
|
+
raise Jamf::UnmanagedError, "#{self} with id #{target_id} is not managed. Cannot send command." unless all_mgd.include? target_id
|
|
477
|
+
end
|
|
478
|
+
end # unles
|
|
479
|
+
|
|
475
480
|
targets
|
|
476
481
|
end
|
|
477
482
|
|
|
@@ -535,9 +540,11 @@ module Jamf
|
|
|
535
540
|
case self::MDM_COMMAND_TARGET
|
|
536
541
|
when *COMPUTER_TARGETS
|
|
537
542
|
return command if COMPUTER_COMMANDS.include? command
|
|
543
|
+
|
|
538
544
|
raise Jamf::UnsupportedError, "'#{command}' cannot be sent to computers or computer groups"
|
|
539
545
|
when *DEVICE_TARGETS
|
|
540
546
|
return command if DEVICE_COMMANDS.include? command
|
|
547
|
+
|
|
541
548
|
raise Jamf::UnsupportedError, "'#{command}' cannot be sent to mobile devices or mobile device groups"
|
|
542
549
|
end
|
|
543
550
|
|
|
@@ -585,6 +592,7 @@ module Jamf
|
|
|
585
592
|
case self::MDM_COMMAND_TARGET
|
|
586
593
|
when *COMPUTER_TARGETS
|
|
587
594
|
raise Jamf::InvalidDataError, 'Locking computers requires a 6-character String passcode' unless passcode.size == 6
|
|
595
|
+
|
|
588
596
|
opts = { passcode: passcode }
|
|
589
597
|
when *DEVICE_TARGETS
|
|
590
598
|
opts = {}
|
|
@@ -613,6 +621,7 @@ module Jamf
|
|
|
613
621
|
case self::MDM_COMMAND_TARGET
|
|
614
622
|
when *COMPUTER_TARGETS
|
|
615
623
|
raise Jamf::InvalidDataError, 'Erasing computers requires a 6-character String passcode' unless passcode.size == 6
|
|
624
|
+
|
|
616
625
|
opts = { passcode: passcode }
|
|
617
626
|
when *DEVICE_TARGETS
|
|
618
627
|
opts = {}
|
|
@@ -850,13 +859,17 @@ module Jamf
|
|
|
850
859
|
def wallpaper(targets, wallpaper_setting: nil, wallpaper_content: nil, wallpaper_id: nil, api: nil, cnx: Jamf.cnx)
|
|
851
860
|
cnx = api if api
|
|
852
861
|
|
|
853
|
-
|
|
862
|
+
unless WALLPAPER_LOCATIONS.keys.include? wallpaper_setting
|
|
863
|
+
raise ArgumentError,
|
|
864
|
+
"wallpaper_setting must be one of: :#{WALLPAPER_LOCATIONS.keys.join ', :'}"
|
|
865
|
+
end
|
|
854
866
|
|
|
855
867
|
opts = { wallpaper_setting: WALLPAPER_LOCATIONS[wallpaper_setting] }
|
|
856
868
|
|
|
857
869
|
if wallpaper_content
|
|
858
870
|
file = Pathname.new wallpaper_content
|
|
859
871
|
raise Jamf::NoSuchItemError, "Not a file: #{file}" unless file.file?
|
|
872
|
+
|
|
860
873
|
opts[:wallpaper_content] = Base64.encode64 file.read
|
|
861
874
|
elsif wallpaper_id
|
|
862
875
|
opts[:wallpaper_id] = wallpaper_id
|
|
@@ -993,18 +1006,19 @@ module Jamf
|
|
|
993
1006
|
# @return (see .send_mdm_command)
|
|
994
1007
|
#
|
|
995
1008
|
def enable_lost_mode(
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1009
|
+
targets,
|
|
1010
|
+
message: nil,
|
|
1011
|
+
phone: nil,
|
|
1012
|
+
footnote: nil,
|
|
1013
|
+
play_sound: false,
|
|
1014
|
+
enforce_lost_mode: true,
|
|
1015
|
+
api: nil,
|
|
1016
|
+
cnx: Jamf.cnx
|
|
1017
|
+
)
|
|
1005
1018
|
cnx = api if api
|
|
1006
1019
|
|
|
1007
1020
|
raise ArgumentError, 'Either message: or phone_number: must be provided' unless message || phone
|
|
1021
|
+
|
|
1008
1022
|
opts = { always_enforce_lost_mode: enforce_lost_mode }
|
|
1009
1023
|
opts[:lost_mode_message] = message if message
|
|
1010
1024
|
opts[:lost_mode_phone] = phone if phone
|
|
@@ -1067,7 +1081,9 @@ module Jamf
|
|
|
1067
1081
|
|
|
1068
1082
|
status = FLUSHABLE_STATUSES[status]
|
|
1069
1083
|
|
|
1070
|
-
|
|
1084
|
+
# TODO: add 'unmanaged_ok:' param to raw_targets_to_ids method, so that we can
|
|
1085
|
+
# use this to flush commands for unmanaged machines.
|
|
1086
|
+
target_ids = raw_targets_to_ids targets, cnx: cnx, expand_groups: false, unmanaged_ok: true
|
|
1071
1087
|
|
|
1072
1088
|
command_flush_rsrc = "commandflush/#{self::MDM_COMMAND_TARGET}/id"
|
|
1073
1089
|
|
|
@@ -1367,11 +1383,11 @@ module Jamf
|
|
|
1367
1383
|
# @return (see .send_mdm_command)
|
|
1368
1384
|
#
|
|
1369
1385
|
def enable_lost_mode(
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1386
|
+
message: nil,
|
|
1387
|
+
phone_number: nil,
|
|
1388
|
+
footnote: nil,
|
|
1389
|
+
enforce_lost_mode: true,
|
|
1390
|
+
play_sound: false
|
|
1375
1391
|
)
|
|
1376
1392
|
self.class.enable_lost_mode(
|
|
1377
1393
|
@id,
|
|
@@ -106,21 +106,18 @@ module Jamf
|
|
|
106
106
|
# are for proper pluralization of 'mac_address' and such
|
|
107
107
|
OTHER_LOOKUP_KEYS = {
|
|
108
108
|
udid: {
|
|
109
|
-
aliases: [
|
|
109
|
+
aliases: %i[uuid guid],
|
|
110
110
|
fetch_rsrc_key: :udid
|
|
111
111
|
},
|
|
112
112
|
serial_number: {
|
|
113
|
-
aliases: [
|
|
113
|
+
aliases: %i[serialnumber sn],
|
|
114
114
|
fetch_rsrc_key: :serialnumber
|
|
115
115
|
},
|
|
116
116
|
wifi_mac_address: {
|
|
117
|
-
aliases: [
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
:macaddress,
|
|
122
|
-
:macaddresse,
|
|
123
|
-
:macaddr
|
|
117
|
+
aliases: %i[
|
|
118
|
+
wifi_macaddr
|
|
119
|
+
mac_address
|
|
120
|
+
macaddr
|
|
124
121
|
],
|
|
125
122
|
fetch_rsrc_key: :macaddress
|
|
126
123
|
}
|
|
@@ -530,21 +527,20 @@ module Jamf
|
|
|
530
527
|
@needs_mdm_name_change = true if managed? && supervised?
|
|
531
528
|
end
|
|
532
529
|
|
|
533
|
-
#
|
|
534
530
|
def serial_number=(new_val)
|
|
535
531
|
return nil if new_val == @serial_number
|
|
532
|
+
|
|
536
533
|
@serial_number = new_val.empty? ? new_val : Jamf::Validate.doesnt_already_exist(self.class, :serial_number, new_val, cnx: cnx)
|
|
537
534
|
@need_to_update = true
|
|
538
535
|
end
|
|
539
536
|
|
|
540
|
-
#
|
|
541
537
|
def udid=(new_val)
|
|
542
538
|
return nil if new_val == @udid
|
|
539
|
+
|
|
543
540
|
@udid = new_val.empty? ? new_val : Jamf::Validate.doesnt_already_exist(self.class, :udid, new_val, cnx: cnx)
|
|
544
541
|
@need_to_update = true
|
|
545
542
|
end
|
|
546
543
|
|
|
547
|
-
#
|
|
548
544
|
def asset_tag=(new_val)
|
|
549
545
|
new_val = new_val.strip
|
|
550
546
|
return nil if @asset_tag == new_val
|
|
@@ -50,7 +50,6 @@ module Jamf
|
|
|
50
50
|
include Jamf::VPPable
|
|
51
51
|
include Jamf::Sitable
|
|
52
52
|
|
|
53
|
-
|
|
54
53
|
# Class Methods
|
|
55
54
|
#####################################
|
|
56
55
|
|
|
@@ -162,6 +161,10 @@ module Jamf
|
|
|
162
161
|
# does its backups (to icloud or itunes)?
|
|
163
162
|
attr_reader :prevent_backup_of_app_data
|
|
164
163
|
|
|
164
|
+
# @return [Boolean] Should this app auto-update on devices?
|
|
165
|
+
attr_reader :keep_app_updated_on_devices
|
|
166
|
+
alias auto_update? keep_app_updated_on_devices
|
|
167
|
+
|
|
165
168
|
# @return [Boolean] should the JSS update the icon and description from the app
|
|
166
169
|
# source?
|
|
167
170
|
attr_reader :keep_description_and_icon_up_to_date
|
|
@@ -185,7 +188,6 @@ module Jamf
|
|
|
185
188
|
# which contains a plist <dict> element with config data.
|
|
186
189
|
attr_reader :configuration_prefs
|
|
187
190
|
|
|
188
|
-
|
|
189
191
|
# Constructor
|
|
190
192
|
#####################################
|
|
191
193
|
|
|
@@ -208,6 +210,7 @@ module Jamf
|
|
|
208
210
|
@itunes_country_region = general[:itunes_country_region]
|
|
209
211
|
@itunes_sync_time = general[:itunes_sync_time]
|
|
210
212
|
@deploy_as_managed_app = general[:deploy_as_managed_app]
|
|
213
|
+
@keep_app_updated_on_devices = general[:keep_app_updated_on_devices]
|
|
211
214
|
@remove_app_when_mdm_profile_is_removed = general[:remove_app_when_mdm_profile_is_removed]
|
|
212
215
|
@prevent_backup_of_app_data = general[:prevent_backup_of_app_data]
|
|
213
216
|
@keep_description_and_icon_up_to_date = general[:keep_description_and_icon_up_to_date]
|
|
@@ -232,6 +235,7 @@ module Jamf
|
|
|
232
235
|
#
|
|
233
236
|
def display_name=(new_val)
|
|
234
237
|
return nil if new_val.to_s == @display_name
|
|
238
|
+
|
|
235
239
|
@display_name = new_val.to_s
|
|
236
240
|
@need_to_update = true
|
|
237
241
|
end
|
|
@@ -274,6 +278,7 @@ module Jamf
|
|
|
274
278
|
#
|
|
275
279
|
def url=(new_val)
|
|
276
280
|
return nil if new_val == @url
|
|
281
|
+
|
|
277
282
|
@url = new_val
|
|
278
283
|
@need_to_update = true
|
|
279
284
|
end
|
|
@@ -288,6 +293,7 @@ module Jamf
|
|
|
288
293
|
def make_available_after_install=(new_val)
|
|
289
294
|
return nil if new_val == @make_available_after_install
|
|
290
295
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
296
|
+
|
|
291
297
|
@make_available_after_install = new_val
|
|
292
298
|
@need_to_update = true
|
|
293
299
|
end
|
|
@@ -302,10 +308,25 @@ module Jamf
|
|
|
302
308
|
def deploy_as_managed_app=(new_val)
|
|
303
309
|
return nil if new_val == @deploy_as_managed_app
|
|
304
310
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
311
|
+
|
|
305
312
|
@deploy_as_managed_app = new_val
|
|
306
313
|
@need_to_update = true
|
|
307
314
|
end
|
|
308
315
|
|
|
316
|
+
# Set whether or not this app should be auto-updated on devices
|
|
317
|
+
#
|
|
318
|
+
# @param new_val[Boolean] The new value
|
|
319
|
+
#
|
|
320
|
+
# @return [void]
|
|
321
|
+
#
|
|
322
|
+
def keep_app_updated_on_devices=(new_val)
|
|
323
|
+
return nil if new_val == @keep_app_updated_on_devices
|
|
324
|
+
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
325
|
+
|
|
326
|
+
@keep_app_updated_on_devices = new_val
|
|
327
|
+
@need_to_update = true
|
|
328
|
+
end
|
|
329
|
+
alias auto_update= keep_app_updated_on_devices=
|
|
309
330
|
|
|
310
331
|
# Set whether or not this app should be removed when
|
|
311
332
|
# the device is unmanaged
|
|
@@ -317,6 +338,7 @@ module Jamf
|
|
|
317
338
|
def remove_app_when_mdm_profile_is_removed=(new_val)
|
|
318
339
|
return nil if new_val == @remove_app_when_mdm_profile_is_removed
|
|
319
340
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
341
|
+
|
|
320
342
|
@remove_app_when_mdm_profile_is_removed = new_val
|
|
321
343
|
@need_to_update = true
|
|
322
344
|
end
|
|
@@ -330,11 +352,11 @@ module Jamf
|
|
|
330
352
|
def prevent_backup_of_app_data=(new_val)
|
|
331
353
|
return nil if new_val == @prevent_backup_of_app_data
|
|
332
354
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
355
|
+
|
|
333
356
|
@prevent_backup_of_app_data = new_val
|
|
334
357
|
@need_to_update = true
|
|
335
358
|
end
|
|
336
359
|
|
|
337
|
-
|
|
338
360
|
# Set whether or not the jss should update info about this app from the app store
|
|
339
361
|
#
|
|
340
362
|
# @param new_val[Boolean] The new value
|
|
@@ -344,6 +366,7 @@ module Jamf
|
|
|
344
366
|
def keep_description_and_icon_up_to_date=(new_val)
|
|
345
367
|
return nil if new_val == @keep_description_and_icon_up_to_date
|
|
346
368
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
369
|
+
|
|
347
370
|
@keep_description_and_icon_up_to_date = new_val
|
|
348
371
|
@need_to_update = true
|
|
349
372
|
end
|
|
@@ -357,6 +380,7 @@ module Jamf
|
|
|
357
380
|
def free=(new_val)
|
|
358
381
|
return nil if new_val == @free
|
|
359
382
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
383
|
+
|
|
360
384
|
@free = new_val
|
|
361
385
|
@need_to_update = true
|
|
362
386
|
end
|
|
@@ -371,6 +395,7 @@ module Jamf
|
|
|
371
395
|
def take_over_management=(new_val)
|
|
372
396
|
return nil if new_val == @take_over_management
|
|
373
397
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
|
398
|
+
|
|
374
399
|
@take_over_management = new_val
|
|
375
400
|
@need_to_update = true
|
|
376
401
|
end
|
|
@@ -432,6 +457,7 @@ module Jamf
|
|
|
432
457
|
#
|
|
433
458
|
def external_url=(new_val)
|
|
434
459
|
return nil if new_val == @external_url
|
|
460
|
+
|
|
435
461
|
@external_url = new_val
|
|
436
462
|
@need_to_update = true
|
|
437
463
|
end
|
|
@@ -445,11 +471,11 @@ module Jamf
|
|
|
445
471
|
#
|
|
446
472
|
def configuration_prefs=(new_val)
|
|
447
473
|
return nil if new_val == @configuration_prefs
|
|
474
|
+
|
|
448
475
|
@configuration_prefs = new_val
|
|
449
476
|
@need_to_update = true
|
|
450
477
|
end
|
|
451
478
|
|
|
452
|
-
|
|
453
479
|
# Save the application to a file.
|
|
454
480
|
#
|
|
455
481
|
# @param path[Pathname, String] The path to which the file should be saved.
|
|
@@ -462,10 +488,12 @@ module Jamf
|
|
|
462
488
|
#
|
|
463
489
|
def save_ipa(path, overwrite = false)
|
|
464
490
|
return nil unless @ipa[:data]
|
|
491
|
+
|
|
465
492
|
path = Pathname.new path
|
|
466
|
-
path
|
|
493
|
+
path += @ipa[:name] if path.directory? && @ipa[:name]
|
|
467
494
|
|
|
468
495
|
raise Jamf::AlreadyExistsError, "The file #{path} already exists" if path.exist? && !overwrite
|
|
496
|
+
|
|
469
497
|
path.delete if path.exist?
|
|
470
498
|
path.jss_save Base64.decode64(@ipa[:data])
|
|
471
499
|
end
|
|
@@ -507,6 +535,7 @@ module Jamf
|
|
|
507
535
|
#
|
|
508
536
|
def refresh_ipa
|
|
509
537
|
return nil unless @in_jss
|
|
538
|
+
|
|
510
539
|
fresh_data = @cnx.c_get(@rest_rsrc)[self.class::RSRC_OBJECT_KEY]
|
|
511
540
|
@ipa = fresh_data[:general][:ipa]
|
|
512
541
|
end
|
|
@@ -523,6 +552,7 @@ module Jamf
|
|
|
523
552
|
gen.add_element('deploy_as_managed_app').text = @deploy_as_managed_app
|
|
524
553
|
gen.add_element('remove_app_when_mdm_profile_is_removed').text = @remove_app_when_mdm_profile_is_removed
|
|
525
554
|
gen.add_element('prevent_backup_of_app_data').text = @prevent_backup_of_app_data
|
|
555
|
+
gen.add_element('keep_app_updated_on_devices').text = @keep_app_updated_on_devices
|
|
526
556
|
gen.add_element('keep_description_and_icon_up_to_date').text = @keep_description_and_icon_up_to_date
|
|
527
557
|
gen.add_element('free').text = @free
|
|
528
558
|
gen.add_element('take_over_management').text = @take_over_management
|
|
@@ -540,7 +570,6 @@ module Jamf
|
|
|
540
570
|
doc.to_s
|
|
541
571
|
end
|
|
542
572
|
|
|
543
|
-
|
|
544
573
|
end # class removable_macaddr
|
|
545
574
|
|
|
546
575
|
end # module
|