
Connaître les phases d’application des mises à jour logicielles d’Apple
L’application des mises à jour logicielles à l’aide de la gestion des appareils comprend cinq éléments principaux :
le service de gestion des appareils;
l’appareil;
l’utilisateur;
le service de recherche sur les logiciels Apple;
le catalogue de mise à jour logicielle Apple.
Phase 1
Le service de gestion des appareils surveille régulièrement le service de recherche sur les logiciels Apple pour y trouver de nouvelles versions. S’il en détecte une, il utilise la clé SupportedDevices
du catalogue et la compare à sa liste d’appareils gérés pour définir à quels appareils la version doit être appliquée.
Le service de gestion des appareils devrait aussi s’abonner aux rapports d’état softwareupdate.*
et device.operating-system.*
pour récupérer automatiquement les mises à jour si l’une de ces valeurs change.

Phase 2
Le service de gestion des appareils crée une déclaration com.apple.configuration.softwareupdate.enforcement.specific
avec la version détectée et définit la clé TargetLocalDateTime
et éventuellement DetailsURL
conformément aux exigences de l’organisation. Le service de gestion des appareils envoie ensuite une notification push à l’appareil pour déclencher la synchronisation des déclarations. Pour en savoir plus, consultez la page Intégration de la gestion déclarative sur le site Web Apple Developer (en anglais).

Phase 3
Une fois la déclaration activée sur un appareil, le système d’exploitation s’adresse au catalogue des mises à jour logicielles Apple pour récupérer l’URL de téléchargement, puis commence à télécharger la mise à jour si les conditions requises sont remplies. L’appareil présente alors une notification à l’utilisateur et renvoie les données suivantes au service de gestion des appareils :
1. Une valeur d’attente softwareupdate.install-state
, qui indique le début du processus de demande de mise à jour.
2. Une valeur de téléchargement softwareupdate.install-state
, qui indique que l’appareil est en train de télécharger la mise à jour.
Si l’appareil dispose d’un service de mise en cache du contenu, il tente de télécharger la mise à jour logicielle à partir de la mémoire cache du contenu.
Une fois la mise à jour téléchargée avec succès, l’appareil la prépare en vue de son installation. Une fois ce processus terminé, le système d’exploitation envoie une valeur softwareupdate.install-state
de prepared
au service de gestion des appareils.

Phase 4
L’appareil commence la période de notification. Cette notification peut afficher un texte et des options différentes en fonction de la date à laquelle l’installation doit avoir lieu.

Phase 5
Si l’utilisateur n’a pas installé la mise à jour avant la date limite d’application, l’appareil commence l’installation et envoie au service de gestion des appareils une valeur d’installation
softwareupdate.install-state
. Avant le début de l’installation, un Mac équipé d’une puce Apple communique avec le service de gestion des appareils pour récupérer le jeton d’amorçage (le cas échéant).
Si la mise à jour est bien installée, l’appareil redémarre. Si la mise à jour échoue, une valeur de softwareupdate.install-state
à failed
est envoyée. Dans tou les cas, l’appareil renvoie un rapport d’état softwareupdate.failure-reason
. Pour l’installation réussie, la clé de comptage a une valeur de 0
.

Phase 6
L’appareil envoie alors les renseignements suivants au service de gestion des appareils. En fonction de la mise à jour, certains objets pourraient ne pas avoir de valeur de retour.
StatusDeviceOperatingSystemVersion : un rapport d’état de la version du système d’exploitation de l’appareil.
StatusDeviceOperatingSystemBuildVersion : un rapport d’état de l’identifiant du build du logiciel.
StatusDeviceOperatingSystemSupplementalBuildVersion : un rapport d’état de la version du système d’exploitation de l’appareil et de l’identifiant build de l’amélioration rapide à la sécurité.
StatusDeviceOperatingSystemSupplementalExtraVersion : un rapport d’état de l’identifiant de l’amélioration rapide à la sécurité du système d’exploitation de l’appareil.

Phase 7
Pour démarrer la synchronisation, le service de gestion des appareils rappelle la déclaration de l’appareil et envoie une notification push à ce dernier. Après la synchronisation, l’appareil supprime la déclaration.
