Type object
File match *.updatemanifest.json
Schema URL https://catalog.lintel.tools/schemas/schemastore/azure-device-update-for-iot-hub-update-manifest/latest.json
Source https://www.schemastore.org/azure-deviceupdate-update-manifest-5.json

Versions

4 5

Validate with Lintel

npx @lintel/lintel check
Type: object

JSON schema of update manifest sent by Device Update for IoT Hub to device agent during deployment.

Properties

updateId updateId required
manifestVersion string required
Constant: "4"
$schema string

JSON schema reference

One of

Definitions

miniUpdateManifest object

Manifest containing metadata of the detached, downloadable, complete update manifest.

detachedManifestFileId string required

Server generated file identifier to be used for retrieving file metadata and download URL.

minLength=1
files Record<string, file> required

Map of '#/definitions/fileId' to file metadata.

fullUpdateManifest object

Full update manifest containing metadata of the update being deployed.

compatibility compatibility required
instructions object required
1 nested properties
steps inlineStep | referenceStep[] required
minItems=1maxItems=10
files Record<string, file> required

Map of '#/definitions/fileId' to file metadata.

createdDateTime string required

Date & time update was created in ISO 8601 format.

Examples: "2020-10-02T22:18:04.9446744Z"
fileId string

Server generated file identifier to be used for retrieving file metadata and download URL.

inlineStep object

Installation instruction step that performs code execution.

handler inlineStepHandler required
files fileId[] required

'fileId' of update files that agent will pass to handler.

minItems=1maxItems=10
handlerProperties inlineStepHandlerProperties
referenceStep object

Installation instruction step that installs another update.

type referenceStepType required
detachedManifestFileId string required

Server generated file identifier to be used for retrieving file metadata and download URL.

minLength=1

Examples

{
  "manifestVersion": "4",
  "updateId": {
    "provider": "Microsoft",
    "name": "Toaster",
    "version": "1.0"
  },
  "compatibility": [
    {
      "deviceManufacturer": "Microsoft",
      "deviceModel": "Toaster"
    }
  ],
  "instructions": {
    "steps": [
      {
        "handler": "microsoft/script:1",
        "handlerProperties": {
          "arguments": "--pre-install"
        },
        "files": [
          "fileId0"
        ]
      },
      {
        "type": "reference",
        "detachedManifestFileId": "fileId1"
      }
    ]
  },
  "files": {
    "fileId0": {
      "filename": "configure.sh",
      "sizeInBytes": 718,
      "hashes": {
        "sha256": "mcB5SexMU4JOOzqmlJqKbue9qMskWY3EI/iVjJxCtAs="
      },
      "relatedFiles": [
        {
          "filename": "in1_in2_deltaupdate.dat",
          "sizeInBytes": 102910752,
          "hashes": {
            "sha256": "2MIldV8LkdKenjJasgTHuYi+apgtNQ9FeL2xsV3ikHY="
          },
          "properties": {
            "microsoft.sourceFileHashAlgorithm": "sha256",
            "microsoft.sourceFileHash": "YmFYwnEUddq2nZsBAn5v7gCRKdHx+TUntMz5tLwU+24="
          }
        }
      ],
      "downloadHandler": {
        "id": "microsoft/delta:1"
      }
    },
    "fileId1": {
      "filename": "microsoft.sensor.1.0.updatemanifest.json",
      "sizeInBytes": 2048,
      "hashes": {
        "sha256": "789s9PDfX4uA9wFUubyC30BWkLFbgmpkpmz1fEdqo2U="
      }
    }
  },
  "createdDateTime": "2021-09-28T18:32:01.8404544Z"
}