ruby-jss 4.1.1 → 4.2.0
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/CHANGES.md +84 -1
- data/README-2.0.0.md +19 -8
- data/README.md +46 -33
- data/bin/cgrouper +1 -1
- data/bin/jamfHelperBackgrounder +1 -1
- data/bin/netseg-update +2 -2
- data/data/ruby-jss.conf.example +1 -1
- data/lib/jamf/api/classic/api_objects/account.rb +6 -7
- data/lib/jamf/api/classic/api_objects/advanced_computer_search.rb +1 -1
- data/lib/jamf/api/classic/api_objects/advanced_mobile_device_search.rb +2 -2
- data/lib/jamf/api/classic/api_objects/advanced_user_search.rb +2 -2
- data/lib/jamf/api/classic/api_objects/building.rb +6 -1
- data/lib/jamf/api/classic/api_objects/categorizable.rb +4 -1
- data/lib/jamf/api/classic/api_objects/category.rb +7 -2
- data/lib/jamf/api/classic/api_objects/computer.rb +1 -1
- data/lib/jamf/api/classic/api_objects/computer_extension_attribute.rb +1 -1
- data/lib/jamf/api/classic/api_objects/computer_group.rb +1 -3
- data/lib/jamf/api/classic/api_objects/computer_invitation.rb +2 -5
- data/lib/jamf/api/classic/api_objects/creatable.rb +1 -1
- data/lib/jamf/api/classic/api_objects/criteriable/criteria.rb +7 -3
- data/lib/jamf/api/classic/api_objects/criteriable/criterion.rb +3 -1
- data/lib/jamf/api/classic/api_objects/criteriable.rb +2 -2
- data/lib/jamf/api/classic/api_objects/department.rb +2 -2
- data/lib/jamf/api/classic/api_objects/distribution_point.rb +9 -8
- data/lib/jamf/api/classic/api_objects/ebook.rb +1 -3
- data/lib/jamf/api/classic/api_objects/extendable.rb +1 -1
- data/lib/jamf/api/classic/api_objects/ibeacon.rb +2 -4
- data/lib/jamf/api/classic/api_objects/icon.rb +161 -161
- data/lib/jamf/api/classic/api_objects/ldap_server.rb +1 -1
- data/lib/jamf/api/classic/api_objects/locatable.rb +3 -3
- data/lib/jamf/api/classic/api_objects/mac_application.rb +1 -2
- data/lib/jamf/api/classic/api_objects/management_history/audit_event.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/casper_imaging_log.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/casper_remote_log.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/computer_usage_log.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/ebook.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/hash_like.rb +1 -3
- data/lib/jamf/api/classic/api_objects/management_history/mac_app_store_app.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/mdm_command.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/mobile_device_app.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/policy_log.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/screen_sharing_log.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history/user_location_change.rb +1 -1
- data/lib/jamf/api/classic/api_objects/management_history.rb +14 -5
- data/lib/jamf/api/classic/api_objects/matchable.rb +6 -7
- data/lib/jamf/api/classic/api_objects/mdm.rb +1 -1
- data/lib/jamf/api/classic/api_objects/mobile_device.rb +1 -1
- data/lib/jamf/api/classic/api_objects/mobile_device_application.rb +23 -2
- data/lib/jamf/api/classic/api_objects/mobile_device_configuration_profile.rb +1 -1
- data/lib/jamf/api/classic/api_objects/mobile_device_extension_attribute.rb +3 -3
- data/lib/jamf/api/classic/api_objects/mobile_device_group.rb +6 -7
- data/lib/jamf/api/classic/api_objects/netboot_server.rb +2 -5
- data/lib/jamf/api/classic/api_objects/network_segment.rb +7 -2
- data/lib/jamf/api/classic/api_objects/osx_configuration_profile.rb +3 -3
- data/lib/jamf/api/classic/api_objects/package.rb +37 -17
- data/lib/jamf/api/classic/api_objects/patch_external_source.rb +7 -2
- data/lib/jamf/api/classic/api_objects/patch_internal_source.rb +1 -1
- data/lib/jamf/api/classic/api_objects/patch_policy.rb +1 -1
- data/lib/jamf/api/classic/api_objects/patch_title/version.rb +1 -1
- data/lib/jamf/api/classic/api_objects/patch_title.rb +5 -4
- data/lib/jamf/api/classic/api_objects/peripheral.rb +35 -44
- data/lib/jamf/api/classic/api_objects/peripheral_type.rb +33 -39
- data/lib/jamf/api/classic/api_objects/policy.rb +1 -1
- data/lib/jamf/api/classic/api_objects/purchasable.rb +55 -47
- data/lib/jamf/api/classic/api_objects/removable_macaddr.rb +3 -4
- data/lib/jamf/api/classic/api_objects/restricted_software.rb +6 -2
- data/lib/jamf/api/classic/api_objects/scopable/scope.rb +16 -14
- data/lib/jamf/api/classic/api_objects/scopable.rb +1 -1
- data/lib/jamf/api/classic/api_objects/script.rb +18 -12
- data/lib/jamf/api/classic/api_objects/self_servable.rb +26 -8
- data/lib/jamf/api/classic/api_objects/sitable.rb +3 -1
- data/lib/jamf/api/classic/api_objects/site.rb +1 -2
- data/lib/jamf/api/classic/api_objects/software_update_server.rb +2 -4
- data/lib/jamf/api/classic/api_objects/updatable.rb +2 -1
- data/lib/jamf/api/classic/api_objects/uploadable.rb +1 -1
- data/lib/jamf/api/classic/api_objects/user.rb +25 -25
- data/lib/jamf/api/classic/api_objects/user_extension_attribute.rb +1 -1
- data/lib/jamf/api/classic/api_objects/user_group.rb +6 -8
- data/lib/jamf/api/classic/api_objects/vpp_account.rb +1 -1
- data/lib/jamf/api/classic/api_objects/vppable.rb +2 -2
- data/lib/jamf/api/classic/api_objects/web_hook.rb +12 -5
- data/lib/jamf/api/classic/base_classes/advanced_search.rb +6 -7
- data/lib/jamf/api/classic/base_classes/api_object.rb +10 -2
- data/lib/jamf/api/classic/base_classes/configuration_profile.rb +1 -1
- data/lib/jamf/api/classic/base_classes/extension_attribute.rb +2 -4
- data/lib/jamf/api/classic/base_classes/group.rb +5 -5
- data/lib/jamf/api/classic/base_classes/patch_source.rb +1 -1
- data/lib/jamf/api/classic/xml_workaround.rb +1 -1
- data/lib/jamf/api/connection/attributes.rb +1 -1
- data/lib/jamf/api/connection/cache.rb +1 -1
- data/lib/jamf/api/connection/classic_api.rb +1 -1
- data/lib/jamf/api/connection/connect.rb +1 -1
- data/lib/jamf/api/connection/constants.rb +1 -1
- data/lib/jamf/api/connection/default_connection.rb +1 -1
- data/lib/jamf/api/connection/jamf_pro_api.rb +29 -3
- data/lib/jamf/api/connection/jamf_pro_api_error.rb +5 -5
- data/lib/jamf/api/connection/token.rb +1 -1
- data/lib/jamf/api/connection.rb +1 -1
- data/lib/jamf/api/jamf_pro/api_objects/api_client.rb +5 -6
- data/lib/jamf/api/jamf_pro/api_objects/api_integration.rb +1 -1
- data/lib/jamf/api/jamf_pro/api_objects/api_role.rb +4 -1
- data/lib/jamf/api/jamf_pro/api_objects/computer_prestage.rb +2 -2
- data/lib/jamf/api/jamf_pro/api_objects/device_enrollment.rb +1 -1
- data/lib/jamf/api/jamf_pro/api_objects/inventory_preload_record.rb +1 -1
- data/lib/jamf/api/jamf_pro/api_objects/{jp_building.rb → j_building.rb} +5 -2
- data/lib/jamf/api/jamf_pro/api_objects/j_package.rb +912 -0
- data/lib/jamf/api/jamf_pro/api_objects/managed_software_updates/plan.rb +237 -0
- data/lib/jamf/api/jamf_pro/api_objects/managed_software_updates.rb +291 -0
- data/lib/jamf/api/jamf_pro/api_objects/mobile_device_prestage.rb +1 -1
- data/lib/jamf/api/jamf_pro/base_classes/oapi_object.rb +12 -4
- data/lib/jamf/api/jamf_pro/mixins/bulk_deletable.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/change_log.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/collection_resource.rb +24 -10
- data/lib/jamf/api/jamf_pro/mixins/computer_recovery_lock.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/filevault.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/filterable.rb +9 -3
- data/lib/jamf/api/jamf_pro/mixins/immutable.rb +2 -1
- data/lib/jamf/api/jamf_pro/mixins/jpapi_resource.rb +18 -5
- data/lib/jamf/api/jamf_pro/mixins/lockable.rb +2 -2
- data/lib/jamf/api/jamf_pro/mixins/macos_managed_updates.rb +3 -1
- data/lib/jamf/api/jamf_pro/mixins/macos_redeploy_mgmt_framework.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/prestage.rb +4 -1
- data/lib/jamf/api/jamf_pro/mixins/sortable.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/uncreatable.rb +1 -1
- data/lib/jamf/api/jamf_pro/mixins/undeletable.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_group.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_v1.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_settings_request.rb +7 -9
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_settings_response.rb +7 -9
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_error.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_error_cause.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_integration_request.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_integration_response.rb +6 -8
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_integration_search_result.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_role.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_role_request.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_role_result.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/assign_remove_profile_response_sync_state.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_account_v1.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/authentication_type.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/authorization_v1.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/available_updates.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/building.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/building_search_results.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_application.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_attachment.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_certificate.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_configuration_profile.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_alert.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_cache_detail.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_data_migration_error.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_data_migration_error_user_info.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_alert.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_capabilities.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_details.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_content_caching_parent_local_network.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_disk.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_disk_encryption.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_extension_attribute.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_font.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_general.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_hardware.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_ibeacon.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_file_vault.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_licensed_software.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_local_user_account.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_mdm_capability.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_operating_system.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_package_receipts.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition_encryption.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_partition_file_vault2_state.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_plugin.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_search_results_v3.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_v3.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_printer.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_purchase.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_remote_management.rb +3 -10
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_section.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_security.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_service.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_software_update.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_storage.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_user_and_location.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_device.rb +6 -8
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_device_search_results.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_disown_response.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_instance.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_instance_search_results.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_instance_sync_status.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_prestage_v2.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_token.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/dss_declaration.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/dss_declarations.rb +9 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_method.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_computer_prestage_v3.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_mobile_device_prestage_v2.rb +1 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_membership.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/history_search_results_v1.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record_search_results_v2.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record_v2.rb +1 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/location_information.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/location_information_v2.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_managed_software_update.rb +10 -12
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_managed_software_update_response.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan.rb +29 -19
- data/lib/jamf/api/jamf_pro/oapi_schemas/{venafi_service_status.rb → managed_software_update_plan_event_store.rb} +11 -9
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_group_post.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_post.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_post_response.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_toggle.rb +9 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_toggle_status.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plan_toggle_status_wrapper.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_plans.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_status.rb +21 -22
- data/lib/jamf/api/jamf_pro/oapi_schemas/managed_software_update_statuses.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_name_v2.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_names_v2.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_search_results_v2.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_v2.rb +2 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/o_auth_client_credentials.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/object_history_note.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/object_history_v1.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/package.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/packages_search_results.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_configuration_post.rb +12 -3
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_device.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_device_post.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_device_response.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_group_post.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_search_results.rb +2 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/plan_status.rb +3 -2
- data/lib/jamf/api/jamf_pro/oapi_schemas/post_computer_prestage_v3.rb +2 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_purchasing_information.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_purchasing_information_v2.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_assignment_v2.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_response_v2.rb +2 -6
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_v2.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_computer_prestage_v3.rb +2 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_mobile_device_prestage_v2.rb +2 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/redeploy_jamf_management_framework_response.rb +3 -7
- data/lib/jamf/api/jamf_pro/oapi_schemas/v1_site.rb +1 -1
- data/lib/jamf/api/jamf_pro/oapi_schemas.rb +25 -2
- data/lib/jamf/api/jamf_pro/other_classes/change_log_entry.rb +1 -1
- data/lib/jamf/api/jamf_pro/other_classes/ip_address.rb +2 -3
- data/lib/jamf/api/jamf_pro/other_classes/pager.rb +1 -1
- data/lib/jamf/api/jamf_pro/other_classes/timestamp.rb +1 -1
- data/lib/jamf/base_class.rb +1 -1
- data/lib/jamf/client/jamf_binary.rb +1 -1
- data/lib/jamf/client/jamf_helper.rb +1 -1
- data/lib/jamf/client/management_action.rb +1 -1
- data/lib/jamf/client.rb +5 -1
- data/lib/jamf/composer.rb +115 -107
- data/lib/jamf/configuration.rb +137 -138
- data/lib/jamf/constants.rb +1 -1
- data/lib/jamf/db_connection.rb +13 -19
- data/lib/jamf/deprecations/deprecated_api_connection_class.rb +1 -1
- data/lib/jamf/deprecations/deprecated_api_constant.rb +3 -1
- data/lib/jamf/deprecations/deprecated_config_constant.rb +3 -1
- data/lib/jamf/deprecations.rb +1 -1
- data/lib/jamf/exceptions.rb +2 -2
- data/lib/jamf/oapi_validate.rb +2 -1
- data/lib/jamf/ruby_extensions/array/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/array/utils.rb +1 -1
- data/lib/jamf/ruby_extensions/array.rb +1 -1
- data/lib/jamf/ruby_extensions/filetest/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/filetest.rb +1 -1
- data/lib/jamf/ruby_extensions/hash/utils.rb +2 -2
- data/lib/jamf/ruby_extensions/hash.rb +1 -1
- data/lib/jamf/ruby_extensions/ipaddr/utils.rb +11 -13
- data/lib/jamf/ruby_extensions/ipaddr.rb +1 -1
- data/lib/jamf/ruby_extensions/object/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/object.rb +1 -1
- data/lib/jamf/ruby_extensions/pathname/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/pathname/utils.rb +1 -1
- data/lib/jamf/ruby_extensions/pathname.rb +1 -1
- data/lib/jamf/ruby_extensions/string/conversions.rb +1 -1
- data/lib/jamf/ruby_extensions/string/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/string.rb +1 -1
- data/lib/jamf/ruby_extensions/time/utils.rb +2 -3
- data/lib/jamf/ruby_extensions/time.rb +1 -1
- data/lib/jamf/ruby_extensions.rb +1 -1
- data/lib/jamf/utility.rb +1 -1
- data/lib/jamf/validate.rb +1 -1
- data/lib/jamf/version.rb +2 -2
- data/lib/jamf/zeitwerk_config.rb +1 -1
- data/lib/jamf.rb +1 -1
- data/lib/jss-api.rb +1 -1
- data/lib/jss.rb +1 -1
- data/lib/ruby-jss.rb +1 -1
- data/test/bin/runtests +3 -3
- data/test/lib/jamf_test/APITest.rb +7 -6
- data/test/lib/jamf_test/advanced_search.rb +1 -2
- data/test/lib/jamf_test/auth.rb +1 -1
- data/test/lib/jamf_test/collection_tests.rb +13 -5
- data/test/lib/jamf_test/prestage_tests.rb +1 -1
- data/test/lib/jamf_test.rb +1 -1
- data/test/tests/advanced_computer_search.rb +1 -1
- data/test/tests/advanced_mobile_device_search.rb +1 -1
- data/test/tests/advanced_user_search.rb +1 -1
- data/test/tests/building.rb +1 -1
- data/test/tests/category.rb +1 -1
- data/test/tests/computer.rb +1 -1
- data/test/tests/computer_group.rb +30 -14
- data/test/tests/computer_prestage.rb +1 -1
- data/test/tests/department.rb +1 -1
- data/test/tests/device_enrollment.rb +4 -2
- data/test/tests/inventory_preload_record.rb +1 -1
- data/test/tests/{jp_building.rb → j_building.rb} +3 -3
- data/test/tests/j_package.rb +47 -0
- data/test/tests/mobile_device.rb +1 -1
- data/test/tests/mobile_device_prestage.rb +1 -2
- data/test/tests/policy.rb +1 -1
- metadata +9 -465
- data/lib/jamf/api/jamf_pro/oapi_schemas/access_groups_preview_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/access_groups_v2_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/account.rb +0 -159
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_driven_user_enrollment_session_token_settings.rb +0 -97
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_search_type.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_user_interface_display_theme.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_v4.rb +0 -142
- data/lib/jamf/api/jamf_pro/oapi_schemas/account_preferences_v5.rb +0 -299
- data/lib/jamf/api/jamf_pro/oapi_schemas/activation_code.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_search.rb +0 -117
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_search_criteria_choices.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_search_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_user_content_search.rb +0 -117
- data/lib/jamf/api/jamf_pro/oapi_schemas/advanced_user_content_search_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/api_role_privileges.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_analytics_setting.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_config_reinstall_code.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_path.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_request_form_input_field.rb +0 -115
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_request_form_input_field_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/app_request_settings.rb +0 -104
- data/lib/jamf/api/jamf_pro/oapi_schemas/application_attributes.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/application_configuration.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/assignment.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/attributes.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_account.rb +0 -159
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_token.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/auth_token_v1.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/authorization.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/available_os_updates.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_configuration.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_configuration_request.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_configuration_update.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_mappings.rb +0 -156
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_server_configuration.rb +0 -160
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_server_configuration_request.rb +0 -152
- data/lib/jamf/api/jamf_pro/oapi_schemas/azure_server_configuration_update.rb +0 -138
- data/lib/jamf/api/jamf_pro/oapi_schemas/branding_image_url.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/cache_settings.rb +0 -150
- data/lib/jamf/api/jamf_pro/oapi_schemas/categories_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/category.rb +0 -104
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_details.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_identity_v2.rb +0 -112
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_key.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/certificate_record.rb +0 -146
- data/lib/jamf/api/jamf_pro/oapi_schemas/change_password.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/classic_ldap_mappings.rb +0 -168
- data/lib/jamf/api/jamf_pro/oapi_schemas/clear_restrictions_password_command.rb +0 -77
- data/lib/jamf/api/jamf_pro/oapi_schemas/client_check_in_v3.rb +0 -134
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_distribution_point_upload_capability.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_id_p_common.rb +0 -108
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_id_p_common_request.rb +0 -97
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_id_p_common_response.rb +0 -108
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_connection_pool_statistics.rb +0 -170
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_connection_status.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_keystore.rb +0 -102
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_keystore_file.rb +0 -103
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_mappings_request.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_mappings_response.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_server_request.rb +0 -157
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_server_response.rb +0 -154
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_ldap_server_update.rb +0 -154
- data/lib/jamf/api/jamf_pro/oapi_schemas/cloud_response.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/compliance_vendor_device_information.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_general_update.rb +0 -124
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_group.rb +0 -97
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_hardware_update.rb +0 -106
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_collection_preferences.rb +0 -177
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_collection_settings.rb +0 -108
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_file_vault_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_recovery_lock_password_response.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_inventory_update_request.rb +0 -124
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_location.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_operating_system_update.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_overview.rb +0 -194
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_search_results_v2.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/computer_prestage_v2.rb +0 -129
- data/lib/jamf/api/jamf_pro/oapi_schemas/computers_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/configuration_profile.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/configuration_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_candidate_request.rb +0 -123
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_response.rb +0 -123
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_status_response.rb +0 -85
- data/lib/jamf/api/jamf_pro/oapi_schemas/connection_configuration_update_request.rb +0 -109
- data/lib/jamf/api/jamf_pro/oapi_schemas/country.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/country_codes.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/create_path.rb +0 -97
- data/lib/jamf/api/jamf_pro/oapi_schemas/credentials.rb +0 -129
- data/lib/jamf/api/jamf_pro/oapi_schemas/csa_token.rb +0 -96
- data/lib/jamf/api/jamf_pro/oapi_schemas/current_account.rb +0 -160
- data/lib/jamf/api/jamf_pro/oapi_schemas/current_authorization.rb +0 -97
- data/lib/jamf/api/jamf_pro/oapi_schemas/dashboard_api_error.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/dashboard_item.rb +0 -131
- data/lib/jamf/api/jamf_pro/oapi_schemas/dashboard_setup.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/dashboard_setup_task.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/data_roaming_setting.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/database_password.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/day_of_week.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/declarative_management_command.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/delete_user_command.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/department.rb +0 -98
- data/lib/jamf/api/jamf_pro/oapi_schemas/departments_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/deployment_task.rb +0 -129
- data/lib/jamf/api/jamf_pro/oapi_schemas/deployment_task_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/details_v2.rb +0 -264
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_communication_settings.rb +0 -128
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_compliance_information.rb +0 -123
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_disown_body.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_enrollment_prestage.rb +0 -215
- data/lib/jamf/api/jamf_pro/oapi_schemas/device_information_command.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/diagnostic_submission_setting.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/dock_item.rb +0 -124
- data/lib/jamf/api/jamf_pro/oapi_schemas/download_url.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook.rb +0 -152
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_exclusions.rb +0 -137
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_limitations.rb +0 -97
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_scope.rb +0 -170
- data/lib/jamf/api/jamf_pro/oapi_schemas/ebook_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/enable_lost_mode_command.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/engage.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_access_group_preview.rb +0 -141
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_access_group_v2.rb +0 -132
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization.rb +0 -106
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_branding_settings.rb +0 -111
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_dependencies.rb +0 -85
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_dependency.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_ldap_group_access.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_ldap_auth.rb +0 -121
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_list.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_sso_auth.rb +0 -113
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_panel_text.rb +0 -112
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_search_results_v2.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_customization_v2.rb +0 -116
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_method_prestage.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_process_text_object.rb +0 -346
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_settings_v2.rb +0 -278
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_settings_v3.rb +0 -246
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_settings_v4.rb +0 -264
- data/lib/jamf/api/jamf_pro/oapi_schemas/enrollment_sso_config.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/erase_device_command.rb +0 -120
- data/lib/jamf/api/jamf_pro/oapi_schemas/export_field.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/export_parameters.rb +0 -133
- data/lib/jamf/api/jamf_pro/oapi_schemas/extension_attribute_v2.rb +0 -116
- data/lib/jamf/api/jamf_pro/oapi_schemas/external_recipient.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_attachment.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_attachment_delete.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_attachment_v2.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_data.rb +0 -117
- data/lib/jamf/api/jamf_pro/oapi_schemas/file_transfer_item.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/font_path.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_computer_prestage_v2.rb +0 -104
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel_ldap_auth.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel_sso_auth.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_enrollment_customization_panel_text.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/get_mobile_device_prestage.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_mappings.rb +0 -138
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_test_search.rb +0 -106
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_test_search_request.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/group_test_search_response.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/gsx_connection.rb +0 -127
- data/lib/jamf/api/jamf_pro/oapi_schemas/gsx_connection_update.rb +0 -114
- data/lib/jamf/api/jamf_pro/oapi_schemas/gsx_keystore.rb +0 -117
- data/lib/jamf/api/jamf_pro/oapi_schemas/gsx_test_response.rb +0 -96
- data/lib/jamf/api/jamf_pro/oapi_schemas/history_search_results.rb +0 -151
- data/lib/jamf/api/jamf_pro/oapi_schemas/href_response.rb +0 -194
- data/lib/jamf/api/jamf_pro/oapi_schemas/icon_response.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/id_and_name_v2.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/ids.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/initialize_v1.rb +0 -133
- data/lib/jamf/api/jamf_pro/oapi_schemas/install_package.rb +0 -103
- data/lib/jamf/api/jamf_pro/oapi_schemas/internal_recipient.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_information.rb +0 -113
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_list_mobile_device.rb +0 -680
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_list_mobile_device_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_error.rb +0 -123
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_validation_error.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_validation_error_cause.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_csv_validation_success.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute_column.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_extension_attribute_column_result.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_invalid_csv_response.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record.rb +0 -248
- data/lib/jamf/api/jamf_pro/oapi_schemas/inventory_preload_record_search_results.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/ios_branding_configuration.rb +0 -129
- data/lib/jamf/api/jamf_pro/oapi_schemas/ios_branding_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_application_response.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_package_response.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_information.rb +0 -124
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_information_v2.rb +0 -124
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_server_url.rb +0 -85
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_pro_version.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/jamf_protect_plan.rb +0 -125
- data/lib/jamf/api/jamf_pro/oapi_schemas/jcds_properties.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/language_code.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_account_management_history.rb +0 -123
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_account_management_history_response.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_audit.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_audit_v2.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_history.rb +0 -114
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_history_response.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_password_and_audits.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_password_and_audits_v2.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_password_audits_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_password_audits_results_v2.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_password_response.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_password_response_v2.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_pending_rotation.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_pending_rotation_response.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_settings_request.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_settings_request_v2.rb +0 -108
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_settings_response.rb +0 -99
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_settings_response_v2.rb +0 -106
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_password.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_password_request.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_password_request_v2.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_password_response.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_password_response_v2.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_password_v2.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_results_v2.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/laps_user_v2.rb +0 -106
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_configuration_request.rb +0 -99
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_configuration_response.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_configuration_update.rb +0 -99
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_group.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_group_search_results.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/ldap_server.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/linked_connect_profile.rb +0 -126
- data/lib/jamf/api/jamf_pro/oapi_schemas/linked_connect_profile_search_results.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/locale.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/location_v2.rb +0 -124
- data/lib/jamf/api/jamf_pro/oapi_schemas/log_out_user_command.rb +0 -77
- data/lib/jamf/api/jamf_pro/oapi_schemas/login_content.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/login_content_put.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_branding_configuration.rb +0 -118
- data/lib/jamf/api/jamf_pro/oapi_schemas/mac_os_branding_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/markdown.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_client_type.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command.rb +0 -109
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_base.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_client.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_client_request.rb +0 -81
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_request.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_results.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_state.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/mdm_command_type.rb +0 -98
- data/lib/jamf/api/jamf_pro/oapi_schemas/membership_mappings.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/membership_test_search_request.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/membership_test_search_response.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/memcached_endpoints.rb +0 -114
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_application.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_application_inventory_detail.rb +0 -123
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_attachment_v2.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_certificate.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_certificate_v2.rb +0 -147
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_details_get_v2.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_details_v2.rb +0 -295
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_ebook.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_ebook_inventory_detail.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_extension_attribute.rb +0 -125
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_extension_attribute_results.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_general.rb +0 -216
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_group.rb +0 -96
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_hardware.rb +0 -160
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_inventory.rb +0 -136
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_inventory_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_ios_general.rb +0 -191
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_ios_inventory.rb +0 -134
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_lost_mode_location.rb +0 -118
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_network.rb +0 -180
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage.rb +0 -136
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_name.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_names.rb +0 -118
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_prestage_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_profile.rb +0 -112
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_provisioning_profiles.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_purchasing.rb +0 -157
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_response.rb +0 -74
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_search_results_v2.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_section.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_security.rb +0 -178
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_service_subscriptions.rb +0 -173
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_shared_user.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_tv_os_general.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_tv_os_inventory.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_user_and_location.rb +0 -142
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_user_profile.rb +0 -118
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_v2.rb +0 -160
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_watch_os_general.rb +0 -112
- data/lib/jamf/api/jamf_pro/oapi_schemas/mobile_device_watch_os_inventory.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/network_v2.rb +0 -179
- data/lib/jamf/api/jamf_pro/oapi_schemas/notification.rb +0 -96
- data/lib/jamf/api/jamf_pro/oapi_schemas/notification_type.rb +0 -147
- data/lib/jamf/api/jamf_pro/oapi_schemas/notification_v1.rb +0 -96
- data/lib/jamf/api/jamf_pro/oapi_schemas/object_history.rb +0 -141
- data/lib/jamf/api/jamf_pro/oapi_schemas/onboarding_configuration.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/onboarding_eligible_item.rb +0 -104
- data/lib/jamf/api/jamf_pro/oapi_schemas/onboarding_eligible_items_search_result.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/onboarding_item.rb +0 -140
- data/lib/jamf/api/jamf_pro/oapi_schemas/package_manifest.rb +0 -148
- data/lib/jamf/api/jamf_pro/oapi_schemas/parent_app.rb +0 -131
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policies.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_detail.rb +0 -190
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_details.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_list_view.rb +0 -142
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log_detail.rb +0 -102
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log_detail_action.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log_eligible_retry_count.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log_retry.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_log_v2.rb +0 -133
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_logs.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_policy_v2_on_dashboard.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration_base.rb +0 -163
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration_definition_kill_app.rb +0 -81
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration_dependencies.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration_dependency.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration_extension_attributes.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_configuration_patch.rb +0 -126
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_definition.rb +0 -118
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_definitions.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_extension_attributes.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_packages.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_report.rb +0 -130
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_software_title_report_search_result.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_summary.rb +0 -125
- data/lib/jamf/api/jamf_pro/oapi_schemas/patch_summary_version.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/personal_hotspot_setting.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/plugin_path.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/policy_properties.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/policy_properties_v1.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/post_computer_prestage_v2.rb +0 -85
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_dependencies.rb +0 -85
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_dependency.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_file_attachment.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_file_attachment_v2.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope.rb +0 -84
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_assignment.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_response.rb +0 -109
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_scope_update.rb +0 -113
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_sync_status.rb +0 -98
- data/lib/jamf/api/jamf_pro/oapi_schemas/prestage_sync_status_v2.rb +0 -98
- data/lib/jamf/api/jamf_pro/oapi_schemas/process_texts_search_results.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/protect_registration_request.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/protect_settings_response.rb +0 -141
- data/lib/jamf/api/jamf_pro/oapi_schemas/protect_updatable_settings_request.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/purchasing_v2.rb +0 -153
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_computer_prestage_v2.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/put_mobile_device_prestage.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/recalculation_results.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/reenrollment.rb +0 -117
- data/lib/jamf/api/jamf_pro/oapi_schemas/remote_administration_response.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/remote_administration_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/renew_mdm_profile_response.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/restart_device_command.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/return_to_service_configuration.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/return_to_service_configuration_request.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/return_to_service_configuration_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/safelisted_app.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/scheduler_job.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/scheduler_jobs.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/scheduler_summary.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/scheduler_trigger.rb +0 -95
- data/lib/jamf/api/jamf_pro/oapi_schemas/script.rb +0 -193
- data/lib/jamf/api/jamf_pro/oapi_schemas/scripts_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/security_v2.rb +0 -130
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_install_settings.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_interaction_settings.rb +0 -122
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_login_settings.rb +0 -113
- data/lib/jamf/api/jamf_pro/oapi_schemas/self_service_settings.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/session.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_candidate_request.rb +0 -108
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_details.rb +0 -175
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_details_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_history_item.rb +0 -145
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_history_item_details.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_history_item_with_details.rb +0 -153
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_history_search_results.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/session_status.rb +0 -98
- data/lib/jamf/api/jamf_pro/oapi_schemas/set_auto_admin_password_command.rb +0 -92
- data/lib/jamf/api/jamf_pro/oapi_schemas/set_recovery_lock_command.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/settings_command.rb +0 -166
- data/lib/jamf/api/jamf_pro/oapi_schemas/shared_device_compliance_feature_toggle.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/shared_device_configuration.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/shut_down_device_command.rb +0 -77
- data/lib/jamf/api/jamf_pro/oapi_schemas/signature.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/site.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/site_object.rb +0 -150
- data/lib/jamf/api/jamf_pro/oapi_schemas/smart_search_criterion.rb +0 -118
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_basic_credentials.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_connection_settings.rb +0 -113
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_graph_api_credentials.rb +0 -98
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_sender_settings.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_server.rb +0 -158
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_server_test.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/smtp_server_v2.rb +0 -127
- data/lib/jamf/api/jamf_pro/oapi_schemas/software_title_configuration_on_dashboard.rb +0 -82
- data/lib/jamf/api/jamf_pro/oapi_schemas/software_update_settings.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_failover_data.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore.rb +0 -128
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_cert_parse_response.rb +0 -130
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_details.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_parse.rb +0 -103
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_response.rb +0 -120
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_response_with_details.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_keystore_with_details.rb +0 -93
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_metadata_url.rb +0 -85
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_settings_v1.rb +0 -253
- data/lib/jamf/api/jamf_pro/oapi_schemas/sso_settings_v2.rb +0 -253
- data/lib/jamf/api/jamf_pro/oapi_schemas/startup_status.rb +0 -197
- data/lib/jamf/api/jamf_pro/oapi_schemas/static_group.rb +0 -94
- data/lib/jamf/api/jamf_pro/oapi_schemas/static_group_assignment.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/static_group_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/static_group_summary.rb +0 -101
- data/lib/jamf/api/jamf_pro/oapi_schemas/static_user_group.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_certificate_upload.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_create.rb +0 -91
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/supervision_identity_update.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/teacher_features.rb +0 -105
- data/lib/jamf/api/jamf_pro/oapi_schemas/teacher_settings_request.rb +0 -108
- data/lib/jamf/api/jamf_pro/oapi_schemas/teacher_settings_response.rb +0 -122
- data/lib/jamf/api/jamf_pro/oapi_schemas/time_frame.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/time_zone.rb +0 -107
- data/lib/jamf/api/jamf_pro/oapi_schemas/tv_os_details.rb +0 -141
- data/lib/jamf/api/jamf_pro/oapi_schemas/udids.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_ios_v2.rb +0 -81
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_mobile_device_v2.rb +0 -137
- data/lib/jamf/api/jamf_pro/oapi_schemas/update_tv_os.rb +0 -88
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_mappings.rb +0 -193
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_preferences_settings.rb +0 -100
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_attributes.rb +0 -117
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_search.rb +0 -112
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_search_request.rb +0 -83
- data/lib/jamf/api/jamf_pro/oapi_schemas/user_test_search_response.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_ca_record.rb +0 -148
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_pki_payload_record.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/venafi_pki_payload_record_search_results.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/verbose_package_deployment_response.rb +0 -90
- data/lib/jamf/api/jamf_pro/oapi_schemas/voice_roaming_setting.rb +0 -87
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_content.rb +0 -154
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_content_list.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location_list_view.rb +0 -184
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location_patch.rb +0 -111
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_location_post.rb +0 -114
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_locations.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_subscription.rb +0 -86
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_subscription_base.rb +0 -127
- data/lib/jamf/api/jamf_pro/oapi_schemas/volume_purchasing_subscriptions.rb +0 -89
- data/lib/jamf/api/jamf_pro/oapi_schemas/watch_os_details_v2.rb +0 -201
- data/lib/jamf/api/jamf_pro/oapi_schemas/web_link.rb +0 -87
@@ -0,0 +1,237 @@
|
|
1
|
+
# Copyright 2025 Pixar
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "Apache License")
|
4
|
+
# with the following modification; you may not use this file except in
|
5
|
+
# compliance with the Apache License and the following modification to it:
|
6
|
+
# Section 6. Trademarks. is deleted and replaced with:
|
7
|
+
#
|
8
|
+
# 6. Trademarks. This License does not grant permission to use the trade
|
9
|
+
# names, trademarks, service marks, or product names of the Licensor
|
10
|
+
# and its affiliates, except as required to comply with Section 4(c) of
|
11
|
+
# the License and to reproduce the content of the NOTICE file.
|
12
|
+
#
|
13
|
+
# You may obtain a copy of the Apache License at
|
14
|
+
#
|
15
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
16
|
+
#
|
17
|
+
# Unless required by applicable law or agreed to in writing, software
|
18
|
+
# distributed under the Apache License with the above modification is
|
19
|
+
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
20
|
+
# KIND, either express or implied. See the Apache License for the specific
|
21
|
+
# language governing permissions and limitations under the Apache License.
|
22
|
+
|
23
|
+
# frozen_string_literal: true
|
24
|
+
|
25
|
+
module Jamf
|
26
|
+
|
27
|
+
module ManagedSoftwareUpdates
|
28
|
+
|
29
|
+
# A ManagedSoftwareUpdate Plan contains the details for
|
30
|
+
# installing managed software updates via MDM/DDM on a device.
|
31
|
+
# When plans are created for a group there will be one for every member of the group
|
32
|
+
#
|
33
|
+
class Plan < Jamf::OAPISchemas::ManagedSoftwareUpdatePlan
|
34
|
+
|
35
|
+
# Mix-Ins
|
36
|
+
#####################################
|
37
|
+
|
38
|
+
include Jamf::CollectionResource
|
39
|
+
extend Jamf::Filterable
|
40
|
+
include Jamf::Immutable
|
41
|
+
|
42
|
+
########### RELATED OAPI OBJECTS
|
43
|
+
|
44
|
+
# The OAPI object class we get back from a 'list' query to get the
|
45
|
+
# whole collection, or a subset of it. It contains a :results key
|
46
|
+
# which is an array of data for objects of the parent class.
|
47
|
+
SEARCH_RESULT_OBJECT = Jamf::OAPISchemas::ManagedSoftwareUpdatePlans
|
48
|
+
|
49
|
+
# The OAPI object class we send with a POST request to make a new member of
|
50
|
+
# the collection in Jamf. This is often the same as the parent class.
|
51
|
+
POST_OBJECT = Jamf::OAPISchemas::ManagedSoftwareUpdatePlanPost
|
52
|
+
|
53
|
+
GROUP_POST_OBJECT = Jamf::OAPISchemas::ManagedSoftwareUpdatePlanGroupPost
|
54
|
+
|
55
|
+
############# API PATHS
|
56
|
+
|
57
|
+
# The path for GETting the list of all objects in the collection, possibly
|
58
|
+
# filtered, sorted, and/or paged
|
59
|
+
# REQUIRED for all collection resources
|
60
|
+
#
|
61
|
+
# GET_PATH, POST_PATH, PUT_PATH, PATCH_PATH, and DELETE_PATH are automatically
|
62
|
+
# assumed from the LIST_PATH if they follow the standards:
|
63
|
+
# - GET_PATH = "#{LIST_PATH}/id"
|
64
|
+
# - fetch an object from the collection
|
65
|
+
# - POST_PATH = LIST_PATH
|
66
|
+
# - create a new object in the collection
|
67
|
+
# - PUT_PATH = "#{LIST_PATH}/id"
|
68
|
+
# - update an object passing all its values back.
|
69
|
+
# Most objects use this or PATCH but not both
|
70
|
+
# - PATCH_PATH = "#{LIST_PATH}/id"
|
71
|
+
# - update an object passing some of its values back
|
72
|
+
# Most objects use this or PUT but not both
|
73
|
+
# - DELETE_PATH = "#{LIST_PATH}/id"
|
74
|
+
# - delete an object from the collection
|
75
|
+
#
|
76
|
+
# If those paths differ from the standards, the constants must be defined
|
77
|
+
# here
|
78
|
+
#
|
79
|
+
LIST_PATH = "#{MANAGED_SW_UPDATES_PATH}/plans"
|
80
|
+
|
81
|
+
# GETting this resource provides a list of existing group plans
|
82
|
+
# POSTing to this resource will initiate a new plan targeting a group of devices
|
83
|
+
GROUP_PLANS_PATH = "#{LIST_PATH}/group"
|
84
|
+
|
85
|
+
# Must define this when extending Filterable
|
86
|
+
FILTER_KEYS = %i[
|
87
|
+
planUuid device.deviceId device.objectType updateAction versionType specificVersion maxDeferrals recipeId forceInstallLocalDateTime state
|
88
|
+
].freeze
|
89
|
+
|
90
|
+
GROUP_TYPES = {
|
91
|
+
computer: 'COMPUTER_GROUP',
|
92
|
+
mobile_device: 'MOBILE_DEVICE_GROUP'
|
93
|
+
}.freeze
|
94
|
+
|
95
|
+
# Class Methods
|
96
|
+
######################################
|
97
|
+
|
98
|
+
# Get an Array of all plans for a given group, either computer or mobile device.
|
99
|
+
#
|
100
|
+
# @param group_id [Integer] the ID of the group to get plans for
|
101
|
+
# @param type [Symbol] the type of group, either :computer or :mobile_device
|
102
|
+
# @param cnx [Jamf::Connection] the connection to use, defaults to Jamf.cnx
|
103
|
+
# @return [Array<Jamf::ManagedSoftwareUpdates::Plan>] the plans for the group
|
104
|
+
################################
|
105
|
+
def self.group_plans(group_id:, type:, cnx: Jamf.cnx)
|
106
|
+
gtype = GROUP_TYPES[type.to_sym]
|
107
|
+
raise ArgumentError, "Invalid group type: #{type}, must be one of :#{GROUP_TYPES.keys.join ', :'}" unless gtype
|
108
|
+
|
109
|
+
plans = Jamf.cnx.jp_get("#{GROUP_PLANS_PATH}/#{group_id}?group-type=#{gtype}")[:results]
|
110
|
+
plans.map do |plan_data|
|
111
|
+
plan_data[:cnx] = cnx
|
112
|
+
plan_data[:instantiate_me] = true
|
113
|
+
new(**plan_data)
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
# Get the declarations for a plan
|
118
|
+
#
|
119
|
+
# @param plan_uuid [String] the UUID of the plan to get declarations for
|
120
|
+
#
|
121
|
+
# @param cnx [Jamf::Connection] the connection to use, defaults to Jamf.cnx
|
122
|
+
#
|
123
|
+
# @return [Array<Jamf::OAPISchemas::DssDeclaration>] the declarations for the plan
|
124
|
+
############################
|
125
|
+
def self.declarations(planUuid, cnx: Jamf.cnx)
|
126
|
+
cnx.jp_get("#{LIST_PATH}/#{planUuid}/declarations")[:declarations].map do |declaration|
|
127
|
+
Jamf::OAPISchemas::DssDeclaration.new(declaration)
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
# get the events for a plan
|
132
|
+
#
|
133
|
+
# BUG ? : At lease thru Jamf Pro 11.17.1, this endpoint returns a double-wrapped JSON object
|
134
|
+
# The first one is a Hash with one key :events, which is a String containing the JSON
|
135
|
+
# for the actual events - an Array of Hashes, which don't have an OAPI schema.
|
136
|
+
#
|
137
|
+
# Those Hashes look like this, but aren't consistent
|
138
|
+
#
|
139
|
+
# {:type=>".QueueAvailableOsUpdatesCommand",
|
140
|
+
# :eventSentEpoch=>1749158978751,
|
141
|
+
# :managementUUID=>"a94b11f0-c870-4006-82fe-e7afa981d61c",
|
142
|
+
# :processManagerUUID=>"a4b45b0a-4a46-4a52-8322-ab4f9895ab21",
|
143
|
+
# :availableOSUpdateDelay=>300},
|
144
|
+
#
|
145
|
+
# {:id=>4238,
|
146
|
+
# :type=>".AvailableOsUpdateRequestCompletedEvent",
|
147
|
+
# :deviceObjectId=>1,
|
148
|
+
# :managementUUID=>"a94b11f0-c870-4006-82fe-e7afa981d61c",
|
149
|
+
# :eventReceivedEpoch=>1749159337161,
|
150
|
+
# :processManagerUUID=>"a4b45b0a-4a46-4a52-8322-ab4f9895ab21",
|
151
|
+
# :availableOSUpdatesDto=>
|
152
|
+
# {:deviceObjectId=>1,
|
153
|
+
# :managementUUID=>"a94b11f0-c870-4006-82fe-e7afa981d61c",
|
154
|
+
# :availableOsUpdates=>
|
155
|
+
# [{:build=>"",
|
156
|
+
# :preview=>false,
|
157
|
+
# :version=>"16.4",
|
158
|
+
# :critical=>false,
|
159
|
+
# :productKey=>"082-41241",
|
160
|
+
# :installSize=>0,
|
161
|
+
# :productName=>"",
|
162
|
+
# :downloadSize=>882235914,
|
163
|
+
# :majorOSUpdate=>false,
|
164
|
+
# :firmwareUpdate=>false,
|
165
|
+
# :restartRequired=>false,
|
166
|
+
# :humanReadableName=>"Command Line Tools for Xcode",
|
167
|
+
# :allowsInstallLater=>true,
|
168
|
+
# :appIdentifiersToClose=>[],
|
169
|
+
# :configurationDataUpdate=>false},
|
170
|
+
# {:build=>"",
|
171
|
+
# :preview=>false,
|
172
|
+
# :version=>"5299",
|
173
|
+
# :critical=>false,
|
174
|
+
# :productKey=>"082-54857",
|
175
|
+
# :installSize=>0,
|
176
|
+
# :productName=>"",
|
177
|
+
# :downloadSize=>1256157,
|
178
|
+
# :majorOSUpdate=>false,
|
179
|
+
# :firmwareUpdate=>false,
|
180
|
+
# :restartRequired=>false,
|
181
|
+
# :humanReadableName=>"XProtectPlistConfigData",
|
182
|
+
# :allowsInstallLater=>true,
|
183
|
+
# :appIdentifiersToClose=>[],
|
184
|
+
# :configurationDataUpdate=>true}],
|
185
|
+
# :eventReceivedEpoch=>1749159337161
|
186
|
+
# }
|
187
|
+
# }
|
188
|
+
#
|
189
|
+
# note that some have id's and some don't. Some have response data (like the available OS updates)
|
190
|
+
# which can contain a more complex data structure.
|
191
|
+
#
|
192
|
+
# NOTE: This may be intentional, but is not documented in the JPAPI docs. The endpoint is "events"
|
193
|
+
# but what's returned is an 'event store'. Its possible that the data comes from Apple as JSON
|
194
|
+
# and Jamf is just passing it through.
|
195
|
+
# Awaiting clarification from Jamf on this.
|
196
|
+
#
|
197
|
+
# In any case, this method will unwrap the JSON and return the events as an Array of Hashes
|
198
|
+
#
|
199
|
+
# @param plan_uuid [String] the UUID of the plan to get events for
|
200
|
+
#
|
201
|
+
# @param cnx [Jamf::Connection] the connection to use, defaults to Jamf.cnx
|
202
|
+
#
|
203
|
+
# @return [Array<Hash>] the events for the plan
|
204
|
+
############################
|
205
|
+
def self.event_store(planUuid, cnx: Jamf.cnx)
|
206
|
+
data = cnx.jp_get("#{LIST_PATH}/#{planUuid}/events")
|
207
|
+
if data[:events].is_a?(String) && data[:events].start_with?('{"events":')
|
208
|
+
JSON.parse data[:events], symbolize_names: true
|
209
|
+
else
|
210
|
+
data[:events]
|
211
|
+
end
|
212
|
+
end
|
213
|
+
|
214
|
+
# Instance Methods
|
215
|
+
######################################
|
216
|
+
|
217
|
+
# get the declarations for this plan
|
218
|
+
#
|
219
|
+
# @return [Array<Jamf::OAPISchemas::DssDeclaration>] the declarations for the plan
|
220
|
+
############################
|
221
|
+
def declarations
|
222
|
+
self.class.declarations(planUuid, cnx: cnx)
|
223
|
+
end
|
224
|
+
|
225
|
+
# get the events for this plan
|
226
|
+
#
|
227
|
+
# @return [Array<Jamf::OAPISchemas::DssDeclaration>] the events for the plan
|
228
|
+
############################
|
229
|
+
def event_store
|
230
|
+
self.class.event_store(planUuid, cnx: cnx)
|
231
|
+
end
|
232
|
+
|
233
|
+
end # class Plan
|
234
|
+
|
235
|
+
end # module ManagedSoftwareUpdates
|
236
|
+
|
237
|
+
end # module Jamf
|
@@ -0,0 +1,291 @@
|
|
1
|
+
# Copyright 2025 Pixar
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "Apache License")
|
4
|
+
# with the following modification; you may not use this file except in
|
5
|
+
# compliance with the Apache License and the following modification to it:
|
6
|
+
# Section 6. Trademarks. is deleted and replaced with:
|
7
|
+
#
|
8
|
+
# 6. Trademarks. This License does not grant permission to use the trade
|
9
|
+
# names, trademarks, service marks, or product names of the Licensor
|
10
|
+
# and its affiliates, except as required to comply with Section 4(c) of
|
11
|
+
# the License and to reproduce the content of the NOTICE file.
|
12
|
+
#
|
13
|
+
# You may obtain a copy of the Apache License at
|
14
|
+
#
|
15
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
16
|
+
#
|
17
|
+
# Unless required by applicable law or agreed to in writing, software
|
18
|
+
# distributed under the Apache License with the above modification is
|
19
|
+
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
20
|
+
# KIND, either express or implied. See the Apache License for the specific
|
21
|
+
# language governing permissions and limitations under the Apache License.
|
22
|
+
|
23
|
+
# frozen_string_literal: true
|
24
|
+
|
25
|
+
module Jamf
|
26
|
+
|
27
|
+
# This module provides access to the Managed Software Updates endpoints of the Jamf Pro API.
|
28
|
+
#
|
29
|
+
# Sending managed software updates is done by creating a "plan" for one or more devices, or
|
30
|
+
# a group of devices, either computers or mobile devices. Plans are created with the
|
31
|
+
# {.send_managed_sw_update} module method, which takes the target devices or group, the update action,
|
32
|
+
# the version type, and other optional parameters such as specific version, build version.
|
33
|
+
#
|
34
|
+
# Once created/sent, Plans, identified by their planUuid, can be retrieved with the
|
35
|
+
# Jamf::ManagedSoftwareUpdate::Plan class which encapsulates the details of the plan, including
|
36
|
+
# the latest status of the update from the Jamf Pro server.
|
37
|
+
#
|
38
|
+
# You can also retrieve the status of any computer or group from the MDM server/Client Machines via the
|
39
|
+
# Jamf::ManagedSoftwareUpdates.status method, which returns an array of Status objects
|
40
|
+
# for the devices or group members you specify.
|
41
|
+
#
|
42
|
+
# TODO: We will integrate the ManagedSoftwareUpdate::Plan class into Jamf::Computer,
|
43
|
+
# Jamf::MobileDevice, Jamf::ComputerGroup, and Jamf::MobileDeviceGroup (and/or their JP API versions)
|
44
|
+
# as both a class method and an instance method, so that you can send updates directly
|
45
|
+
# from those classes and instances.
|
46
|
+
#
|
47
|
+
# We will probably not add support for the "feature-toggle" endpoints, since eventually
|
48
|
+
# this 'feature' will be the only way to do these updates, and that such toggling is better
|
49
|
+
# done in the web app.
|
50
|
+
#
|
51
|
+
module ManagedSoftwareUpdates
|
52
|
+
|
53
|
+
############# API PATHS
|
54
|
+
|
55
|
+
MANAGED_SW_UPDATES_PATH = 'v1/managed-software-updates'
|
56
|
+
|
57
|
+
AVAILABLE_VERSIONS_PATH = "#{MANAGED_SW_UPDATES_PATH}/available-updates"
|
58
|
+
|
59
|
+
DEVICE_POST_PATH = "#{MANAGED_SW_UPDATES_PATH}/plans"
|
60
|
+
|
61
|
+
GROUP_POST_PATH = "#{MANAGED_SW_UPDATES_PATH}/plans/group"
|
62
|
+
|
63
|
+
STATUS_PATH = "#{MANAGED_SW_UPDATES_PATH}/update-statuses"
|
64
|
+
|
65
|
+
COMPUTER_STATUS_PATH = "#{STATUS_PATH}/computers"
|
66
|
+
|
67
|
+
COMPUTER_GROUP_STATUS_PATH = "#{STATUS_PATH}/computer-groups"
|
68
|
+
|
69
|
+
MOBILE_DEVICE_STATUS_PATH = "#{STATUS_PATH}/mobile-devices"
|
70
|
+
|
71
|
+
MOBILE_DEVICE_GROUP_STATUS_PATH = "#{STATUS_PATH}/mobile-device-groups"
|
72
|
+
|
73
|
+
STATUS_FILTER_KEYS = %i[
|
74
|
+
osUpdatesStatusId device.deviceId device.objectType downloaded downloadPercentComplete productKey status deferralsRemaining maxDeferrals nextScheduledInstall created updated
|
75
|
+
].freeze
|
76
|
+
|
77
|
+
DEVICE_TYPES = Jamf::OAPISchemas::PlanDevicePost::OBJECT_TYPE_OPTIONS
|
78
|
+
|
79
|
+
GROUP_TYPES = Jamf::OAPISchemas::PlanGroupPost::OBJECT_TYPE_OPTIONS
|
80
|
+
|
81
|
+
UPDATE_ACTIONS = Jamf::OAPISchemas::PlanConfigurationPost::UPDATE_ACTION_OPTIONS
|
82
|
+
|
83
|
+
VERSION_TYPES = Jamf::OAPISchemas::PlanConfigurationPost::VERSION_TYPE_OPTIONS
|
84
|
+
|
85
|
+
# Class Methods
|
86
|
+
######################################
|
87
|
+
|
88
|
+
# get the list of available OS versions for macOS and/or iOS/iPadOS
|
89
|
+
#
|
90
|
+
# @param cnx [Jamf::Connection] the connection to use, defaults to Jamf.cnx
|
91
|
+
# @return [Hash {Symbol => Array<String>}]
|
92
|
+
###################
|
93
|
+
def self.available_os_updates(cnx: Jamf.cnx)
|
94
|
+
cnx.jp_get(AVAILABLE_VERSIONS_PATH)[:availableUpdates]
|
95
|
+
end
|
96
|
+
|
97
|
+
# Send an MDM/DDM OS update command to one or more target devices or a group
|
98
|
+
#
|
99
|
+
# TODO: Integrate this into Jamf::Computer, Jamf::MobileDevice, Jamf::ComputerGroup,
|
100
|
+
# and Jamf::MobileDeviceGroup as both a class method and an instance method.
|
101
|
+
#
|
102
|
+
# @param deviceIds [String, Integer, Array<String, Integer>] Required if no groupId is given.
|
103
|
+
# The Jamf ID for the device targets, may be integers or integer-strings.
|
104
|
+
#
|
105
|
+
# @param groupId [String, Integer] Requied if no deviceIds are given. The Jamf ID for
|
106
|
+
# the group target, may be integer or integer-string.
|
107
|
+
#
|
108
|
+
# @param targetType [Symbol, String] Required. The type of device or group.
|
109
|
+
# For devices, one of :computer, :mobile_device, :apple_tv.
|
110
|
+
# For groups, one of :computer_group, :mobile_device_group.
|
111
|
+
#
|
112
|
+
# @param updateAction [Symbol, String] Required. One of :download_only, :download_install,
|
113
|
+
# :download_install_allow_deferral, :download_install_restart, :download_install_schedule.
|
114
|
+
#
|
115
|
+
# @param versionType [Symbol, String] Required. One of :latest_major, :latest_minor,
|
116
|
+
# :latest_any, :specific_version, :custom_version
|
117
|
+
#
|
118
|
+
# @param specificVersion [String] Optional. Indicates the specific version to update to.
|
119
|
+
# Only available when the versionType is set to specific_version or custom_version
|
120
|
+
#
|
121
|
+
# @param buildVersion [String] Optional. Indicates the build version to update to.
|
122
|
+
# Only available when the version type is set to custom version.
|
123
|
+
#
|
124
|
+
# @param maxDeferrals [Integer] Required when the provided updateAction is :download_install_allow_deferral.
|
125
|
+
# Not applicable to all updateActions.
|
126
|
+
#
|
127
|
+
# @param forceInstallLocalDateTime [Time, Jamf::Timestamp, String] Optional. The local date and time
|
128
|
+
# of the device to force update by. NOTE: This operation requires Declarative Device Management and
|
129
|
+
# is only available for Jamf Cloud customers.
|
130
|
+
#
|
131
|
+
# @param cnx [Jamf::Connection] The API connection to use. Defaults to Jamf.cnx
|
132
|
+
#
|
133
|
+
# @return [Hash {String => String}] deviceId => planUuid, for all devices targeted.
|
134
|
+
########################
|
135
|
+
def self.send_managed_sw_update(targetType:, updateAction:, versionType:, deviceIds: nil, groupId: nil, cnx: Jamf.cnx, **opts)
|
136
|
+
deviceIds, groupId, targetType = validate_targets(targetType: targetType, deviceIds: deviceIds, groupId: groupId)
|
137
|
+
|
138
|
+
# Ensure we have a valid update action
|
139
|
+
updateAction = validate_update_action(updateAction)
|
140
|
+
|
141
|
+
# Ensure we have a valid version type
|
142
|
+
versionType = validate_version_type(versionType)
|
143
|
+
|
144
|
+
# Build the request body, starting with the common config
|
145
|
+
request_body = {
|
146
|
+
config: {
|
147
|
+
updateAction: updateAction,
|
148
|
+
versionType: versionType
|
149
|
+
}
|
150
|
+
}
|
151
|
+
|
152
|
+
request_body[:config][:specificVersion] = opts[:specificVersion] if opts[:specificVersion]
|
153
|
+
request_body[:config][:buildVersion] = opts[:buildVersion] if opts[:buildVersion]
|
154
|
+
request_body[:config][:maxDeferrals] = opts[:maxDeferrals] if opts[:maxDeferrals]
|
155
|
+
if opts[:forceInstallLocalDateTime]
|
156
|
+
time = Time.parse opts[:forceInstallLocalDateTime] unless opts[:forceInstallLocalDateTime].is_a? Time
|
157
|
+
request_body[:config][:forceInstallLocalDateTime] = time.strftime('%FT%T')
|
158
|
+
end
|
159
|
+
|
160
|
+
# Add the target information
|
161
|
+
if deviceIds
|
162
|
+
request_body[:devices] = deviceIds.map { |id| { deviceId: id, objectType: targetType } }
|
163
|
+
post_path = DEVICE_POST_PATH
|
164
|
+
else
|
165
|
+
request_body[:group] = {
|
166
|
+
groupId: groupId,
|
167
|
+
objectType: targetType
|
168
|
+
}
|
169
|
+
post_path = GROUP_POST_PATH
|
170
|
+
end
|
171
|
+
|
172
|
+
response = cnx.jp_post(post_path, request_body)
|
173
|
+
parsed_response = Jamf::OAPISchemas::ManagedSoftwareUpdatePlanPostResponse.new response
|
174
|
+
|
175
|
+
result = {}
|
176
|
+
parsed_response.plans.each do |plan|
|
177
|
+
result[plan.device.deviceId] = plan.planId
|
178
|
+
end
|
179
|
+
|
180
|
+
result
|
181
|
+
end
|
182
|
+
|
183
|
+
# Retrieve one or more ManagedSoftwareUpdateStatuses objects for a device, group members,
|
184
|
+
# or the result of an arbitrary filter on all Status objects.
|
185
|
+
#
|
186
|
+
# TODO: Integrate this into Jamf::Computer, Jamf::MobileDevice, Jamf::ComputerGroup,
|
187
|
+
# and Jamf::MobileDeviceGroup as both a class method and an instance method.
|
188
|
+
#
|
189
|
+
# @param type [Symbol] Required unless using a filter. One of :computer, :mobile_device,
|
190
|
+
# :mobile_device_group, :computer_group.
|
191
|
+
#
|
192
|
+
# @param id [Integer, String] Required unless using a filter. The Jamf ID of the device or group
|
193
|
+
#
|
194
|
+
# @param filter [String] Required unless providing type: and id:. An RSQL filter string to apply
|
195
|
+
# to the collection of Status objects. Available filter keys are: osUpdatesStatusId device.deviceId
|
196
|
+
# device.objectType downloaded downloadPercentComplete productKey status deferralsRemaining
|
197
|
+
# maxDeferrals nextScheduledInstall created updated
|
198
|
+
#
|
199
|
+
# @param cnx [Jamf::Connection] The API connection to use. Defaults to Jamf.cnx
|
200
|
+
#
|
201
|
+
# @return [Array<Jamf::OAPISchemas::ManagedSoftwareUpdateStatus>] The Status objects for the device
|
202
|
+
# or members of the group, or the filter results.
|
203
|
+
#
|
204
|
+
###############################
|
205
|
+
def self.status(type: nil, id: nil, filter: nil, cnx: Jamf.cnx)
|
206
|
+
raise ArgumentError, 'Must provide either type and id, or a filter' if (type || id) && filter
|
207
|
+
raise ArgumentError, 'Must provide both type and id if using either' if (type || id) && !(type && id)
|
208
|
+
|
209
|
+
get_path =
|
210
|
+
case type
|
211
|
+
when :computer
|
212
|
+
"#{COMPUTER_STATUS_PATH}/#{id}"
|
213
|
+
when :mobile_device
|
214
|
+
"#{MOBILE_DEVICE_STATUS_PATH}/#{id}"
|
215
|
+
when :computer_group
|
216
|
+
"#{COMPUTER_GROUP_STATUS_PATH}/#{id}"
|
217
|
+
when :mobile_device_group
|
218
|
+
"#{MOBILE_DEVICE_GROUP_STATUS_PATH}/#{id}"
|
219
|
+
else
|
220
|
+
unless type.nil?
|
221
|
+
raise ArgumentError,
|
222
|
+
"Invalid type: #{type}, must be one of: #{%i[computer mobile_device computer_group mobile_device_group].join ', '}"
|
223
|
+
end
|
224
|
+
raise ArgumentError, 'filter required if not using type and id' unless filter
|
225
|
+
|
226
|
+
"#{STATUS_PATH}/?filter=#{CGI.escape filter}"
|
227
|
+
end
|
228
|
+
|
229
|
+
Jamf::OAPISchemas::ManagedSoftwareUpdateStatuses.new(cnx.jp_get(get_path)).results
|
230
|
+
end
|
231
|
+
|
232
|
+
# Validate the device or group ids and type, returen validated values.
|
233
|
+
#
|
234
|
+
# @param deviceIds [String, Integer, Array<String, Integer>] Required if no groupId is given.
|
235
|
+
# Identifiers for the device targets.
|
236
|
+
#
|
237
|
+
# @param groupId [String, Integer] Requied if no deviceIds are given. Identifier for
|
238
|
+
# the group target.
|
239
|
+
#
|
240
|
+
# @param type [Symbol, String] Required. The type of device or group.
|
241
|
+
# For devices, one of :computer, :mobile_device, :apple_tv.
|
242
|
+
# For groups, one of :computer_group, :mobile_device_group.
|
243
|
+
#
|
244
|
+
# @return [Hash] a hash with the keys :type, :deviceIds, and :groupId
|
245
|
+
##########################
|
246
|
+
def self.validate_targets(targetType:, deviceIds: nil, groupId: nil)
|
247
|
+
raise ArgumentError, 'Must provide either deviceIds or groupId' if deviceIds.nil? && groupId.nil?
|
248
|
+
raise ArgumentError, 'Must specify either deviceIds or groupId, but not both' if deviceIds && groupId
|
249
|
+
|
250
|
+
targetType = targetType.to_s.upcase
|
251
|
+
if deviceIds
|
252
|
+
# Ensure we have a valid device type
|
253
|
+
raise ArgumentError, "Invalid device type: #{targetType}, mst be one of: #{DEVICE_TYPES.join ', '}" unless DEVICE_TYPES.include?(targetType)
|
254
|
+
|
255
|
+
deviceIds = [deviceIds] unless deviceIds.is_a?(Array)
|
256
|
+
else
|
257
|
+
# Ensure we have a valid group type
|
258
|
+
raise ArgumentError, "Invalid group type: #{targetType}, mst be one of: #{GROUP_TYPES.join ', '}" unless GROUP_TYPES.include?(targetType)
|
259
|
+
end
|
260
|
+
|
261
|
+
[deviceIds, groupId, targetType]
|
262
|
+
end
|
263
|
+
private_class_method :validate_targets
|
264
|
+
|
265
|
+
# Validate the update action, convert it to the format expected by the API
|
266
|
+
# @param updateAction [Symbol, String] the update action to validate
|
267
|
+
# @return [String] the update action in the format expected by the API
|
268
|
+
###########################
|
269
|
+
def self.validate_update_action(updateAction)
|
270
|
+
updateAction = updateAction.to_s.upcase
|
271
|
+
raise ArgumentError, "Invalid updateAction: #{updateAction}, must be one of: #{UPDATE_ACTIONS.join ', '}" unless UPDATE_ACTIONS.include?(updateAction)
|
272
|
+
|
273
|
+
updateAction
|
274
|
+
end
|
275
|
+
private_class_method :validate_update_action
|
276
|
+
|
277
|
+
# Validate the version type, convert it to the format expected by the API
|
278
|
+
# @param versionType [Symbol, String] the version type to validate
|
279
|
+
# @return [String] the version type in the format expected by the API
|
280
|
+
#########################
|
281
|
+
def self.validate_version_type(versionType)
|
282
|
+
versionType = versionType.to_s.upcase
|
283
|
+
raise ArgumentError, "Invalid versionType: #{versionType}, must be one of: #{VERSION_TYPES.join ', '}" unless VERSION_TYPES.include?(versionType)
|
284
|
+
|
285
|
+
versionType
|
286
|
+
end
|
287
|
+
private_class_method :validate_version_type
|
288
|
+
|
289
|
+
end # module MacOSManagedUpdates
|
290
|
+
|
291
|
+
end # module Jamf
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2025 Pixar
|
2
2
|
#
|
3
3
|
# Licensed under the Apache License, Version 2.0 (the "Apache License")
|
4
4
|
# with the following modification; you may not use this file except in
|
@@ -104,6 +104,11 @@ module Jamf
|
|
104
104
|
create_setters attr_name, attr_def
|
105
105
|
end # do |attr_name, attr_def|
|
106
106
|
|
107
|
+
if defined? self::OBJECT_NAME_ATTR
|
108
|
+
alias_method(:name, self::OBJECT_NAME_ATTR)
|
109
|
+
alias_method('name=', "#{self::OBJECT_NAME_ATTR}=")
|
110
|
+
end
|
111
|
+
|
107
112
|
@oapi_properties_parsed = true
|
108
113
|
end # parse_object_model
|
109
114
|
|
@@ -185,7 +190,7 @@ module Jamf
|
|
185
190
|
note_unsaved_change attr_name, old_value
|
186
191
|
end # define method
|
187
192
|
|
188
|
-
|
193
|
+
nil unless attr_def[:aliases]
|
189
194
|
end # create_full_array_setter
|
190
195
|
private_class_method :create_full_array_setters
|
191
196
|
|
@@ -470,6 +475,9 @@ module Jamf
|
|
470
475
|
# Comparable by the sha1 hash of our properties.
|
471
476
|
# Subclasses or mixins may override this in ways that make
|
472
477
|
# sense for them
|
478
|
+
# TODO: Using this may not make sense for most objects, esp
|
479
|
+
# when comparing objects instantiated from Create vs those
|
480
|
+
# from Fetch.
|
473
481
|
def <=>(other)
|
474
482
|
sha1_hash <=> other.sha1_hash
|
475
483
|
end
|
@@ -572,8 +580,8 @@ module Jamf
|
|
572
580
|
# @return (see parse_single_init_value)
|
573
581
|
#
|
574
582
|
def parse_enum_value(api_value, attr_name, attr_def)
|
575
|
-
Jamf::Validate.in_enum
|
576
|
-
|
583
|
+
Jamf::Validate.in_enum api_value, enum: attr_def[:enum],
|
584
|
+
msg: "#{api_value} is not in the allowed values for attribute #{attr_name}. Must be one of: #{attr_def[:enum].join ', '}"
|
577
585
|
end
|
578
586
|
|
579
587
|
# call to_jamf on a single value if it knows that method
|