-
Notifications
You must be signed in to change notification settings - Fork 71
Migrating Support 2.x to 3.x
The new structure introduced in Support App 3.0 has the following benefits:
- Flexibility to define rows
- Configure unlimited number of items, including Extensions
- Supported by Configurator Mode
The previous structure was based on “hard-coded" keys for every item, coming with more complexity, maintenance, and being error-prone, which was a limiting factor for both administrators and developers to further develop the app without creating many more keys.
The new structure is defined in the Rows key, which consists of an array of rows. Each row is an array of Items. Each item is a dictionary containing the item properties.
Root (Configuration)
└── Rows (Array)
├── Row (Dictionary)
│ └── Items (Array)
│ ├── Item (Dictionary)
│ │ ├── Type (Required)
│ │ ├── Title
│ │ ├── Subtitle
│ │ ├── Symbol
│ │ ├── Action
│ │ ├── ActionType
│ │ ├── ExtensionID
│ │ └── OnAppearAction
│ ├── Item (Dictionary)
│ │ ├── Type (Required)
│ │ ├── Title
│ │ ├── Subtitle
│ │ ├── Symbol
│ │ ├── Action
│ │ ├── ActionType
│ │ ├── ExtensionID
│ │ └── OnAppearAction
│ └── …
│
├── Row (Dictionary)
│ └── Items (Array)
│ └── Item (Dictionary)
│ ├── Type (Required)
│ ├── Title
│ ├── Subtitle
│ ├── Symbol
│ ├── Action
│ ├── ActionType
│ ├── ExtensionID
│ └── OnAppearAction
│
└── …
Although we recommend migrating for new features and as legacy keys are deprecated, there should not be any breaking changes when using Support App 3.x with your 2.x configuration.
The Rows key takes precedence over any legacy structure preference key. As soon as the Rows key is not empty, Support App automatically switches over to the new structure. All legacy structure preference keys are ignored and will not be shown anymore until you remove the Rows key.
There are a few ways to migrate your current configuration to the new structure:
- Configurator Mode: This feature allows you to recreate your configuration in a visual editor right within Support App and export to a valid property list or Configuration Profile. This is usually the easiest and quickest way.
- Jamf Manifest: When you use Jamf Pro, you can use the updated Jamf Manifest which allows you to recreate your current configuration in the Jamf Pro user interface.
- Manual editing: Manually extracting your current configuration and edit in a code editor.
All keys belonging to the legacy structure are deprecated and we recommend migrating to the new more flexible structure. At some point in the future, the deprecated keys will be removed. There is no timeline and there is no intention to do this anytime soon. When the time comes, this will be communicated in beta release notes.
HideSecondRowInfoItems
HideThirdRowInfoItems
HideFirstRowButtons
HideSecondRowButtons
InfoItemOne
InfoItemTwo
InfoItemThree
InfoItemFour
InfoItemFive
InfoItemSix
FirstRowTitleLeft
FirstRowSubtitleLeft
FirstRowTypeLeft
FirstRowLinkLeft
FirstRowSymbolLeft
FirstRowTitleMiddle
FirstRowSubtitleMiddle
FirstRowTypeMiddle
FirstRowLinkMiddle
FirstRowSymbolMiddle
FirstRowTitleRight
FirstRowSubtitleRight
FirstRowTypeRight
FirstRowLinkRight
FirstRowSymbolRight
SecondRowTitleLeft
SecondRowSubtitleLeft
SecondRowTypeLeft
SecondRowLinkLeft
SecondRowSymbolLeft
SecondRowTitleMiddle
SecondRowSubtitleMiddle
SecondRowTypeMiddle
SecondRowLinkMiddle
SecondRowSymbolMiddle
SecondRowTitleRight
SecondRowSubtitleRight
SecondRowTypeRight
SecondRowLinkRight
SecondRowSymbolRight
ExtensionTitleA
ExtensionValueA
ExtensionSymbolA
ExtensionTypeA
ExtensionLinkA
ExtensionAlertA
ExtensionTitleB
ExtensionValueB
ExtensionSymbolB
ExtensionTypeB
ExtensionLinkB
ExtensionAlertB