There are quite a few methods that people use to make macOS updates available to their end users. My method takes a little inspiration from those posts with a few differences. This time around I wanted to use the macOS installer app from Apple which has a neat little command line tool call startosinstall. There was no particular reason to use this method other than there were no requirements to install any particular packages post-install which you can do with a tool like createOSinstallerPKG. We had a few requirements:
- Computer has sufficient free drive space.
- User is not logged in to avoid the new iCloud Drive Document Sync feature.
- Ensure the user is plugged into a power source.
- Provide dialogs to give the user feedback such as a time estimate and dialogs on what to expect next.
- Make use of the JSS parameter to allow for customization and potential re-use for future operating systems.