From 2ab574c657aa1a473e33575e1f4885b1d0398d9a Mon Sep 17 00:00:00 2001 From: Michael Levenick Date: Mon, 29 Jul 2019 12:13:03 -0500 Subject: [PATCH 1/5] Updated Readme file --- README.md | 353 +++++++++++++++++------------------------------------- 1 file changed, 113 insertions(+), 240 deletions(-) diff --git a/README.md b/README.md index ecd2724..e7a8eef 100644 --- a/README.md +++ b/README.md @@ -1,240 +1,113 @@ -
-

The MUT MUT Logo

-

The unofficial, all-in-one mass update tool designed to be the perfect companion to Jamf Admins

- -

Introduction:

-

Please note that The MUT is designed, built, and maintained outside of Jamf. It is not affiliated with Jamf, it is not officially maintained by Jamf.

-

This app is a learning project for me to learn how to use Xcode and program in Swift, and while I will do my best to maintain it, I cannot guarantee its functionality.

-

If you are having trouble with your CSV not parsing properly, and you are exporting your CSV from Excel, try using "Windows Comma Separated (.csv)". Windows Comma Separated uses a slightly different linebreak character, which can sometimes play nicer with the CSV parsing functions in The MUT.

-

What it is:

-

The MUT is a native macOS application written in Swift 3 which allows Jamf admins to make mass updates to attributes (such as username, asset tag, or extension attribute) of their devices and users in Jamf.

-

Admins can enter the URL for their Jamf server (whether cloud hosted or on-premise), a username and password for The MUT to use, select the device type, attribute type, and unique identifier type from dropdowns, and browse to their CSV file. A pre-flight check will give a preview of the actions to be taken, and then the admin can submit their updates.

-

Steps for use:

-

Format your CSV

-
    -
  1. Fill out Column A with the unique identifiers to be used (serial numbers or Jamf ID numbers)
  2. -
  3. Fill out Column B with the values for the attributes to be updated
  4. -
  5. Headers are optional. If you include them, The MUT will throw a 404 on line 1, but it will ignore this error and continue updating the rest of the rows
  6. -
  7. If you are looking to strip values off of devices (such as removing the username from all of your iPads) you can include a header row so that The MUT knows the column exists, and then leave the rest of Column B blank. This will strip set the value for that attribute to null
  8. -
-

Examples of GOOD CSV

-

Good CSV With Headers

- - - - - - - - - - - - - - - - - - - -
SerialUsername
C111111mike.levenick
C222222john.smith
C333333jane.smith
-

Good CSV Without Headers

- - - - - - - - - - - - - - - -
C111111mike.levenick
C222222john.smith
C333333jane.smith
-

Good CSV for Removing Usernames

- - - - - - - - - - - - - - - - - - - -
SerialUsername
C111111
C222222
C333333
-

Examples of BAD CSV

-

No Header && No Column B (MUT will not "see" Column B at all)

- - - - - - - - - - - - - - - -
C111111
C222222
C333333
-

Commas in Attribute Values (MUT will believe Column B ends prematurely)

- - - - - - - - - - - - - - - - - - - -
SerialBuilding
C111111Eau Claire, WI
C222222Minneapolis, MN
C333333New York, NY
-
-

It is now possible to change the delimiter MUT uses to a semi-colon under the Settings menu at the top of the page. Use this feature if you must include commas in attribute values.

-
-

Verify your credentials

-
    -
  1. Select the radio button for Jamf Cloud hosted or on-premise Jamf server
  2. -
  3. Fill out your instance name if Jamf Cloud hosted, or your full URL if on-premise
  4. -
  5. Enter a username and password to use for the updates you wish to run
  6. -
-
-

The MUT does a read of your Activation Code via the API to verify the credentials. If you wish to give The MUT's user minimal permissions, it must include at least Update privileges for the attribute you wish to update, as well as Read privileges on the Activation Code.

-
-
    -
  1. Select whether or not you'd like to save the username for your next run (it is saved by default). The MUT will never store your password.
  2. -
  3. Hit the "Verify Credentials" button (or simply press Enter) to verify the credentials you've entered
  4. -
  5. A message will be displayed to let you know whether or not your credentials are correct
  6. -
-

Prepare for your updates

-
    -
  1. Select the Device Type, Unique Identifier, and Attribute from the dropdowns
  2. -
  3. If you're updating an Extension Attribute, enter the Extension Attribute ID number in the box (you can find the EA ID in the URL while viewing the EA in Jamf)
  4. -
  5. Browse for your CSV File
  6. -
  7. Hit the "Pre-Flight Check" button
  8. -
  9. Review the information in the display paying particularly close attention to whether or not The MUT sees the correct number of lines in your CSV, and that your device type/attribute are correct. Once you make a run and the attributes get updated, there is no "undo" button
  10. -
-

Send your updates

-
    -
  1. Hit the "Submit" button to send the updates to Jamf
  2. -
  3. Messages will be displayed in either green or red, depending on the success of the run
  4. -
  5. In case of a failure, the HTTP code of the failure will display. The MUT may also try to provide some advice on why you received that error
  6. -
-

Top Tips

-
    -
  • There is an option in the top Menu Bar under "Settings" to change the character which separates items on your CSV file to either a comma (,) or a semi-colon (;). This is especially useful for international folks who delimit their CSV files by semi-colon by default, or for folks who wish to include commas in their attribute values.
  • -
  • There is an option in the top Menu Bar under "Settings" to enable advanced debugging. This will display the full HTML code of the API response, and is especially useful in situations where you are getting a 409 - Conflict error and want to see what the issue may be.
  • -
  • There is an option in the top Menu Bar under "Settings" to clear any stored values that you may have by default, including Delimiter, Username, and your server URL.
  • -
  • There is an option in the top Menu Bar under "File" to save the contents of the logging box. This is especially useful in combination with advanced debugging when trying to figure out why some devices are not updating properly.
  • -
-

Advanced Workflows

-

Create multiple users en masse

-

Your Jamf server will create users on demand. This means that if you attempt to assign a device to a user that does not exist, the username will be created. It is important to note that the usernames will be created and populated with whatever user/location information currently exists for that device, such as Full Name, Phone Number, etc.

-
    -
  1. If you already know which devices will go to which users, simply fill out your CSV as normal, and the usernames will be created as they are assigned
  2. -
  3. If you simply wish to create all the usernames without having them assigned to the same user, fill out Column A of your CSV with the same device serial over and over. This can be any device, but it is recommended that you use some sort of "test device" or Jamf Admin's device to limit unintended behavior for end-users
  4. -
  5. Fill out Column B with all of the usernames that you wish to create. Your CSV Should look something like:
  6. -
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Serialusername
C1111111mike.levenick
C1111111bill.smith
C1111111jane.smith
C1111111ronnie.smith
C1111111
-

The update run will create the usernames mike.levenick, bill.smith, jane.smith, and ronnie.smith, and then at the end of the run the device will be unassigned from any user. Alternatively, the last line can be the correct username to associate that device (such as the admin's username if you're using an admin's device).

-

Remove users from devices en masse

-

If you leave Column B blank, The MUT can wipe out the values for whatever attribute you're updating. This is especially useful when unassigning users from devices. However, The MUT needs to "see" Column B before it will let you do a run. Headers are sufficient to help MUT see the column, so a CSV formatted similar to the following will remove the usernames from devices C111111, C222222, and C333333.

- - - - - - - - - - - - - - - - - - - -
SerialUsername
C111111
C222222
C333333
-
-
+# The MUT ![MUT Logo](https://i.imgur.com/g6XHGto.png "The MUT Logo") + +_The **unofficial**, all-in-one mass update tool designed to be the perfect companion to Jamf Admins_ + +- [A note on v5:](#a-note-on-v5) +- [Introduction:](#introduction) +- [What it is:](#what-it-is) +- [Steps for use:](#steps-for-use) + - [Log in and verify credentials:](#log-in-and-verify-credentials) + - [Download templates](#download-templates) + - [Formatting your CSV](#formatting-your-csv) + - [Object Updates](#object-updates) + - [Single Attribute Updates](#single-attribute-updates) + - [Multiple Attribute Updates](#multiple-attribute-updates) + - [Clearing Existing Attribute Values](#clearing-existing-attribute-values) + - [Updating Extension Attributes](#updating-extension-attributes) + - [Static Group Updates](#static-group-updates) + - [Prestage Scope Updates](#prestage-scope-updates) + - [Preflight and Preview](#preflight-and-preview) + - [Send your updates](#send-your-updates) +- [Top Tips](#top-tips) + +## [A note on v5:](#v5) + +Welcome to MUT v5. There are a LOT of changes to v5, and even if you are MUT Veteran we encourage you to read the ReadMe, and watch a video or two if you have any questions. + +MUT v5 is **significantly** more powerful than v4, but with great power comes great responsibility. It is very important that you format your CSV properly, and do not modify the header row of the provided templates. + +## [Introduction:](#introduction) + +Please note that The MUT is designed, built, and maintained outside of Jamf. It is not affiliated with Jamf, it is not officially maintained by Jamf. + +This app is a learning project for us to learn how to use Xcode and program in Swift, and while we will do our best to maintain it, we cannot guarantee its functionality. + +## [What it is:](#what-it-is) + +The MUT is a native macOS application written in Swift 5 which allows Jamf admins to make mass updates to attributes (such as username, asset tag, or extension attribute) of their devices and users in Jamf. + +Admins can also make mass changes to static groups, and the scope of prestage enrollments via MUT. + +## [Steps for use:](#steps-for-use) + +### [Log in and verify credentials:](#log-in) + +MUT v5 will perform checks on your credentials automatically when you log in. If it senses a problem with the credentials you provide, it will let you know what those problems are. + +MUT v5 performs these checks by generating a token for the new JPAPI. Any user is able to generate a token for the JPAPI, so there is no longer a need for the "bypass authentication" checkbox to exist. This checkbox has been changed to an "allow insecure SSL" checkbox, but MUT will perform standard SSL checks per ATS by default. + +### [Download templates](#download-templates) + +When you first authenticate, you will be presented with a relatively simplistic screen, which will have a large button to download the CSV templates needed to use MUT v5. + +Upon pressing the button, MUT will create a directory called "MUT Templates" inside your Downloads directory, and will place inside that directory all of the templates needed--as well as the new MUT.log. + +### [Formatting your CSV](#format-csv) +##### [Object Updates](#objects) +In order to update information for an object (such as a computer or mobile device) in Jamf Pro, you will need to use the associated CSV template that MUT placed in ~/Downloads/MUT Templates/. For example, to update Computer objects, you will need to use the "ComputerTemplate.csv". + +MUT performs verification checks against the header row of this CSV file, and it is very important that you do not modify the header row (such as deleting columns, or re-arranging the columns) prior to uploading your CSV file. If you do, MUT will reject the file. +###### [Single Attribute Updates](#single-attribute) +One of the most common uses for MUT is to update single attributes, such as updating the username assigned to a set of devices, or populating the Asset Tag or Barcode for a device. + +The most important thing to remember is that any cell left completely blank in your CSV will be ignored. Please note that a space is not the same as completely blank. There is a big difference between "" and " ". + +If a field is going to be ignored in MUT, your preflight check will show the phrase "(unchanged)" in blue for that field. + +If you wanted to update the Username on a set of devices, the CSV file would look like this (with more columns after the elipses.): + +| Computer Serial | Display Name | Asset Tag | Barcode 1 | Barcode 2 | Username | Real Name | ... | +| --------------- | ------------ | --------- | --------- | --------- | ------------- | --------- | --- | +| C1111111 | | | | | mike.levenick | | | +| C2222222 | | | | | ben.whitis | | | + +And MUT will display a screen such as the following when you run your pre-flight check: + + +###### [Multiple Attribute Updates](#multiple-attributes) +Perhaps the MOST requested feature for MUT has been the ability to update multiple attributes at once. This feature is now available in MUT v5. + +To update multiple attributes for an object at once, simply populate all of those fields in the CSV file. When you run your pre-flight check, you will be presented with all of the information that will be updating (and any blank fields will still display as "(unchanged)"). + +If you wanted to update the Asset Tag, Barcodes, Username, as well as Real Name on a set of devices, the CSV file would look like this (with more columns after the elipses.): + +| Computer Serial | Display Name | Asset Tag | Barcode 1 | Barcode 2 | Username | Real Name | ... | +| --------------- | ------------ | --------- | ---------- | ---------- | ------------- | ------------- | --- | +| C1111111 | | MUT-111 | 0123456789 | 0123456789 | mike.levenick | Mike Levenick | | +| C2222222 | | MUT-222 | 1234567890 | 1234567890 | ben.whitis | Ben Whitis | | + +And MUT will display a screen such as the following when you run your pre-flight check: +###### [Clearing Existing Attribute Values](#clearing-attributes) +###### [Updating Extension Attributes](#extension-attributes) +##### [Static Group Updates](#groups) + +##### [Prestage Scope Updates](#prestages) + +### [Preflight and Preview](#preflight) + +1. Select the Device Type, Unique Identifier, and Attribute from the dropdowns +2. If you're updating an Extension Attribute, enter the Extension Attribute ID number in the box (you can find the EA ID in the URL while viewing the EA in Jamf) +3. Browse for your CSV File +4. Hit the "Pre-Flight Check" button +5. Review the information in the display paying particularly close attention to whether or not The MUT sees the correct number of lines in your CSV, and that your device type/attribute are correct. Once you make a run and the attributes get updated, there is no "undo" button + +### [Send your updates](#send-your-updates) + +1. Hit the "Submit" button to send the updates to Jamf +2. Messages will be displayed in either green or red, depending on the success of the run +3. In case of a failure, the HTTP code of the failure will display. The MUT may also try to provide some advice on why you received that error + +## [Top Tips](#top-tips) + +* There is an option in the top Menu Bar under "Settings" to change the character which separates items on your CSV file to either a comma (,) or a semi-colon (;). This is especially useful for international folks who delimit their CSV files by semi-colon by default, or for folks who wish to include commas in their attribute values. +* There is an option in the top Menu Bar under "Settings" to clear any stored values that you may have by default, including Delimiter, Username, and your server URL. \ No newline at end of file From 93861e676089ceb1c980d810c8b274ab4f8dffdb Mon Sep 17 00:00:00 2001 From: Michael Levenick Date: Mon, 29 Jul 2019 13:40:27 -0500 Subject: [PATCH 2/5] Further updates to readme --- README.md | 40 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e7a8eef..b323e3d 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,8 @@ _The **unofficial**, all-in-one mass update tool designed to be the perfect comp - [Object Updates](#object-updates) - [Single Attribute Updates](#single-attribute-updates) - [Multiple Attribute Updates](#multiple-attribute-updates) - - [Clearing Existing Attribute Values](#clearing-existing-attribute-values) - [Updating Extension Attributes](#updating-extension-attributes) + - [Clearing Existing Attribute Values](#clearing-existing-attribute-values) - [Static Group Updates](#static-group-updates) - [Prestage Scope Updates](#prestage-scope-updates) - [Preflight and Preview](#preflight-and-preview) @@ -72,6 +72,7 @@ If you wanted to update the Username on a set of devices, the CSV file would loo | C2222222 | | | | | ben.whitis | | | And MUT will display a screen such as the following when you run your pre-flight check: +![Single attribute update](https://i.imgur.com/57LgeXD.png) ###### [Multiple Attribute Updates](#multiple-attributes) @@ -87,8 +88,43 @@ If you wanted to update the Asset Tag, Barcodes, Username, as well as Real Name | C2222222 | | MUT-222 | 1234567890 | 1234567890 | ben.whitis | Ben Whitis | | And MUT will display a screen such as the following when you run your pre-flight check: -###### [Clearing Existing Attribute Values](#clearing-attributes) +![Multiple attribute update](https://i.imgur.com/5eZcX0C.png) + ###### [Updating Extension Attributes](#extension-attributes) +MUT is also able to update Extension Attributes for a device or a user. In order to do this, you must first identify the Extension Attribute ID number. You can find this number in the URL while you are viewing an extension atribute in Jamf Pro's GUI under Settings (gear icon) > Computer Management > Extension Attributes > Click on the EA you want to update to bring it up. + +For example, the EA ID of the displayed Extension Attribute here is "2". +![Extension Attribute ID 2](https://i.imgur.com/iO0Pyjs.png) + +To update an Extension Attribute, simply add your own header for a new column **AFTER** all of the existing columns of your template, and put the string "EA_#" in the header, where # is the ID of the EA you would like to update. + +For example, to update an Extension Attribute with the ID: "5", we would add a new column with header "EA_5", and then place the values for that EA in the column. + +Your CSV would look something like this (Some columns have been removed simply to make it fit. Please DO NOT remove columns from your CSV): + +| Computer Serial | Display Name | Asset Tag | Barcode 1 | ... | ... | Site (ID or Name) | EA_5 | +| --------------- | ------------ | --------- | ---------- | --- | --- | ----------------- | --------- | +| C1111111 | | MUT-111 | 0123456789 | | | | New Value | +| C2222222 | | MUT-222 | 1234567890 | | | | New Value | + +And MUT will display a screen such as the following when you run your pre-flight check (note the new field added at teh bottom with EA_5): +![Extension Attribute Updates](https://i.imgur.com/o3oz0AH.png) + +###### [Clearing Existing Attribute Values](#clearing-attributes) +Another common workflow with MUT is to clear out existing attributes. This happens for example in situations where a group of devices are being re-distributed to new users, or retired, and need the username and related information cleared off of them. + +Because MUT ignores blank fields in your CSV now, a specific string must be used to tell MUT to clear values. This string is currently "CLEAR!" (with exclaimation point, without quotes.) In the Preflight GUI, MUT will display the string "WILL BE CLEARED" in all red, to let you know that the field is being cleared. + +If you wanted to clear user information from a device, your CSV would look something like this (with more columns after the elipses.): + +| Computer Serial | Display Name | Asset Tag | Barcode 1 | Barcode 2 | Username | Real Name | ... | +| --------------- | ------------ | --------- | ---------- | ---------- | -------- | --------- | --- | +| C1111111 | | MUT-111 | 0123456789 | 0123456789 | CLEAR! | CLEAR! | | +| C2222222 | | MUT-222 | 1234567890 | 1234567890 | CLEAR! | CLEAR! | | + +And MUT will display a screen such as the following when you run your pre-flight check: +![Clear attributes from computers](https://i.imgur.com/Kgw5jEY.png) + ##### [Static Group Updates](#groups) ##### [Prestage Scope Updates](#prestages) From 5638344e89dbcad8c80b73b349ddb23641c828a4 Mon Sep 17 00:00:00 2001 From: Michael Levenick Date: Mon, 29 Jul 2019 13:41:52 -0500 Subject: [PATCH 3/5] Fixed typo and spacing --- README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b323e3d..659023e 100644 --- a/README.md +++ b/README.md @@ -72,6 +72,7 @@ If you wanted to update the Username on a set of devices, the CSV file would loo | C2222222 | | | | | ben.whitis | | | And MUT will display a screen such as the following when you run your pre-flight check: + ![Single attribute update](https://i.imgur.com/57LgeXD.png) @@ -88,12 +89,14 @@ If you wanted to update the Asset Tag, Barcodes, Username, as well as Real Name | C2222222 | | MUT-222 | 1234567890 | 1234567890 | ben.whitis | Ben Whitis | | And MUT will display a screen such as the following when you run your pre-flight check: + ![Multiple attribute update](https://i.imgur.com/5eZcX0C.png) ###### [Updating Extension Attributes](#extension-attributes) MUT is also able to update Extension Attributes for a device or a user. In order to do this, you must first identify the Extension Attribute ID number. You can find this number in the URL while you are viewing an extension atribute in Jamf Pro's GUI under Settings (gear icon) > Computer Management > Extension Attributes > Click on the EA you want to update to bring it up. For example, the EA ID of the displayed Extension Attribute here is "2". + ![Extension Attribute ID 2](https://i.imgur.com/iO0Pyjs.png) To update an Extension Attribute, simply add your own header for a new column **AFTER** all of the existing columns of your template, and put the string "EA_#" in the header, where # is the ID of the EA you would like to update. @@ -107,7 +110,8 @@ Your CSV would look something like this (Some columns have been removed simply t | C1111111 | | MUT-111 | 0123456789 | | | | New Value | | C2222222 | | MUT-222 | 1234567890 | | | | New Value | -And MUT will display a screen such as the following when you run your pre-flight check (note the new field added at teh bottom with EA_5): +And MUT will display a screen such as the following when you run your pre-flight check (note the new field added at the bottom with EA_5): + ![Extension Attribute Updates](https://i.imgur.com/o3oz0AH.png) ###### [Clearing Existing Attribute Values](#clearing-attributes) @@ -123,6 +127,7 @@ If you wanted to clear user information from a device, your CSV would look somet | C2222222 | | MUT-222 | 1234567890 | 1234567890 | CLEAR! | CLEAR! | | And MUT will display a screen such as the following when you run your pre-flight check: + ![Clear attributes from computers](https://i.imgur.com/Kgw5jEY.png) ##### [Static Group Updates](#groups) From ef6bcdc03ce0f006db5847b27308df51184b8ea8 Mon Sep 17 00:00:00 2001 From: Michael Levenick Date: Mon, 29 Jul 2019 14:36:23 -0500 Subject: [PATCH 4/5] All information added. Needs proofreading --- README.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 60 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 659023e..7d9963a 100644 --- a/README.md +++ b/README.md @@ -131,22 +131,74 @@ And MUT will display a screen such as the following when you run your pre-flight ![Clear attributes from computers](https://i.imgur.com/Kgw5jEY.png) ##### [Static Group Updates](#groups) +MUT v5 is able to update the contents of a Static Group (computers, mobile devices, or users). It is able to either add objects to a group, remove objects from a group, or replace the entire current contents of that group. + +In order to do this, your CSV file should contain nothing but a single column of identifiers for the objects to be added, removed, or replaced in the scope of that group. This identifier can be either Serial Number or ID for computers and mobile devices, or Username or ID for users. + +Your CSV file should look like this: + +| Serial Numbers or Usernames | +| --- | +| C1111111 | +| C2222222 | +| C3333333 | +| C4444444 | +| C5555555 | + +When you upload this CSV to MUT, you will be taken to a slightly different screen which contains dropdowns. These dropdowns are how you will select what action to take place. It also contains a box, where you must put the ID of the static group to be modified. This ID can be found in the URL while viewing the group to be modified. + +For example, the Group ID for the following group is "3". + +![Group ID](https://i.imgur.com/5iAawXe.png) + +To add the devices in question to Computer Static Group 3, your MUT GUI would look like this: + +![Group 3 Update](https://i.imgur.com/STg89Yu.png) ##### [Prestage Scope Updates](#prestages) +One of the new features of MUT v5 is the ability to modify the scope of prestages. This feature REQUIRES Jamf Pro v10.14+ in order to function properly. + +In order to do this, your CSV file should contain nothing but a single column of identifiers for the objects to be added, removed, or replaced in the scope of that prestage. This identifier can be either Serial Number or ID for computers and mobile devices. + +Your CSV file should look like this: + +| Serial Numbers or Usernames | +| --- | +| C1111111 | +| C2222222 | +| C3333333 | +| C4444444 | +| C5555555 | + +When you upload this CSV to MUT, you will be taken to a slightly different screen which contains dropdowns. These dropdowns are how you will select what action to take place. It also contains a box, where you must put the ID of the prestage to be modified. This ID can be found in the URL while viewing the prestage to be modified. + +For example, the Prestage ID for the following group is "1". + +![Prestage ID](https://i.imgur.com/B87eWPT.png) + +To add the devices in question to Prestage 1, your MUT GUI would look like this: + +![Prestage 1 Update](https://i.imgur.com/4pXMvrc.png) ### [Preflight and Preview](#preflight) +Veterans of MUT are likely used to needing to run a PreFlight Check prior to every update, and then reviewing the information prior to submitting. -1. Select the Device Type, Unique Identifier, and Attribute from the dropdowns -2. If you're updating an Extension Attribute, enter the Extension Attribute ID number in the box (you can find the EA ID in the URL while viewing the EA in Jamf) -3. Browse for your CSV File -4. Hit the "Pre-Flight Check" button -5. Review the information in the display paying particularly close attention to whether or not The MUT sees the correct number of lines in your CSV, and that your device type/attribute are correct. Once you make a run and the attributes get updated, there is no "undo" button +PreFlight Checks in v5 for Object Attribute updates now happen as soon as you upload your CSV. If there is an issue with your CSV file, you will be alerted as soon as you attempt to upload it. MUT should also not let you run any updates if your CSV contains errors. + +Preflight Checks in v5 for group and prestage scope updates will happen partly when you upload the CSV, but you must run a separate PreFlight Check once you have populated the dropdowns and identifier boxes. The Submit Updates button will not appear until you have populated those fields, and then run the PreFlight Check. ### [Send your updates](#send-your-updates) +Once you are confident in the updates to be submitted to your Jamf Pro server, you can hit the "Submit Updates" button. + +Updates to groups and prestages now happen all in one upload. There is no longer an API call per device being added or removed, so the strain on your server should be significantly less. + +Updates to Object Attributes will need to be run individually, and a progress bar should appear as soon as you hit Submit, which will give you insight into the updates being run. + +Very little status/result information is displayed in the main GUI of MUT v5. You will now find a MUT.log in ~/Downloads/MUT Templates/MUT.log. This new log file contains much more verbose information about the status of your updates, and should help with troubleshooting significantly. + +The log file looks a bit like this: -1. Hit the "Submit" button to send the updates to Jamf -2. Messages will be displayed in either green or red, depending on the success of the run -3. In case of a failure, the HTTP code of the failure will display. The MUT may also try to provide some advice on why you received that error +![MUT.log](https://i.imgur.com/nJruxUe.png) ## [Top Tips](#top-tips) From aec10615f12a468642bb47203f12de743476baf4 Mon Sep 17 00:00:00 2001 From: Michael Levenick Date: Mon, 29 Jul 2019 14:41:39 -0500 Subject: [PATCH 5/5] Spellcheck Complete --- README.md | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 7d9963a..da9df6b 100644 --- a/README.md +++ b/README.md @@ -56,15 +56,15 @@ Upon pressing the button, MUT will create a directory called "MUT Templates" ins ##### [Object Updates](#objects) In order to update information for an object (such as a computer or mobile device) in Jamf Pro, you will need to use the associated CSV template that MUT placed in ~/Downloads/MUT Templates/. For example, to update Computer objects, you will need to use the "ComputerTemplate.csv". -MUT performs verification checks against the header row of this CSV file, and it is very important that you do not modify the header row (such as deleting columns, or re-arranging the columns) prior to uploading your CSV file. If you do, MUT will reject the file. +MUT performs verification checks against the header row of this CSV file, and it is very important that you do not modify the header row (such as deleting columns, or rearranging the columns) prior to uploading your CSV file. If you do, MUT will reject the file. ###### [Single Attribute Updates](#single-attribute) -One of the most common uses for MUT is to update single attributes, such as updating the username assigned to a set of devices, or populating the Asset Tag or Barcode for a device. +One of the most common uses for MUT is to update single attributes, such as updating the username assigned to a set of devices, or populating the Asset Tag or Barcode for a device. -The most important thing to remember is that any cell left completely blank in your CSV will be ignored. Please note that a space is not the same as completely blank. There is a big difference between "" and " ". +The most important thing to remember is that any cell left completely blank in your CSV will be ignored. Please note that a space is not the same as completely blank. There is a big difference between "" and " ". If a field is going to be ignored in MUT, your preflight check will show the phrase "(unchanged)" in blue for that field. -If you wanted to update the Username on a set of devices, the CSV file would look like this (with more columns after the elipses.): +If you wanted to update the Username on a set of devices, the CSV file would look like this (with more columns after the ellipsis.): | Computer Serial | Display Name | Asset Tag | Barcode 1 | Barcode 2 | Username | Real Name | ... | | --------------- | ------------ | --------- | --------- | --------- | ------------- | --------- | --- | @@ -77,11 +77,11 @@ And MUT will display a screen such as the following when you run your pre-flight ###### [Multiple Attribute Updates](#multiple-attributes) -Perhaps the MOST requested feature for MUT has been the ability to update multiple attributes at once. This feature is now available in MUT v5. +Perhaps the MOST requested feature for MUT has been the ability to update multiple attributes at once. This feature is now available in MUT v5. -To update multiple attributes for an object at once, simply populate all of those fields in the CSV file. When you run your pre-flight check, you will be presented with all of the information that will be updating (and any blank fields will still display as "(unchanged)"). +To update multiple attributes for an object at once, simply populate all of those fields in the CSV file. When you run your pre-flight check, you will be presented with all of the information that will be updating (and any blank fields will still display as "(unchanged)"). -If you wanted to update the Asset Tag, Barcodes, Username, as well as Real Name on a set of devices, the CSV file would look like this (with more columns after the elipses.): +If you wanted to update the Asset Tag, Barcodes, Username, as well as Real Name on a set of devices, the CSV file would look like this (with more columns after the ellipsis.): | Computer Serial | Display Name | Asset Tag | Barcode 1 | Barcode 2 | Username | Real Name | ... | | --------------- | ------------ | --------- | ---------- | ---------- | ------------- | ------------- | --- | @@ -93,9 +93,9 @@ And MUT will display a screen such as the following when you run your pre-flight ![Multiple attribute update](https://i.imgur.com/5eZcX0C.png) ###### [Updating Extension Attributes](#extension-attributes) -MUT is also able to update Extension Attributes for a device or a user. In order to do this, you must first identify the Extension Attribute ID number. You can find this number in the URL while you are viewing an extension atribute in Jamf Pro's GUI under Settings (gear icon) > Computer Management > Extension Attributes > Click on the EA you want to update to bring it up. +MUT is also able to update Extension Attributes for a device or a user. In order to do this, you must first identify the Extension Attribute ID number. You can find this number in the URL while you are viewing an extension attribute in Jamf Pro's GUI under Settings (gear icon) > Computer Management > Extension Attributes > Click on the EA you want to update to bring it up. -For example, the EA ID of the displayed Extension Attribute here is "2". +For example, the EA ID of the displayed Extension Attribute here is "2". ![Extension Attribute ID 2](https://i.imgur.com/iO0Pyjs.png) @@ -115,11 +115,11 @@ And MUT will display a screen such as the following when you run your pre-flight ![Extension Attribute Updates](https://i.imgur.com/o3oz0AH.png) ###### [Clearing Existing Attribute Values](#clearing-attributes) -Another common workflow with MUT is to clear out existing attributes. This happens for example in situations where a group of devices are being re-distributed to new users, or retired, and need the username and related information cleared off of them. +Another common workflow with MUT is to clear out existing attributes. This happens for example in situations where a group of devices are being redistributed to new users, or retired, and need the username and related information cleared off of them. -Because MUT ignores blank fields in your CSV now, a specific string must be used to tell MUT to clear values. This string is currently "CLEAR!" (with exclaimation point, without quotes.) In the Preflight GUI, MUT will display the string "WILL BE CLEARED" in all red, to let you know that the field is being cleared. +Because MUT ignores blank fields in your CSV now, a specific string must be used to tell MUT to clear values. This string is currently "CLEAR!" (with exclamation point, without quotes.) In the Preflight GUI, MUT will display the string "WILL BE CLEARED" in all red, to let you know that the field is being cleared. -If you wanted to clear user information from a device, your CSV would look something like this (with more columns after the elipses.): +If you wanted to clear user information from a device, your CSV would look something like this (with more columns after the ellipsis.): | Computer Serial | Display Name | Asset Tag | Barcode 1 | Barcode 2 | Username | Real Name | ... | | --------------- | ------------ | --------- | ---------- | ---------- | -------- | --------- | --- | @@ -131,7 +131,7 @@ And MUT will display a screen such as the following when you run your pre-flight ![Clear attributes from computers](https://i.imgur.com/Kgw5jEY.png) ##### [Static Group Updates](#groups) -MUT v5 is able to update the contents of a Static Group (computers, mobile devices, or users). It is able to either add objects to a group, remove objects from a group, or replace the entire current contents of that group. +MUT v5 is able to update the contents of a Static Group (computers, mobile devices, or users). It is able to either add objects to a group, remove objects from a group, or replace the entire current contents of that group. In order to do this, your CSV file should contain nothing but a single column of identifiers for the objects to be added, removed, or replaced in the scope of that group. This identifier can be either Serial Number or ID for computers and mobile devices, or Username or ID for users. @@ -140,9 +140,9 @@ Your CSV file should look like this: | Serial Numbers or Usernames | | --- | | C1111111 | -| C2222222 | -| C3333333 | -| C4444444 | +| C2222222 | +| C3333333 | +| C4444444 | | C5555555 | When you upload this CSV to MUT, you will be taken to a slightly different screen which contains dropdowns. These dropdowns are how you will select what action to take place. It also contains a box, where you must put the ID of the static group to be modified. This ID can be found in the URL while viewing the group to be modified. @@ -165,9 +165,9 @@ Your CSV file should look like this: | Serial Numbers or Usernames | | --- | | C1111111 | -| C2222222 | -| C3333333 | -| C4444444 | +| C2222222 | +| C3333333 | +| C4444444 | | C5555555 | When you upload this CSV to MUT, you will be taken to a slightly different screen which contains dropdowns. These dropdowns are how you will select what action to take place. It also contains a box, where you must put the ID of the prestage to be modified. This ID can be found in the URL while viewing the prestage to be modified. @@ -202,5 +202,5 @@ The log file looks a bit like this: ## [Top Tips](#top-tips) -* There is an option in the top Menu Bar under "Settings" to change the character which separates items on your CSV file to either a comma (,) or a semi-colon (;). This is especially useful for international folks who delimit their CSV files by semi-colon by default, or for folks who wish to include commas in their attribute values. +* There is an option in the top Menu Bar under "Settings" to change the character which separates items on your CSV file to either a comma (,) or a semicolon (;). This is especially useful for international folks who delimit their CSV files by semicolon by default, or for folks who wish to include commas in their attribute values. * There is an option in the top Menu Bar under "Settings" to clear any stored values that you may have by default, including Delimiter, Username, and your server URL. \ No newline at end of file