ruby-jss 2.0.0b1 → 2.0.0b3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/jamf/api/classic/api_objects/mobile_device_application.rb +35 -6
- data/lib/jamf/api/classic/base_classes/api_object.rb +1 -1
- data/lib/jamf/api/connection/token.rb +1 -0
- data/lib/jamf/api/connection.rb +0 -4
- data/lib/jamf/api/jamf_pro/api_objects/inventory_preload_record.rb +0 -1
- data/lib/jamf/api/jamf_pro/mixins/macos_managed_updates.rb +17 -7
- data/lib/jamf/deprecations/deprecated_api_connection_class.rb +29 -0
- data/lib/jamf/version.rb +1 -1
- data/lib/zeitwerk_config.rb +15 -10
- data/test/tests/policy.rb +1 -0
- metadata +18 -29
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e4da473b27e4faa5f1a6e9249b5fd8ac6347161bd6db568335b47d57ee0c6600
|
4
|
+
data.tar.gz: b4864c373f399e8a2b73d7191d9c8407b3df0a7e134f35593a13acde67548652
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f85ca5790b4c365a9c85c58a803d54e79b4916d2b4d4e4afb32d98b4131bc0137df647f65c4144d5d711890c6453532ff30b24565db443ab6fa9d698a28e2b1
|
7
|
+
data.tar.gz: 76434531dba3201bcc711d19154798bd5ac2a4deb998aea3b82dd07aaebc4a69df41909848fe2cffb466b5752f04735b2f09a54dc2f127ddcdd3ead3e31efb51
|
@@ -50,7 +50,6 @@ module Jamf
|
|
50
50
|
include Jamf::VPPable
|
51
51
|
include Jamf::Sitable
|
52
52
|
|
53
|
-
|
54
53
|
# Class Methods
|
55
54
|
#####################################
|
56
55
|
|
@@ -162,6 +161,10 @@ module Jamf
|
|
162
161
|
# does its backups (to icloud or itunes)?
|
163
162
|
attr_reader :prevent_backup_of_app_data
|
164
163
|
|
164
|
+
# @return [Boolean] Should this app auto-update on devices?
|
165
|
+
attr_reader :keep_app_updated_on_devices
|
166
|
+
alias auto_update? keep_app_updated_on_devices
|
167
|
+
|
165
168
|
# @return [Boolean] should the JSS update the icon and description from the app
|
166
169
|
# source?
|
167
170
|
attr_reader :keep_description_and_icon_up_to_date
|
@@ -185,7 +188,6 @@ module Jamf
|
|
185
188
|
# which contains a plist <dict> element with config data.
|
186
189
|
attr_reader :configuration_prefs
|
187
190
|
|
188
|
-
|
189
191
|
# Constructor
|
190
192
|
#####################################
|
191
193
|
|
@@ -208,6 +210,7 @@ module Jamf
|
|
208
210
|
@itunes_country_region = general[:itunes_country_region]
|
209
211
|
@itunes_sync_time = general[:itunes_sync_time]
|
210
212
|
@deploy_as_managed_app = general[:deploy_as_managed_app]
|
213
|
+
@keep_app_updated_on_devices = general[:keep_app_updated_on_devices]
|
211
214
|
@remove_app_when_mdm_profile_is_removed = general[:remove_app_when_mdm_profile_is_removed]
|
212
215
|
@prevent_backup_of_app_data = general[:prevent_backup_of_app_data]
|
213
216
|
@keep_description_and_icon_up_to_date = general[:keep_description_and_icon_up_to_date]
|
@@ -232,6 +235,7 @@ module Jamf
|
|
232
235
|
#
|
233
236
|
def display_name=(new_val)
|
234
237
|
return nil if new_val.to_s == @display_name
|
238
|
+
|
235
239
|
@display_name = new_val.to_s
|
236
240
|
@need_to_update = true
|
237
241
|
end
|
@@ -274,6 +278,7 @@ module Jamf
|
|
274
278
|
#
|
275
279
|
def url=(new_val)
|
276
280
|
return nil if new_val == @url
|
281
|
+
|
277
282
|
@url = new_val
|
278
283
|
@need_to_update = true
|
279
284
|
end
|
@@ -288,6 +293,7 @@ module Jamf
|
|
288
293
|
def make_available_after_install=(new_val)
|
289
294
|
return nil if new_val == @make_available_after_install
|
290
295
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
296
|
+
|
291
297
|
@make_available_after_install = new_val
|
292
298
|
@need_to_update = true
|
293
299
|
end
|
@@ -302,10 +308,25 @@ module Jamf
|
|
302
308
|
def deploy_as_managed_app=(new_val)
|
303
309
|
return nil if new_val == @deploy_as_managed_app
|
304
310
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
311
|
+
|
305
312
|
@deploy_as_managed_app = new_val
|
306
313
|
@need_to_update = true
|
307
314
|
end
|
308
315
|
|
316
|
+
# Set whether or not this app should be auto-updated on devices
|
317
|
+
#
|
318
|
+
# @param new_val[Boolean] The new value
|
319
|
+
#
|
320
|
+
# @return [void]
|
321
|
+
#
|
322
|
+
def keep_app_updated_on_devices=(new_val)
|
323
|
+
return nil if new_val == @keep_app_updated_on_devices
|
324
|
+
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
325
|
+
|
326
|
+
@keep_app_updated_on_devices = new_val
|
327
|
+
@need_to_update = true
|
328
|
+
end
|
329
|
+
alias auto_update= keep_app_updated_on_devices=
|
309
330
|
|
310
331
|
# Set whether or not this app should be removed when
|
311
332
|
# the device is unmanaged
|
@@ -317,6 +338,7 @@ module Jamf
|
|
317
338
|
def remove_app_when_mdm_profile_is_removed=(new_val)
|
318
339
|
return nil if new_val == @remove_app_when_mdm_profile_is_removed
|
319
340
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
341
|
+
|
320
342
|
@remove_app_when_mdm_profile_is_removed = new_val
|
321
343
|
@need_to_update = true
|
322
344
|
end
|
@@ -330,11 +352,11 @@ module Jamf
|
|
330
352
|
def prevent_backup_of_app_data=(new_val)
|
331
353
|
return nil if new_val == @prevent_backup_of_app_data
|
332
354
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
355
|
+
|
333
356
|
@prevent_backup_of_app_data = new_val
|
334
357
|
@need_to_update = true
|
335
358
|
end
|
336
359
|
|
337
|
-
|
338
360
|
# Set whether or not the jss should update info about this app from the app store
|
339
361
|
#
|
340
362
|
# @param new_val[Boolean] The new value
|
@@ -344,6 +366,7 @@ module Jamf
|
|
344
366
|
def keep_description_and_icon_up_to_date=(new_val)
|
345
367
|
return nil if new_val == @keep_description_and_icon_up_to_date
|
346
368
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
369
|
+
|
347
370
|
@keep_description_and_icon_up_to_date = new_val
|
348
371
|
@need_to_update = true
|
349
372
|
end
|
@@ -357,6 +380,7 @@ module Jamf
|
|
357
380
|
def free=(new_val)
|
358
381
|
return nil if new_val == @free
|
359
382
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
383
|
+
|
360
384
|
@free = new_val
|
361
385
|
@need_to_update = true
|
362
386
|
end
|
@@ -371,6 +395,7 @@ module Jamf
|
|
371
395
|
def take_over_management=(new_val)
|
372
396
|
return nil if new_val == @take_over_management
|
373
397
|
raise Jamf::InvalidDataError, 'New value must be true or false' unless new_val.jss_boolean?
|
398
|
+
|
374
399
|
@take_over_management = new_val
|
375
400
|
@need_to_update = true
|
376
401
|
end
|
@@ -432,6 +457,7 @@ module Jamf
|
|
432
457
|
#
|
433
458
|
def external_url=(new_val)
|
434
459
|
return nil if new_val == @external_url
|
460
|
+
|
435
461
|
@external_url = new_val
|
436
462
|
@need_to_update = true
|
437
463
|
end
|
@@ -445,11 +471,11 @@ module Jamf
|
|
445
471
|
#
|
446
472
|
def configuration_prefs=(new_val)
|
447
473
|
return nil if new_val == @configuration_prefs
|
474
|
+
|
448
475
|
@configuration_prefs = new_val
|
449
476
|
@need_to_update = true
|
450
477
|
end
|
451
478
|
|
452
|
-
|
453
479
|
# Save the application to a file.
|
454
480
|
#
|
455
481
|
# @param path[Pathname, String] The path to which the file should be saved.
|
@@ -462,10 +488,12 @@ module Jamf
|
|
462
488
|
#
|
463
489
|
def save_ipa(path, overwrite = false)
|
464
490
|
return nil unless @ipa[:data]
|
491
|
+
|
465
492
|
path = Pathname.new path
|
466
|
-
path
|
493
|
+
path += @ipa[:name] if path.directory? && @ipa[:name]
|
467
494
|
|
468
495
|
raise Jamf::AlreadyExistsError, "The file #{path} already exists" if path.exist? && !overwrite
|
496
|
+
|
469
497
|
path.delete if path.exist?
|
470
498
|
path.jss_save Base64.decode64(@ipa[:data])
|
471
499
|
end
|
@@ -507,6 +535,7 @@ module Jamf
|
|
507
535
|
#
|
508
536
|
def refresh_ipa
|
509
537
|
return nil unless @in_jss
|
538
|
+
|
510
539
|
fresh_data = @cnx.c_get(@rest_rsrc)[self.class::RSRC_OBJECT_KEY]
|
511
540
|
@ipa = fresh_data[:general][:ipa]
|
512
541
|
end
|
@@ -523,6 +552,7 @@ module Jamf
|
|
523
552
|
gen.add_element('deploy_as_managed_app').text = @deploy_as_managed_app
|
524
553
|
gen.add_element('remove_app_when_mdm_profile_is_removed').text = @remove_app_when_mdm_profile_is_removed
|
525
554
|
gen.add_element('prevent_backup_of_app_data').text = @prevent_backup_of_app_data
|
555
|
+
gen.add_element('keep_app_updated_on_devices').text = @keep_app_updated_on_devices
|
526
556
|
gen.add_element('keep_description_and_icon_up_to_date').text = @keep_description_and_icon_up_to_date
|
527
557
|
gen.add_element('free').text = @free
|
528
558
|
gen.add_element('take_over_management').text = @take_over_management
|
@@ -540,7 +570,6 @@ module Jamf
|
|
540
570
|
doc.to_s
|
541
571
|
end
|
542
572
|
|
543
|
-
|
544
573
|
end # class removable_macaddr
|
545
574
|
|
546
575
|
end # module
|
@@ -295,7 +295,7 @@ module Jamf
|
|
295
295
|
# This is called automatically when subclasses are loaded by zeitwerk
|
296
296
|
#
|
297
297
|
def self.define_identifier_list_methods
|
298
|
-
Jamf.load_msg "
|
298
|
+
Jamf.load_msg "Defining list-methods for APIObject subclass #{self}"
|
299
299
|
|
300
300
|
lookup_keys.each do |als, key|
|
301
301
|
meth_name = key.to_s.end_with?('s') ? "all_#{key}es" : "all_#{key}s"
|
data/lib/jamf/api/connection.rb
CHANGED
@@ -49,6 +49,10 @@ module Jamf
|
|
49
49
|
# https://developer.jamf.com/jamf-pro/reference/post_v1-macos-managed-software-updates-send-updates
|
50
50
|
MANAGED_SW_UPDATES_SEND_UPDATES_RSRC = "#{MANAGED_SW_UPDATES_RSRC}/send-updates"
|
51
51
|
|
52
|
+
# These are the options available in Jamf::OAPISchemas::MacOsManagedSoftwareUpdate::UPDATE_ACTION_OPTIONS
|
53
|
+
DOWNLOAD_AND_INSTALL = 'DOWNLOAD_AND_INSTALL'
|
54
|
+
DOWNLOAD_ONLY = 'DOWNLOAD_ONLY'
|
55
|
+
|
52
56
|
# Class Methods
|
53
57
|
#####################################
|
54
58
|
module ClassMethods
|
@@ -67,11 +71,11 @@ module Jamf
|
|
67
71
|
Jamf::OAPISchemas::AvailableUpdates.new(data).availableUpdates
|
68
72
|
end
|
69
73
|
|
70
|
-
# Send the os update command to target
|
74
|
+
# Send the os update command to target Computers or a ComputerGroup
|
71
75
|
#
|
72
76
|
# @param updateAction [String] Required. 'DOWNLOAD_AND_INSTALL' or 'DOWNLOAD_ONLY'
|
73
77
|
#
|
74
|
-
# @param deviceIds [String, Integer, Array<String, Integer>]
|
78
|
+
# @param deviceIds [String, Integer, Array<String, Integer>] Identifiers for the
|
75
79
|
# computer targets. Required if no groupId is given.
|
76
80
|
#
|
77
81
|
# @param groupId [String, Integer] Identifier for the computer group target.
|
@@ -82,19 +86,20 @@ module Jamf
|
|
82
86
|
# Update will use the InstallLater install action. MaxDeferral is ignored if using the
|
83
87
|
# DOWNLOAD_ONLY updateAction.
|
84
88
|
#
|
85
|
-
# @param version [String] If no value is provided, the
|
86
|
-
# version based on device eligibility.
|
89
|
+
# @param version [String] The OS version to install. If no value is provided, the
|
90
|
+
# version will default to latest version based on device eligibility.
|
87
91
|
#
|
88
|
-
# @param skipVersionVerification [Boolean]
|
92
|
+
# @param skipVersionVerification [Boolean] Should the specified version be installed
|
93
|
+
# even it it isn't applicable to this machine? If no value is provided, will default to false.
|
89
94
|
# If true, the specified version will be forced to complete DownloadAndInstall
|
90
95
|
# install action.
|
91
96
|
#
|
92
|
-
# @param applyMajorUpdate [Boolean]
|
97
|
+
# @param applyMajorUpdate [Boolean] Available only when updating to the latest version
|
93
98
|
# based on device eligibility. Defaults to false. If false the calculated latest version
|
94
99
|
# will only include minor version updates. If a value is provided, the calculated latest
|
95
100
|
# version will include minor and major version updates.
|
96
101
|
#
|
97
|
-
# @param forceRestart [Boolean]
|
102
|
+
# @param forceRestart [Boolean] Will default to false. Can only be true if updateAction
|
98
103
|
# is DOWNLOAD_AND_INSTALLn and the devices the command is sent to are on macOs 11 or higher.
|
99
104
|
# If true, the DownloadAndInstall action is performed, a restart will be forced.
|
100
105
|
# MaxDeferral will be ignored if true.
|
@@ -146,6 +151,11 @@ module Jamf
|
|
146
151
|
# Instance Methods
|
147
152
|
######################################
|
148
153
|
|
154
|
+
# Send a managed update command to an instance of Computer or ComputerGroup.
|
155
|
+
# This just calls the class method of the same name.
|
156
|
+
#
|
157
|
+
# @see MacOSManagedUpdates.send_managed_os_update
|
158
|
+
#
|
149
159
|
def send_managed_os_update(updateAction:, maxDeferrals: nil, version: nil, skipVersionVerification: false, applyMajorUpdate: false, forceRestart: false, cnx: Jamf.cnx)
|
150
160
|
deviceIds = is_a?(Jamf::Computer) ? @id : nil
|
151
161
|
groupId = is_a?(Jamf::Computer) ? nil : @id
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# Copyright 2022 Pixar
|
2
|
+
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "Apache License")
|
5
|
+
# with the following modification; you may not use this file except in
|
6
|
+
# compliance with the Apache License and the following modification to it:
|
7
|
+
# Section 6. Trademarks. is deleted and replaced with:
|
8
|
+
#
|
9
|
+
# 6. Trademarks. This License does not grant permission to use the trade
|
10
|
+
# names, trademarks, service marks, or product names of the Licensor
|
11
|
+
# and its affiliates, except as required to comply with Section 4(c) of
|
12
|
+
# the License and to reproduce the content of the NOTICE file.
|
13
|
+
#
|
14
|
+
# You may obtain a copy of the Apache License at
|
15
|
+
#
|
16
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
17
|
+
#
|
18
|
+
# Unless required by applicable law or agreed to in writing, software
|
19
|
+
# distributed under the Apache License with the above modification is
|
20
|
+
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
21
|
+
# KIND, either express or implied. See the Apache License for the specific
|
22
|
+
# language governing permissions and limitations under the Apache License.
|
23
|
+
|
24
|
+
# @deprecated Use class Jamf::Connection
|
25
|
+
module Jamf
|
26
|
+
|
27
|
+
APIConnection = Connection
|
28
|
+
|
29
|
+
end
|
data/lib/jamf/version.rb
CHANGED
data/lib/zeitwerk_config.rb
CHANGED
@@ -29,7 +29,7 @@ def setup_zeitwerk_loader(loader)
|
|
29
29
|
loader.ignore __FILE__
|
30
30
|
|
31
31
|
# these paths all define classes & modules directly below 'Jamf'
|
32
|
-
# If we didn't
|
32
|
+
# If we didn't collapse them, then e.g.
|
33
33
|
# /jamf/api/base_classes/classic/group.rb
|
34
34
|
# would be expected to define
|
35
35
|
# Jamf::Api::BaseClasses::Classic::Group
|
@@ -51,7 +51,8 @@ def setup_zeitwerk_loader(loader)
|
|
51
51
|
|
52
52
|
loader.collapse("#{__dir__}/jamf/deprecations")
|
53
53
|
|
54
|
-
# filenames => Constants, which don't adhere to zeitwerk's parsing standards
|
54
|
+
# filenames => Constants, which don't adhere to zeitwerk's parsing standards.
|
55
|
+
#
|
55
56
|
# Mostly because the a filename like 'oapi_object' would be
|
56
57
|
# loaded by zeitwerk expecting it to define 'OapiObject', but it really
|
57
58
|
# defines 'OAPIObject'
|
@@ -88,15 +89,16 @@ def setup_zeitwerk_loader(loader)
|
|
88
89
|
loader.inflector.inflect 'md_prestage_skip_setup_items' => 'MobileDevicePrestageSkipSetupItems'
|
89
90
|
loader.inflector.inflect 'macos_managed_updates' => 'MacOSManagedUpdates'
|
90
91
|
|
91
|
-
# deprecations, separated so they load only when used
|
92
|
+
# deprecations, separated so they load only when used.
|
93
|
+
# When its time to get rid of them, delete the files from the
|
94
|
+
# 'deprecations' directory, and the matching line here.
|
92
95
|
loader.inflector.inflect('deprecated_api_constant' => 'API')
|
93
96
|
loader.inflector.inflect('deprecated_config_constant' => 'CONFIG')
|
97
|
+
loader.inflector.inflect('deprecated_api_connection_class' => 'APIConnection')
|
94
98
|
|
95
99
|
# These should be ignored, some will be required directly
|
96
100
|
#####################################
|
97
101
|
|
98
|
-
loader.ignore "#{__dir__}/jamf/api/jamf_pro/pre_oapi"
|
99
|
-
|
100
102
|
loader.ignore "#{__dir__}/jamf/db_connection.rb"
|
101
103
|
loader.ignore "#{__dir__}/jamf/ruby_extensions.rb"
|
102
104
|
loader.ignore "#{__dir__}/jamf/ruby_extensions"
|
@@ -106,16 +108,18 @@ def setup_zeitwerk_loader(loader)
|
|
106
108
|
loader.ignore "#{__dir__}/ruby-jss.rb"
|
107
109
|
|
108
110
|
# callback for when a specific file/constant loads
|
111
|
+
# duplicate and uncomment this if desired to react to
|
112
|
+
# specific things loading
|
109
113
|
#####################################
|
110
|
-
loader.on_load('Jamf::SomeClass') do |klass, abspath|
|
111
|
-
|
112
|
-
end
|
114
|
+
# loader.on_load('Jamf::SomeClass') do |klass, abspath|
|
115
|
+
# Jamf.load_msg "I just loaded #{klass} from #{abspath}"
|
116
|
+
# end
|
113
117
|
|
114
118
|
# callback for when anything loads
|
115
119
|
# - const_path is like "Jamf::SomeClass" or "Jamf::SomeClass::SOME_CONST_ARRY"
|
116
120
|
# - value is the value that constant contains after loading,
|
117
|
-
# e.g.
|
118
|
-
#
|
121
|
+
# e.g. the class Jamf::SomeClass for 'Jamf::SomeClass' or
|
122
|
+
# an Array for the constant "Jamf::SomeClass::SOME_CONST_ARRY"
|
119
123
|
# - abspath is the full path to the file where the constant was loaded from.
|
120
124
|
#####################################
|
121
125
|
loader.on_load do |const_path, value, abspath|
|
@@ -123,6 +127,7 @@ def setup_zeitwerk_loader(loader)
|
|
123
127
|
|
124
128
|
# Parse OAPI_PROPERTIES into getters and setters for subclasses of
|
125
129
|
# OAPIObject in the JPAPI.
|
130
|
+
#
|
126
131
|
# The class we just loaded must have this method and constant
|
127
132
|
# and the method must not have run already for the class or any superclass.
|
128
133
|
# This prevents running parse_oapi_properties again in subclasses that
|
data/test/tests/policy.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-jss
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.0b3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Lasell
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2022-08-
|
13
|
+
date: 2022-08-31 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: CFPropertyList
|
@@ -50,42 +50,30 @@ dependencies:
|
|
50
50
|
name: faraday
|
51
51
|
requirement: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- - "
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: 1.0.0
|
56
|
-
- - "<="
|
53
|
+
- - "~>"
|
57
54
|
- !ruby/object:Gem::Version
|
58
|
-
version: 1.0
|
55
|
+
version: '1.0'
|
59
56
|
type: :runtime
|
60
57
|
prerelease: false
|
61
58
|
version_requirements: !ruby/object:Gem::Requirement
|
62
59
|
requirements:
|
63
|
-
- - "
|
64
|
-
- !ruby/object:Gem::Version
|
65
|
-
version: 1.0.0
|
66
|
-
- - "<="
|
60
|
+
- - "~>"
|
67
61
|
- !ruby/object:Gem::Version
|
68
|
-
version: 1.0
|
62
|
+
version: '1.0'
|
69
63
|
- !ruby/object:Gem::Dependency
|
70
64
|
name: faraday_middleware
|
71
65
|
requirement: !ruby/object:Gem::Requirement
|
72
66
|
requirements:
|
73
|
-
- - "
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 1.0.0
|
76
|
-
- - "<="
|
67
|
+
- - "~>"
|
77
68
|
- !ruby/object:Gem::Version
|
78
|
-
version: 1.0
|
69
|
+
version: '1.0'
|
79
70
|
type: :runtime
|
80
71
|
prerelease: false
|
81
72
|
version_requirements: !ruby/object:Gem::Requirement
|
82
73
|
requirements:
|
83
|
-
- - "
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: 1.0.0
|
86
|
-
- - "<="
|
74
|
+
- - "~>"
|
87
75
|
- !ruby/object:Gem::Version
|
88
|
-
version: 1.0
|
76
|
+
version: '1.0'
|
89
77
|
- !ruby/object:Gem::Dependency
|
90
78
|
name: concurrent-ruby
|
91
79
|
requirement: !ruby/object:Gem::Requirement
|
@@ -107,9 +95,6 @@ dependencies:
|
|
107
95
|
- - "~>"
|
108
96
|
- !ruby/object:Gem::Version
|
109
97
|
version: '2.3'
|
110
|
-
- - ">="
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
version: 2.3.0
|
113
98
|
type: :runtime
|
114
99
|
prerelease: false
|
115
100
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -117,9 +102,6 @@ dependencies:
|
|
117
102
|
- - "~>"
|
118
103
|
- !ruby/object:Gem::Version
|
119
104
|
version: '2.3'
|
120
|
-
- - ">="
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
version: 2.3.0
|
123
105
|
- !ruby/object:Gem::Dependency
|
124
106
|
name: zeitwerk
|
125
107
|
requirement: !ruby/object:Gem::Requirement
|
@@ -144,6 +126,9 @@ dependencies:
|
|
144
126
|
name: rexml
|
145
127
|
requirement: !ruby/object:Gem::Requirement
|
146
128
|
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '3.1'
|
147
132
|
- - ">="
|
148
133
|
- !ruby/object:Gem::Version
|
149
134
|
version: 3.1.9
|
@@ -151,6 +136,9 @@ dependencies:
|
|
151
136
|
prerelease: false
|
152
137
|
version_requirements: !ruby/object:Gem::Requirement
|
153
138
|
requirements:
|
139
|
+
- - "~>"
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '3.1'
|
154
142
|
- - ">="
|
155
143
|
- !ruby/object:Gem::Version
|
156
144
|
version: 3.1.9
|
@@ -159,7 +147,7 @@ description: |
|
|
159
147
|
an enterprise/education tool for managing Apple devices, from jamf.com.
|
160
148
|
The Jamf module provides access to both the 'Classic' API and the more modern
|
161
149
|
'Jamf Pro' API. Jamf Pro objects are implemented as classes and can interact
|
162
|
-
with each other.
|
150
|
+
with each other. Authentication tokens, data transfer using JSON or XML and other
|
163
151
|
details are handled automatically under the hood to allow simpler, intuitive
|
164
152
|
automation of Jamf-related Tasks.
|
165
153
|
email: ruby-jss@pixar.com
|
@@ -759,6 +747,7 @@ files:
|
|
759
747
|
- lib/jamf/configuration.rb
|
760
748
|
- lib/jamf/constants.rb
|
761
749
|
- lib/jamf/db_connection.rb
|
750
|
+
- lib/jamf/deprecations/deprecated_api_connection_class.rb
|
762
751
|
- lib/jamf/deprecations/deprecated_api_constant.rb
|
763
752
|
- lib/jamf/deprecations/deprecated_config_constant.rb
|
764
753
|
- lib/jamf/exceptions.rb
|