ruby-jss 1.2.4a4 → 1.3.3
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ruby-jss might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGES.md +185 -1
- data/README.md +3 -1
- data/bin/cgrouper +1 -1
- data/bin/jamfHelperBackgrounder +1 -1
- data/bin/netseg-update +1 -1
- data/data/ruby-jss.conf.example +1 -1
- data/lib/jamf.rb +1 -1
- data/lib/jamf/api/abstract_classes/advanced_search.rb +1 -1
- data/lib/jamf/api/abstract_classes/collection_resource.rb +31 -26
- data/lib/jamf/api/abstract_classes/generic_reference.rb +1 -1
- data/lib/jamf/api/abstract_classes/json_object.rb +15 -5
- data/lib/jamf/api/abstract_classes/prestage.rb +2 -2
- data/lib/jamf/api/abstract_classes/prestage_skip_setup_items.rb +1 -1
- data/lib/jamf/api/abstract_classes/resource.rb +1 -1
- data/lib/jamf/api/abstract_classes/singleton_resource.rb +1 -1
- data/lib/jamf/api/attribute_classes/ip_address.rb +1 -1
- data/lib/jamf/api/attribute_classes/timestamp.rb +1 -1
- data/lib/jamf/api/connection.rb +106 -60
- data/lib/jamf/api/connection/api_error.rb +1 -1
- data/lib/jamf/api/connection/api_error_styleguide.rb +1 -1
- data/lib/jamf/api/connection/token.rb +80 -13
- data/lib/jamf/api/json_objects/account_prefs.rb +1 -1
- data/lib/jamf/api/json_objects/android_details.rb +1 -1
- data/lib/jamf/api/json_objects/appletv_details.rb +1 -1
- data/lib/jamf/api/json_objects/attachment.rb +1 -1
- data/lib/jamf/api/json_objects/cellular_network.rb +1 -1
- data/lib/jamf/api/json_objects/change_log_entry.rb +1 -1
- data/lib/jamf/api/json_objects/computer_prestage_skip_setup_items.rb +1 -1
- data/lib/jamf/api/json_objects/country.rb +1 -1
- data/lib/jamf/api/json_objects/criterion.rb +1 -1
- data/lib/jamf/api/json_objects/device_enrollment_device.rb +1 -1
- data/lib/jamf/api/json_objects/device_enrollment_sync_status.rb +1 -1
- data/lib/jamf/api/json_objects/extension_attribute_value.rb +1 -1
- data/lib/jamf/api/json_objects/installed_application.rb +1 -1
- data/lib/jamf/api/json_objects/installed_certificate.rb +1 -1
- data/lib/jamf/api/json_objects/installed_configuration_profile.rb +1 -1
- data/lib/jamf/api/json_objects/installed_ebook.rb +1 -1
- data/lib/jamf/api/json_objects/installed_provisioning_profile.rb +1 -1
- data/lib/jamf/api/json_objects/inventory_preload_extension_attribute.rb +1 -1
- data/lib/jamf/api/json_objects/ios_details.rb +1 -1
- data/lib/jamf/api/json_objects/location.rb +1 -1
- data/lib/jamf/api/json_objects/md_prestage_name.rb +1 -1
- data/lib/jamf/api/json_objects/md_prestage_names.rb +1 -1
- data/lib/jamf/api/json_objects/md_prestage_skip_setup_items.rb +1 -1
- data/lib/jamf/api/json_objects/mobile_device_details.rb +1 -1
- data/lib/jamf/api/json_objects/mobile_device_security.rb +1 -1
- data/lib/jamf/api/json_objects/prestage_assignment.rb +1 -1
- data/lib/jamf/api/json_objects/prestage_location.rb +1 -1
- data/lib/jamf/api/json_objects/prestage_purchasing_data.rb +1 -1
- data/lib/jamf/api/json_objects/prestage_scope.rb +1 -1
- data/lib/jamf/api/json_objects/prestage_sync_status.rb +1 -1
- data/lib/jamf/api/json_objects/purchasing_data.rb +1 -1
- data/lib/jamf/api/mixins/abstract.rb +1 -1
- data/lib/jamf/api/mixins/bulk_deletable.rb +1 -1
- data/lib/jamf/api/mixins/change_log.rb +1 -1
- data/lib/jamf/api/mixins/extendable.rb +1 -1
- data/lib/jamf/api/mixins/immutable.rb +1 -1
- data/lib/jamf/api/mixins/locatable.rb +1 -1
- data/lib/jamf/api/mixins/lockable.rb +1 -1
- data/lib/jamf/api/mixins/referable.rb +1 -1
- data/lib/jamf/api/mixins/searchable.rb +1 -1
- data/lib/jamf/api/mixins/uncreatable.rb +1 -1
- data/lib/jamf/api/mixins/undeletable.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/account.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/advanced_mobile_device_search.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/advanced_user_search.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/building.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/category.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/computer.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/computer_prestage.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/department.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/device_enrollment.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/extension_attribute.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/inventory_preload_record.rb +9 -2
- data/lib/jamf/api/resources/collection_resources/mobile_device.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/mobile_device_prestage.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/script.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/site.rb +1 -1
- data/lib/jamf/api/resources/collection_resources/time_zone.rb +1 -1
- data/lib/jamf/api/resources/singleton_resources/app_store_country_codes.rb +1 -1
- data/lib/jamf/api/resources/singleton_resources/authorization.rb +1 -1
- data/lib/jamf/api/resources/singleton_resources/client_checkin_settings.rb +1 -1
- data/lib/jamf/api/resources/singleton_resources/reenrollment_settings.rb +1 -1
- data/lib/jamf/client.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/compatibility.rb +1 -1
- data/lib/jamf/composer.rb +1 -1
- data/lib/jamf/configuration.rb +8 -10
- data/lib/jamf/exceptions.rb +6 -1
- data/lib/jamf/ruby_extensions.rb +2 -1
- data/lib/jamf/ruby_extensions/array.rb +2 -2
- data/lib/jamf/ruby_extensions/array/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/array/utils.rb +4 -4
- data/lib/jamf/ruby_extensions/dig.rb +52 -0
- data/lib/jamf/ruby_extensions/filetest.rb +1 -1
- data/lib/jamf/ruby_extensions/filetest/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/hash.rb +1 -1
- data/lib/jamf/ruby_extensions/hash/backports.rb +2 -2
- data/lib/jamf/ruby_extensions/ipaddr.rb +1 -1
- data/lib/jamf/ruby_extensions/ipaddr/utils.rb +1 -1
- data/lib/jamf/ruby_extensions/object.rb +1 -1
- data/lib/jamf/ruby_extensions/object/predicates.rb +1 -1
- data/lib/jamf/ruby_extensions/pathname.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/string.rb +1 -1
- data/lib/jamf/ruby_extensions/string/backports.rb +1 -1
- data/lib/jamf/ruby_extensions/string/conversions.rb +1 -1
- data/lib/jamf/ruby_extensions/string/predicates.rb +14 -4
- data/lib/jamf/utility.rb +1 -1
- data/lib/jamf/validate.rb +1 -1
- data/lib/jamf/version.rb +2 -2
- data/lib/jpapi.rb +1 -1
- data/lib/jss-api.rb +1 -1
- data/lib/jss.rb +5 -2
- data/lib/jss/api_connection.rb +3 -30
- data/lib/jss/api_object.rb +16 -3
- data/lib/jss/api_object/account.rb +1 -1
- data/lib/jss/api_object/advanced_search.rb +1 -1
- data/lib/jss/api_object/advanced_search/advanced_computer_search.rb +1 -1
- data/lib/jss/api_object/advanced_search/advanced_mobile_device_search.rb +1 -1
- data/lib/jss/api_object/advanced_search/advanced_user_search.rb +1 -1
- data/lib/jss/api_object/building.rb +1 -1
- data/lib/jss/api_object/categorizable.rb +1 -1
- data/lib/jss/api_object/category.rb +1 -1
- data/lib/jss/api_object/computer.rb +12 -6
- data/lib/jss/api_object/computer/application_installs.rb +1 -1
- data/lib/jss/api_object/computer_invitation.rb +1 -1
- data/lib/jss/api_object/configuration_profile.rb +4 -2
- data/lib/jss/api_object/configuration_profile/mobile_device_configuration_profile.rb +1 -1
- data/lib/jss/api_object/configuration_profile/osx_configuration_profile.rb +1 -1
- data/lib/jss/api_object/creatable.rb +1 -1
- data/lib/jss/api_object/criteriable.rb +10 -5
- data/lib/jss/api_object/criteriable/criteria.rb +26 -10
- data/lib/jss/api_object/criteriable/criterion.rb +1 -1
- data/lib/jss/api_object/department.rb +1 -1
- data/lib/jss/api_object/directory_binding.rb +273 -0
- data/lib/jss/api_object/directory_binding_type.rb +90 -0
- data/lib/jss/api_object/directory_binding_type/active_directory.rb +502 -0
- data/lib/jss/api_object/directory_binding_type/admitmac.rb +525 -0
- data/lib/jss/api_object/directory_binding_type/centrify.rb +212 -0
- data/lib/jss/api_object/directory_binding_type/open_directory.rb +178 -0
- data/lib/jss/api_object/directory_binding_type/powerbroker_identity_services.rb +73 -0
- data/lib/jss/api_object/disk_encryption_configurations.rb +114 -0
- data/lib/jss/api_object/distribution_point.rb +96 -36
- data/lib/jss/api_object/dock_item.rb +137 -0
- data/lib/jss/api_object/ebook.rb +1 -1
- data/lib/jss/api_object/extendable.rb +67 -28
- data/lib/jss/api_object/extension_attribute.rb +1 -1
- data/lib/jss/api_object/extension_attribute/computer_extension_attribute.rb +1 -1
- data/lib/jss/api_object/extension_attribute/mobile_device_extension_attribute.rb +1 -1
- data/lib/jss/api_object/extension_attribute/user_extension_attribute.rb +1 -1
- data/lib/jss/api_object/group.rb +1 -1
- data/lib/jss/api_object/group/computer_group.rb +1 -1
- data/lib/jss/api_object/group/mobile_device_group.rb +1 -1
- data/lib/jss/api_object/group/user_group.rb +1 -1
- data/lib/jss/api_object/ibeacon.rb +1 -1
- data/lib/jss/api_object/ldap_server.rb +1 -1
- data/lib/jss/api_object/locatable.rb +1 -1
- data/lib/jss/api_object/mac_application.rb +1 -1
- data/lib/jss/api_object/management_history.rb +23 -22
- data/lib/jss/api_object/management_history/audit_event.rb +1 -1
- data/lib/jss/api_object/management_history/casper_imaging_log.rb +1 -1
- data/lib/jss/api_object/management_history/casper_remote_log.rb +1 -1
- data/lib/jss/api_object/management_history/computer_usage_log.rb +1 -1
- data/lib/jss/api_object/management_history/ebook.rb +1 -1
- data/lib/jss/api_object/management_history/hashlike.rb +1 -1
- data/lib/jss/api_object/management_history/mac_app_store_app.rb +1 -1
- data/lib/jss/api_object/management_history/mdm_command.rb +1 -1
- data/lib/jss/api_object/management_history/mobile_device_app.rb +1 -1
- data/lib/jss/api_object/management_history/policy_log.rb +1 -1
- data/lib/jss/api_object/management_history/screen_sharing_log.rb +1 -1
- data/lib/jss/api_object/management_history/user_location_change.rb +1 -1
- data/lib/jss/api_object/matchable.rb +1 -1
- data/lib/jss/api_object/mdm.rb +1 -1
- data/lib/jss/api_object/mobile_device.rb +29 -6
- data/lib/jss/api_object/mobile_device_application.rb +13 -1
- data/lib/jss/api_object/netboot_server.rb +1 -1
- data/lib/jss/api_object/network_segment.rb +153 -59
- data/lib/jss/api_object/package.rb +106 -41
- data/lib/jss/api_object/patch_policy.rb +1 -1
- data/lib/jss/api_object/patch_source.rb +1 -1
- data/lib/jss/api_object/patch_source/patch_external_source.rb +1 -1
- data/lib/jss/api_object/patch_source/patch_internal_source.rb +1 -1
- data/lib/jss/api_object/patch_title.rb +1 -1
- data/lib/jss/api_object/patch_title/version.rb +1 -1
- data/lib/jss/api_object/peripheral.rb +1 -1
- data/lib/jss/api_object/peripheral_type.rb +1 -1
- data/lib/jss/api_object/policy.rb +380 -5
- data/lib/jss/api_object/printer.rb +440 -0
- data/lib/jss/api_object/purchasable.rb +1 -1
- data/lib/jss/api_object/removable_macaddr.rb +1 -1
- data/lib/jss/api_object/restricted_software.rb +1 -1
- data/lib/jss/api_object/scopable.rb +1 -1
- data/lib/jss/api_object/scopable/scope.rb +257 -37
- data/lib/jss/api_object/script.rb +1 -1
- data/lib/jss/api_object/self_servable.rb +7 -7
- data/lib/jss/api_object/self_servable/icon.rb +1 -1
- data/lib/jss/api_object/sitable.rb +6 -2
- data/lib/jss/api_object/site.rb +1 -1
- data/lib/jss/api_object/software_update_server.rb +1 -1
- data/lib/jss/api_object/updatable.rb +1 -1
- data/lib/jss/api_object/uploadable.rb +1 -1
- data/lib/jss/api_object/user.rb +5 -3
- data/lib/jss/api_object/vppable.rb +1 -1
- data/lib/jss/api_object/webhook.rb +1 -1
- data/lib/jss/client.rb +1 -1
- data/lib/jss/client/jamf_binary.rb +1 -1
- data/lib/jss/client/jamf_helper.rb +1 -1
- data/lib/jss/client/management_action.rb +1 -1
- data/lib/jss/compatibility.rb +1 -1
- data/lib/jss/composer.rb +2 -2
- data/lib/jss/configuration.rb +1 -1
- data/lib/jss/db_connection.rb +1 -1
- data/lib/jss/exceptions.rb +1 -1
- data/lib/jss/ruby_extensions.rb +1 -1
- data/lib/jss/ruby_extensions/array.rb +1 -1
- data/lib/jss/ruby_extensions/filetest.rb +1 -1
- data/lib/jss/ruby_extensions/hash.rb +1 -1
- data/lib/jss/ruby_extensions/ipaddr.rb +1 -1
- data/lib/jss/ruby_extensions/pathname.rb +1 -1
- data/lib/jss/ruby_extensions/string.rb +1 -1
- data/lib/jss/ruby_extensions/string/backports.rb +1 -1
- data/lib/jss/ruby_extensions/string/conversions.rb +1 -1
- data/lib/jss/ruby_extensions/string/predicates.rb +14 -4
- data/lib/jss/ruby_extensions/time.rb +1 -1
- data/lib/jss/server.rb +1 -1
- data/lib/jss/utility.rb +9 -23
- data/lib/jss/validate.rb +1 -1
- data/lib/jss/version.rb +2 -2
- data/lib/jss/xml_workaround.rb +1 -1
- data/lib/ruby-jss.rb +1 -1
- data/test/bin/runtests +1 -1
- data/test/lib/testhelper.rb +1 -1
- data/test/lib/testhelper/auth.rb +1 -1
- data/test/lib/testhelper/patch_mgmt.rb +1 -1
- data/test/specs/api_connection_spec.rb +1 -1
- data/test/specs/patch01_source_spec.rb +1 -1
- data/test/specs/patch02_internal_source_spec.rb +1 -1
- data/test/specs/patch03_external_source_spec.rb +1 -1
- data/test/specs/patch04_titles_spec.rb +1 -1
- data/test/specs/patch05_policies_spec.rb +1 -1
- data/test/specs/patch06_cleanup_spec.rb +1 -1
- data/test/specs/policy_spec.rb +1 -1
- metadata +15 -4
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
### Copyright
|
2
|
+
### Copyright 2020 Pixar
|
3
3
|
|
4
4
|
###
|
5
5
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -347,7 +347,7 @@ module JSS
|
|
347
347
|
# @return [void]
|
348
348
|
#
|
349
349
|
def self_service_description=(new_val)
|
350
|
-
new_val.strip
|
350
|
+
new_val = new_val.strip
|
351
351
|
return if @self_service_description == new_val
|
352
352
|
@self_service_description = new_val
|
353
353
|
@need_to_update = true
|
@@ -358,7 +358,7 @@ module JSS
|
|
358
358
|
# @return [void]
|
359
359
|
#
|
360
360
|
def self_service_display_name=(new_val)
|
361
|
-
new_val.strip
|
361
|
+
new_val = new_val.strip
|
362
362
|
return nil if @self_service_dislay_name == new_val
|
363
363
|
raise JSS::InvalidDataError, 'Only macOS Self Service items have display names' unless self_service_targets.include? :macos
|
364
364
|
@self_service_dislay_name = new_val
|
@@ -372,7 +372,7 @@ module JSS
|
|
372
372
|
# @return [void]
|
373
373
|
#
|
374
374
|
def self_service_install_button_text=(new_val)
|
375
|
-
new_val.strip
|
375
|
+
new_val = new_val.strip
|
376
376
|
return nil if @self_service_install_button_text == new_val
|
377
377
|
raise JSS::InvalidDataError, 'Only macOS Self Service Items can have custom button text' unless self_service_targets.include? :macos
|
378
378
|
@self_service_install_button_text = new_val
|
@@ -384,7 +384,7 @@ module JSS
|
|
384
384
|
# @return [void]
|
385
385
|
#
|
386
386
|
def self_service_reinstall_button_text=(new_val)
|
387
|
-
new_val.strip
|
387
|
+
new_val = new_val.strip
|
388
388
|
return nil if @self_service_reinstall_button_text == new_val
|
389
389
|
raise JSS::InvalidDataError, 'Only macOS Self Service Items can have custom button text' unless self_service_targets.include? :macos
|
390
390
|
@self_service_reinstall_button_text = new_val
|
@@ -532,7 +532,7 @@ module JSS
|
|
532
532
|
# @return [void]
|
533
533
|
#
|
534
534
|
def self_service_notification_subject=(subj)
|
535
|
-
subj.strip
|
535
|
+
subj = subj.strip
|
536
536
|
return if subj == @self_service_notification_subject
|
537
537
|
validate_notifications_supported
|
538
538
|
@self_service_notification_subject = subj
|
@@ -544,7 +544,7 @@ module JSS
|
|
544
544
|
# @return [void]
|
545
545
|
#
|
546
546
|
def self_service_notification_message=(msg)
|
547
|
-
msg.strip
|
547
|
+
msg = msg.strip
|
548
548
|
return if msg == @self_service_notification_message
|
549
549
|
validate_notifications_supported
|
550
550
|
@self_service_notification_message = msg
|
@@ -1,4 +1,4 @@
|
|
1
|
-
### Copyright
|
1
|
+
### Copyright 2020 Pixar
|
2
2
|
|
3
3
|
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -106,7 +106,11 @@ module JSS
|
|
106
106
|
# @return [Boolean] Does this object have a site assigned?
|
107
107
|
#
|
108
108
|
def site_assigned?
|
109
|
-
|
109
|
+
if @site_name == NO_SITE_NAME
|
110
|
+
false
|
111
|
+
else
|
112
|
+
!@site_name.nil?
|
113
|
+
end
|
110
114
|
end # cat assigned?
|
111
115
|
|
112
116
|
# Change the site of this object.
|
data/lib/jss/api_object/site.rb
CHANGED
data/lib/jss/api_object/user.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
### Copyright
|
1
|
+
### Copyright 2020 Pixar
|
2
2
|
|
3
3
|
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -99,7 +99,7 @@ module JSS
|
|
99
99
|
|
100
100
|
### @return [String] The name of the user's LDAP server
|
101
101
|
attr_reader :ldap_server
|
102
|
-
|
102
|
+
attr_reader :ldap_sever_id
|
103
103
|
|
104
104
|
### @return [Array<Hash>]
|
105
105
|
###
|
@@ -168,6 +168,7 @@ module JSS
|
|
168
168
|
@phone_number = @init_data[:phone_number]
|
169
169
|
@position = @init_data[:position]
|
170
170
|
@ldap_server = JSS::APIObject.get_name @init_data[:ldap_server]
|
171
|
+
@ldap_server_id = @init_data[:ldap_server][:id]
|
171
172
|
@sites = @init_data[:sites] ? @init_data[:sites] : []
|
172
173
|
|
173
174
|
if @init_data[:links]
|
@@ -217,6 +218,7 @@ module JSS
|
|
217
218
|
def ldap_server= (new_val)
|
218
219
|
raise JSS::InvalidDataError, "No LDAP server in the JSS named #{new_val}" unless JSS::LDAPServer.all_names(api: @api).include? new_val
|
219
220
|
@ldap_server = new_val
|
221
|
+
@ldap_server_id = JSS::LDAPServer.valid_id @ldap_server
|
220
222
|
@need_to_update = true
|
221
223
|
end
|
222
224
|
|
@@ -264,7 +266,7 @@ module JSS
|
|
264
266
|
user.add_element('position').text = @position
|
265
267
|
|
266
268
|
ldap = user.add_element('ldap_server')
|
267
|
-
ldap.add_element('
|
269
|
+
ldap.add_element('id').text = @ldap_server_id
|
268
270
|
|
269
271
|
user << JSS::Site.xml_list(@sites)
|
270
272
|
|
data/lib/jss/client.rb
CHANGED
data/lib/jss/compatibility.rb
CHANGED
data/lib/jss/composer.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
### Copyright
|
1
|
+
### Copyright 2020 Pixar
|
2
2
|
|
3
3
|
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -147,7 +147,7 @@ module JSS
|
|
147
147
|
|
148
148
|
### now build the pkg
|
149
149
|
begin
|
150
|
-
it_built = system "#{PKGBUILD} --identifier '#{pkg_id}' --version '#{version}' --ownership #{pkg_ownership} --install-location / --root '#{root}' #{signing} #{comp_plist_arg} '#{pkg_out}'
|
150
|
+
it_built = system "#{PKGBUILD} --identifier '#{pkg_id}' --version '#{version}' --ownership #{pkg_ownership} --install-location / --root '#{root}' #{signing} #{comp_plist_arg} '#{pkg_out}'"
|
151
151
|
|
152
152
|
raise 'There was an error building the .pkg' unless it_built
|
153
153
|
ensure
|
data/lib/jss/configuration.rb
CHANGED
data/lib/jss/db_connection.rb
CHANGED
data/lib/jss/exceptions.rb
CHANGED
data/lib/jss/ruby_extensions.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2020 Pixar
|
2
2
|
|
3
3
|
#
|
4
4
|
# Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -29,10 +29,11 @@ module JSSRubyExtensions
|
|
29
29
|
|
30
30
|
module Predicates
|
31
31
|
|
32
|
-
INTEGER_RE = /\A[0-9]+\Z/.freeze
|
32
|
+
INTEGER_RE = /\A-?[0-9]+\Z/.freeze
|
33
|
+
FLOAT_RE = /\A-?[0-9]+\.[0-9]+\Z/.freeze
|
33
34
|
|
34
|
-
# Is this string also
|
35
|
-
# (i.e. it consists only of numberic digits)
|
35
|
+
# Is this string also an integer?
|
36
|
+
# (i.e. it consists only of numberic digits, maybe with a dash in front)
|
36
37
|
#
|
37
38
|
# @return [Boolean]
|
38
39
|
#
|
@@ -40,6 +41,15 @@ module JSSRubyExtensions
|
|
40
41
|
self =~ INTEGER_RE ? true : false
|
41
42
|
end
|
42
43
|
|
44
|
+
# Is this string also a floar?
|
45
|
+
# (i.e. it consists only of numberic digits)
|
46
|
+
#
|
47
|
+
# @return [Boolean]
|
48
|
+
#
|
49
|
+
def jss_float?
|
50
|
+
self =~ FLOAT_RE ? true : false
|
51
|
+
end
|
52
|
+
|
43
53
|
end # module
|
44
54
|
|
45
55
|
end # module
|
data/lib/jss/server.rb
CHANGED
data/lib/jss/utility.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright
|
1
|
+
# Copyright 2020 Pixar
|
2
2
|
|
3
3
|
#
|
4
4
|
# Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -32,7 +32,7 @@ module JSS
|
|
32
32
|
|
33
33
|
# Converts an OS Version into an Array of higher OS versions.
|
34
34
|
#
|
35
|
-
# It's unlikely that this library will still be in use as-is by the release of OS X 10.
|
35
|
+
# It's unlikely that this library will still be in use as-is by the release of OS X 10.30.
|
36
36
|
# Hopefully well before then JAMF will implement a "minimum OS" in the JSS itself.
|
37
37
|
#
|
38
38
|
# @param min_os [String] the mimimum OS version to expand, e.g. ">=10.6.7" or "10.6.7"
|
@@ -43,26 +43,12 @@ module JSS
|
|
43
43
|
# JSS.expand_min_os ">=10.6.7" # => returns this array
|
44
44
|
# # ["10.6.7",
|
45
45
|
# # "10.6.8",
|
46
|
-
# #
|
47
|
-
# # "10.6.
|
48
|
-
# # "10.6.11",
|
49
|
-
# # "10.6.12",
|
50
|
-
# # "10.6.13",
|
51
|
-
# # "10.6.14",
|
52
|
-
# # "10.6.15",
|
46
|
+
# # ...
|
47
|
+
# # "10.6.25",
|
53
48
|
# # "10.7.x",
|
54
49
|
# # "10.8.x",
|
55
|
-
# #
|
56
|
-
# # "10.
|
57
|
-
# # "10.11.x",
|
58
|
-
# # "10.12.x",
|
59
|
-
# # "10.13.x",
|
60
|
-
# # "10.14.x",
|
61
|
-
# # "10.15.x",
|
62
|
-
# # "10.16.x",
|
63
|
-
# # "10.17.x",
|
64
|
-
# # "10.18.x",
|
65
|
-
# # "10.19.x"]
|
50
|
+
# # ...
|
51
|
+
# # "10.30.x"]
|
66
52
|
#
|
67
53
|
#
|
68
54
|
def self.expand_min_os(min_os)
|
@@ -80,14 +66,14 @@ module JSS
|
|
80
66
|
# (and hope apple doesn't do more than 15 maint releases for an OS)
|
81
67
|
else
|
82
68
|
ok_oses = []
|
83
|
-
(maint.to_i..
|
69
|
+
(maint.to_i..25).each do |m|
|
84
70
|
ok_oses << maj + '.' + min + '.' + m.to_s
|
85
71
|
end # each m
|
86
72
|
end
|
87
73
|
|
88
74
|
# now account for all OS X versions starting with 10.
|
89
|
-
# up to
|
90
|
-
((min.to_i + 1)..
|
75
|
+
# up to 10.30.x
|
76
|
+
((min.to_i + 1)..30).each do |v|
|
91
77
|
ok_oses << maj + '.' + v.to_s + '.x'
|
92
78
|
end # each v
|
93
79
|
ok_oses
|
data/lib/jss/validate.rb
CHANGED
data/lib/jss/version.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
### Copyright
|
1
|
+
### Copyright 2020 Pixar
|
2
2
|
|
3
3
|
###
|
4
4
|
### Licensed under the Apache License, Version 2.0 (the "Apache License")
|
@@ -27,6 +27,6 @@
|
|
27
27
|
module JSS
|
28
28
|
|
29
29
|
### The version of ruby-jss
|
30
|
-
VERSION = '1.
|
30
|
+
VERSION = '1.3.3'.freeze
|
31
31
|
|
32
32
|
end # module
|
data/lib/jss/xml_workaround.rb
CHANGED