Skip to content

Commit 0bd7f89

Browse files
committed
edits
1 parent 1b1273e commit 0bd7f89

File tree

5 files changed

+36
-35
lines changed

5 files changed

+36
-35
lines changed

articles/iot-hub-device-update/import-concepts.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Azure Device Update for IoT Hub import manifest concepts
33
description: Understand the important concepts and sections in the Azure Device Update for IoT Hub import manifest.
44
author: andrewbrownmsft
55
ms.author: andbrown
6-
ms.date: 01/02/2025
6+
ms.date: 01/03/2025
77
ms.topic: concept-article
88
ms.service: azure-iot-hub
99
ms.subservice: device-update

articles/iot-hub-device-update/import-schema.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,17 @@ title: Import manifest schema for Azure Device Update for IoT Hub
33
description: Understand the schema used to create the required import manifest for importing updates into Azure Device Update for IoT Hub.
44
author: andrewbrownmsft
55
ms.author: andbrown
6-
ms.date: 01/02/2025
6+
ms.date: 01/03/2025
77
ms.topic: concept-article
88
ms.service: azure-iot-hub
99
ms.subservice: device-update
1010
---
1111

1212
# Azure Device Update for IoT Hub import manifest schema
1313

14-
When you import an update into Azure Device Update for Iot Hub, you submit a JSON import manifest file along with the update payload that defines important information about the update. This article describes the schema used to create the JSON import manifest file.
14+
When you import an update into Azure Device Update for Iot Hub, you also submit an associated JSON import manifest file that defines important information about the update. This article describes the schema used to create the JSON import manifest file.
1515

16-
To learn more about import manifest concepts and file structure, see [Azure Device Update for IoT Hub import manifest](import-concepts.md). To learn how to create the file, see [Prepare an update to import into Device Update for IoT Hub](import-update.md).
16+
To learn more about import manifest concepts and file structure, see [Azure Device Update for IoT Hub import manifest concepts](import-concepts.md). To learn how to create the file, see [Prepare an update to import into Device Update for IoT Hub](import-update.md).
1717

1818
## Schema
1919

@@ -37,9 +37,9 @@ The `updateID` object is a unique identifier for each update.
3737

3838
|Property|Type|Description|Required|
3939
|---|---|---|---|
40-
|**provider**|`string`|Entity who is creating or directly responsible for the update. It can be a company name.<br><br>Pattern: `^[a-zA-Z0-9.-]+$`<br>Maximum length: 64 characters|Yes|
41-
|**name**|`string`|Identifier for a class of update. It can be a device class or model name.<br><br>Pattern: `^[a-zA-Z0-9.-]+$`<br>Maximum length: 64 characters|Yes|
42-
|**version**|`string`|Two- to four-part dot-separated numerical version numbers. Each part must be a number between 0 and 2147483647, and leading zeroes are dropped.<br><br>Pattern: `^\d+(?:\.\d+)+$`<br>Examples: `"1.0"`, `"2021.11.8"`|Yes|
40+
|**provider**|`string`|Entity who is creating or directly responsible for the update. It can be a company name.<br>Pattern: `^[a-zA-Z0-9.-]+$`<br>Maximum length: 64 characters|Yes|
41+
|**name**|`string`|Identifier for a class of update. It can be a device class or model name.<br>Pattern: `^[a-zA-Z0-9.-]+$`<br>Maximum length: 64 characters|Yes|
42+
|**version**|`string`|Two- to four-part dot-separated numerical version numbers. Each part must be a number between 0 and 2147483647, and leading zeroes are dropped.<br>Pattern: `^\d+(?:\.\d+)+$`<br>Examples: `"1.0"`, `"2021.11.8"`|Yes|
4343

4444
No other properties are allowed.
4545

@@ -57,7 +57,7 @@ For example:
5757

5858
### Compatibility object
5959

60-
The `compatibility` object describes 1-5 properties of a device that this update is compatible with. Each property is a name-value pair of type string. The name must be 1-32 characters long and the value must be 1-64 characters long. You can't use the same exact set of compatibility properties with more than one update provider and name combination.
60+
The `compatibility` object describes 1-5 properties of a device that this update is compatible with. Each property is a `string` type name-value pair. The name must be 1-32 characters long and the value must be 1-64 characters long. You can't use the same exact set of compatibility properties with more than one update provider and name combination.
6161

6262
For example:
6363

@@ -108,9 +108,9 @@ An `inline` step object is an installation instruction step that performs code e
108108
|Property|Type|Description|Required|
109109
|---|---|---|---|
110110
|**type**|`string`|Instruction step type that performs code execution. Must be `inline`.|No|
111-
|**description**|`string`|Optional instruction step description. Maximum length: 64 characters|No|
111+
|**description**|`string`|Optional instruction step description. Maximum length: 64 characters.|No|
112112
|**handler**|`string`|Identity of the handler on the device that can execute this step.<br>Pattern: `^\S+/\S+:\d{1,5}$`<br>Minimum length: Five characters<br>Maximum length: 32 characters<br>Examples: `microsoft/script:1`, `microsoft/swupdate:1`, `microsoft/apt:1` |Yes|
113-
|**files**|`string` `[1-10]`| Names of update files defined as [file objects](#file-object) that the agent passes to the handler. Each element length must be 1-255 characters. |Yes|
113+
|**files**|`string` `[1-10]`| Names of update files defined as [file objects](#files-object) that the agent passes to the handler. Each element length must be 1-255 characters. |Yes|
114114
|**handlerProperties**|`inlineStepHandlerProperties`|JSON objects that the agent passes to the handler as arguments.|No|
115115

116116
No other properties are allowed.
@@ -136,7 +136,7 @@ For example:
136136

137137
#### Reference step object
138138

139-
A *reference* step object is an installation instruction step that installs another update.
139+
A `reference` step object is an installation instruction step that installs another update.
140140

141141
|Property|Type|Description|Required|
142142
|---|---|---|---|
@@ -169,10 +169,10 @@ Each *file* object is an update payload file, such as a binary, firmware, or scr
169169

170170
|Property|Type|Description|Required|
171171
|---|---|---|---|
172-
|**filename**|`string`|Update payload file name. Maximum length: 255 characters|Yes|
173-
|**sizeInBytes**|`number`|File size in number of bytes. Maximum size: 2147483648 bytes|Yes|
172+
|**filename**|`string`|Update payload file name. Maximum length: 255 characters.|Yes|
173+
|**sizeInBytes**|`number`|File size in number of bytes. Maximum size: 2147483648 bytes.|Yes|
174174
|**hashes**|`fileHashes`|Base64-encoded file hashes with the algorithm name as key. For more information, see [fileHashes object](#filehashes-object). |Yes|
175-
|**relatedFiles**|`relatedFile[0-4]`|Collection of files related to one or more of your primary payload files. |No|
175+
|**relatedFiles**|`relatedFile[0-4]`|Collection of files related to one or more primary payload files. |No|
176176
|**downloadHandler**|`downloadHandler`|Specifies how to process any related files. |Yes if using `relatedFiles`|
177177

178178
No other properties are allowed.
@@ -193,7 +193,7 @@ For example:
193193

194194
#### fileHashes object
195195

196-
The `fileHashes` object contains base64-encoded file hashes with the algorithm names as keys. At least the SHA-256 algorithm must be specified, and other algorithms may be specified if supported by the agent. For an example of how to calculate the hash correctly, see the `Get-AduFileHashes` function in the [AduUpdate.psm1 script](https://github.com/Azure/iot-hub-device-update/blob/main/tools/AduCmdlets/AduUpdate.psm1).
196+
The `hashes` object contains base64-encoded file hashes with the algorithm names as keys. At least the SHA-256 algorithm must be specified, and other algorithms may be specified if supported by the agent. For an example of how to calculate the hash correctly, see the `Get-AduFileHashes` function in the [AduUpdate.psm1 script](https://github.com/Azure/iot-hub-device-update/blob/main/tools/AduCmdlets/AduUpdate.psm1).
197197

198198
|Property|Type|Description|Required|
199199
|---|---|---|---|
@@ -213,13 +213,13 @@ For example:
213213

214214
#### relatedFiles object
215215

216-
The `relatedFiles` object contains a collection of files that are related to one or more of your primary payload files. For more information, see [Use the related files feature to reference multiple update files](related-files.md).
216+
The `relatedFiles` object contains a collection of files that are related to one or more primary payload files. For more information, see [Use the related files feature to reference multiple update files](related-files.md).
217217

218218

219219
|Property|Type|Description|Required|
220220
|---|---|---|---|
221221
|**filename**|`string`|List of related files associated with a primary payload file.|Yes|
222-
|**sizeInBytes**|`number`|File size in number of bytes. Maximum size: 2147483648 bytes|Yes|
222+
|**sizeInBytes**|`number`|File size in number of bytes. Maximum size: 2147483648 bytes.|Yes|
223223
|**hashes**|`fileHashes`|Base64-encoded file hashes with algorithm name as key. For more information, see [fileHashes object](#filehashes-object). |Yes|
224224
|**properties**|`relatedFilesProperties` `[0-5]`|Up to five key-value pairs, where the key is limited to 64 ASCII characters and the value is a JObject with up to 256 ASCII characters. |No|
225225

articles/iot-hub-device-update/import-update.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ title: Import an update to Azure Device Update for IoT Hub
33
description: Learn how to import update files into Azure Device Update for IoT Hub by using the Azure portal, Azure CLI, or programmatically.
44
author: andrewbrownmsft
55
ms.author: andbrown
6-
ms.date: 01/02/2025
6+
ms.date: 01/03/2025
77
ms.topic: how-to
88
ms.service: azure-iot-hub
99
ms.subservice: device-update
1010
---
1111

1212
# Import an update to Azure Device Update for IoT Hub
1313

14-
To deploy an update to devices using Azure Device Update for IoT Hub, you first import the update files into the Device Update service, which stores the imported update and deploys it to devices. In this article, you learn how to import an update into the Device Update service by using the Azure portal, Azure CLI, or Device Update APIs.
14+
To deploy an update to devices using Azure Device Update for IoT Hub, you first import the update files into the Device Update service, which stores the imported update for deployment to devices. In this article, you learn how to import an update into the Device Update service by using the Azure portal, Azure CLI, or Device Update APIs.
1515

1616
## Prerequisites
1717

@@ -22,7 +22,7 @@ To deploy an update to devices using Azure Device Update for IoT Hub, you first
2222

2323
This section shows how to import an update using either the Azure portal or the Azure CLI. You can also [import an update by using the Device Update APIs](#import-using-the-device-update-apis) instead.
2424

25-
To import an update, you first upload the update files and import manifest into an Azure Storage container. Then, you import the update from Azure Storage into Device Update for IoT Hub, which stores for deployment to devices.
25+
To import an update, you first upload the update and import manifest files into an Azure Storage container. Then, you import the update from Azure Storage into Device Update for IoT Hub, which stores it for deployment to devices.
2626

2727
# [Azure portal](#tab/portal)
2828

@@ -46,15 +46,15 @@ To import an update, you first upload the update files and import manifest into
4646
:::image type="content" source="media/import-update/storage-account-ppr.png" alt-text="Screenshot that shows Storage accounts and Containers.":::
4747

4848
> [!TIP]
49-
> To avoid accidentally importing files from previous updates, use a new container each time you import an update. If you don't use a new container, be sure to delete any files from the existing container.
49+
> Using a new container each time you import an update helps prevent accidentally importing files from previous updates. If you don't use a new container, be sure to delete any previous files from the existing container.
5050
5151
1. On the container page, select **Upload**.
5252

53-
:::image type="content" source="media/import-update/container-ppr.png" alt-text="Screenshot that shows select Upload." lightbox="media/import-update/container-ppr.png":::
53+
:::image type="content" source="media/import-update/container-ppr.png" alt-text="Screenshot that shows select Upload.":::
5454

55-
1. On the **Upload blob** screen, select the folder icon next to the **Files**. Use the file picker to navigate to the location of your update files and import manifest, select the files, and then select **Open**. You can use the Shift key to multiselect files.
55+
1. On the **Upload blob** screen, select the folder icon next to the **Files**. Use the file picker to navigate to the location of your update and import manifest files, select the files, and then select **Open**. You can use the Shift key to multiselect files.
5656

57-
:::image type="content" source="media/import-update/container-picker-ppr.png" alt-text="Screenshot that shows selecting files to upload." lightbox="media/import-update/container-picker-ppr.png":::
57+
:::image type="content" source="media/import-update/container-picker-ppr.png" alt-text="Screenshot that shows selecting files to upload.":::
5858

5959
1. After you select all the files, select **Upload**.
6060

@@ -152,9 +152,9 @@ az iot du update list \
152152

153153
You can also import an update programmatically by using any of the following methods:
154154

155-
- The Device Update APIs in the Azure SDKs for [.NET](/dotnet/api/azure.iot.deviceupdate), [Java](/java/api/com.azure.iot.deviceupdate), [JavaScript](/javascript/api/@azure/iot-device-update), or [Python](/python/api/azure-mgmt-deviceupdate/azure.mgmt.deviceupdate).
156-
- The Device Update [Import Update](/rest/api/deviceupdate/dataplane/updates/import-update) REST API.
157-
- Sample [PowerShell modules](https://github.com/Azure/iot-hub-device-update/tree/main/tools/AduCmdlets) (requires [PowerShell 5](/powershell/scripting/install/installing-powershell) or later for Linux, macOS, or Windows).
155+
- The Device Update APIs in the Azure SDKs for [.NET](/dotnet/api/azure.iot.deviceupdate), [Java](/java/api/com.azure.iot.deviceupdate), [JavaScript](/javascript/api/@azure/iot-device-update), or [Python](/python/api/azure-mgmt-deviceupdate/azure.mgmt.deviceupdate)
156+
- The Device Update [Import Update](/rest/api/deviceupdate/dataplane/updates/import-update) REST API
157+
- Sample [PowerShell modules](https://github.com/Azure/iot-hub-device-update/tree/main/tools/AduCmdlets) (requires [PowerShell 5](/powershell/scripting/install/installing-powershell) or later for Linux, macOS, or Windows)
158158

159159
> [!NOTE]
160160
> See [Device Update user roles and access](device-update-control-access.md) for required API permission.
1.46 KB
Loading

articles/iot-hub-device-update/update-manifest.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
---
22
title: Azure Device Update for IoT Hub update manifest
3-
description: Learn how the Azure Device Update for IoT Hub service uses the update manifest to send properties to devices during updates.
3+
description: Learn about the update manifest that the Azure Device Update for IoT Hub service uses to send properties to devices during updates.
44
author: andrewbrownmsft
55
ms.author: andbrown
6-
ms.date: 01/02/2025
6+
ms.date: 01/03/2025
77
ms.topic: concept-article
88
ms.service: azure-iot-hub
99
ms.subservice: device-update
@@ -12,14 +12,16 @@ ms.subservice: device-update
1212

1313
# Azure Device Update for IoT Hub update manifest
1414

15-
This article describes the *update manifest* data that Azure Device Update for IoT Hub sends to devices during update deployment. The update manifest is a serialized JSON object string containing metadata about the update to install. Device Update uses [IoT Plug and Play](device-update-plug-and-play.md) to send the update manifest, and cryptographically signs it so that the Device Update agent can verify its authenticity. For more information about how the update manifest is used to securely install content, see [Device Update security](./device-update-security.md).
15+
This article describes the *update manifest* data that Azure Device Update for IoT Hub sends to devices during update deployment. The update manifest is a serialized JSON string object containing metadata about the update to install.
16+
17+
Device Update uses [IoT Plug and Play](device-update-plug-and-play.md) to send the update manifest, and cryptographically signs it so that the Device Update agent can verify its authenticity. For more information about how the update manifest is used to securely install content, see [Device Update security](device-update-security.md).
1618

1719
## Import manifest vs update manifest
1820

19-
The update manifest is different from the Device Update *import manifest* file.
21+
The update manifest is different from the Device Update *import manifest*.
2022

21-
- The [import manifest](import-concepts.md), which describes the contents of the update to import into Device Update, is created and imported by whoever creates the corresponding update for Device Update.
22-
- The update manifest is automatically generated by the Device Update service, using some of the same properties defined in the import manifest, to communicate information to the Device Update agent during the update process.
23+
- The [import manifest](import-concepts.md) is a JSON file that describes the update to import into Device Update. Whoever creates the update for Device Update creates the corresponding import manifest file.
24+
- The update manifest is a JSON string object that communicates information to the Device Update agent during an update. The Device Update service automatically generates the update manifest by using some of the same properties defined in the import manifest.
2325

2426
Each manifest type has its own schema and schema version. For more information about the import manifest schema, see [Device Update import manifest schema](import-schema.md).
2527

@@ -95,8 +97,7 @@ The following example shows a mini update manifest:
9597
}
9698
}
9799
```
100+
98101
## Related content
99102
- [Device Update import manifest concepts](import-concepts.md)
100103
- [Device Update import manifest schema](import-schema.md)
101-
- [Prepare an update to import into Device Update](create-update.md)
102-
- [Import an update into Device Update](import-update.md)

0 commit comments

Comments
 (0)