Docs theme updates (#2971)

* Update architecture diagram and theme colors

* Update state and proxy diagrams
This commit is contained in:
Desislava Marinova
2026-03-24 08:30:57 +02:00
committed by GitHub
parent 2f2a52485a
commit b961ae133f
14 changed files with 129 additions and 107 deletions

View File

@@ -455,7 +455,7 @@ Authorization: GatewayToken mySecureToken987654321
| **Pre-assignment** | Possible before device connects | Only after first poll |
| **Scalability** | Manual or scripted bulk creation | Automatic, scales infinitely |
| **Device Attributes** | Must be set via separate request | Device sends on first connection |
| **Audit Trail** | `createdBy: admin` | `createdBy: system` |
| **Audit Trail** | createdBy: admin | createdBy: system |
---

View File

@@ -22,16 +22,16 @@ It is possible that in the future hawkBit will fully leverage these additional s
The *DDI* API allows the device to provide the following feedback messages:
| **DDI `status.execution` type** | **Handling by update server** | **Mapped ActionStatus type** |
|--------------------------------|--------------------------------|-------------------------------|
| CANCELED | This is sent by the target as confirmation of a cancellation request by the update server. | CANCELED |
| REJECTED | This is sent by the target in case an update or cancellation is rejected, i.e. cannot be fulfilled at this point in time. Note: the target should send a CLOSED→ERROR if it believes it will not be able to proceed the action at all. | WARNING |
| CLOSED | Target completes the action either with [`status.result.finished`](../status-result-finished.md) SUCCESS or FAILURE as result. Note: DDI defines also a status NONE which will not be interpreted by the update server and handled like SUCCESS. | **ERROR** (DDI FAILURE) or **FINISHED** (DDI SUCCESS or NONE) |
| DOWNLOAD | This can be used by the target to inform that it is downloading artifacts of the action. | DOWNLOAD |
| DOWNLOADED | This can be used by the target to inform that it has downloaded artifacts of the action. | DOWNLOADED |
| PROCEEDING | This can be used by the target to inform that it is working on the action. | RUNNING |
| SCHEDULED | This can be used by the target to inform that it scheduled the action. | RUNNING |
| RESUMED | This can be used by the target to inform that it continued to work on the action. | RUNNING |
| DDI status.execution type | Handling by update server | Mapped ActionStatus type |
|-------------------------------|----------------------------|---------------------------------------------------------------|
| CANCELED | This is sent by the target as confirmation of a cancellation request by the update server. | CANCELED |
| REJECTED | This is sent by the target in case an update or cancellation is rejected, i.e. cannot be fulfilled at this point in time. Note: the target should send a CLOSED→ERROR if it believes it will not be able to proceed the action at all. | WARNING |
| CLOSED | Target completes the action either with **status.result.finished** SUCCESS or FAILURE as result. Note: DDI defines also a status NONE which will not be interpreted by the update server and handled like SUCCESS. | **ERROR** (DDI FAILURE) or **FINISHED** (DDI SUCCESS or NONE) |
| DOWNLOAD | This can be used by the target to inform that it is downloading artifacts of the action. | DOWNLOAD |
| DOWNLOADED | This can be used by the target to inform that it has downloaded artifacts of the action. | DOWNLOADED |
| PROCEEDING | This can be used by the target to inform that it is working on the action. | RUNNING |
| SCHEDULED | This can be used by the target to inform that it scheduled the action. | RUNNING |
| RESUMED | This can be used by the target to inform that it continued to work on the action. | RUNNING |
---

View File

@@ -6,28 +6,28 @@ Targets represent devices or software instances that can receive software update
**Filterable/Sortable Fields:**
| Field | Description | Type |
|------------------------------------|----------------------------------------------------------------------|------|
| `controllerId` | Unique identifier of the target | String |
| `name` | Display name | String |
| `description` | Description text | String |
| `updateStatus` | Current update status (UNKNOWN, IN_SYNC, PENDING, ERROR, REGISTERED) | Enum |
| `address` | IP address or URI | String |
| `lastTargetQuery` | Last time the target polled (timestamp in ms) | Long |
| `createdAt` | Creation timestamp | Long |
| `createdBy` | Creator username | String |
| `lastModifiedAt` | Last modification timestamp | Long |
| `lastModifiedBy` | Last modifier username | String |
| `assignedDistributionSet.name` | Name of assigned distribution set | String |
| `assignedDistributionSet.version` | Version of assigned distribution set | String |
| `installedDistributionSet.name` | Name of installed distribution set | String |
| `installedDistributionSet.version` | Version of installed distribution set | String |
| `targetType.key` | Target type key | String |
| `targetType.name` | Target type name | String |
| `tags.name` | Tag name | String |
| `group` | Group name | String |
| `metadata.<key>` | Metadata value by key | String |
| `controllerAttributes.<key>` | Controller attribute by key | String |
| Field | Description | Type |
|----------------------------------|----------------------------------------------------------------------|------|
| controllerId | Unique identifier of the target | String |
| name | Display name | String |
| description | Description text | String |
| updateStatus | Current update status (UNKNOWN, IN_SYNC, PENDING, ERROR, REGISTERED) | Enum |
| address | IP address or URI | String |
| lastTargetQuery | Last time the target polled (timestamp in ms) | Long |
| createdAt | Creation timestamp | Long |
| createdBy | Creator username | String |
| lastModifiedAt | Last modification timestamp | Long |
| lastModifiedBy | Last modifier username | String |
| assignedDistributionSet.name | Name of assigned distribution set | String |
| assignedDistributionSet.version | Version of assigned distribution set | String |
| installedDistributionSet.name | Name of installed distribution set | String |
| installedDistributionSet.version | Version of installed distribution set | String |
| targetType.key | Target type key | String |
| targetType.name | Target type name | String |
| tags.name | Tag name | String |
| group | Group name | String |
| metadata.<key> | Metadata value by key | String |
| controllerAttributes.<key> | Controller attribute by key | String |
**Example Queries:**
```
@@ -63,20 +63,20 @@ Distribution Sets are collections of software modules that can be deployed to ta
| Field | Description | Type |
|-------|-------------|------|
| `id` | Unique identifier | Long |
| `name` | Distribution set name | String |
| `version` | Version string | String |
| `description` | Description text | String |
| `type.key` | Distribution set type key | String |
| `type.name` | Distribution set type name | String |
| `valid` | Whether the DS is valid for deployment | Boolean |
| `createdAt` | Creation timestamp | Long |
| `createdBy` | Creator username | String |
| `lastModifiedAt` | Last modification timestamp | Long |
| `lastModifiedBy` | Last modifier username | String |
| `tags.name` | Tag name | String |
| `modules.name` | Software module name | String |
| `metadata.<key>` | Metadata value by key | String |
| id | Unique identifier | Long |
| name | Distribution set name | String |
| version | Version string | String |
| description | Description text | String |
| type.key | Distribution set type key | String |
| type.name | Distribution set type name | String |
| valid | Whether the DS is valid for deployment | Boolean |
| createdAt | Creation timestamp | Long |
| createdBy | Creator username | String |
| lastModifiedAt | Last modification timestamp | Long |
| lastModifiedBy | Last modifier username | String |
| tags.name | Tag name | String |
| modules.name | Software module name | String |
| metadata.<key> | Metadata value by key | String |
**Example Queries:**
```
@@ -106,18 +106,18 @@ Rollouts are used to deploy software to groups of targets in a controlled manner
| Field | Description | Type |
|-------|-------------|------|
| `id` | Unique identifier | Long |
| `name` | Rollout name | String |
| `description` | Description text | String |
| `status` | Rollout status (CREATING, READY, PAUSED, STARTING, RUNNING, FINISHED, etc.) | Enum |
| `distributionSet.id` | Distribution set ID | Long |
| `distributionSet.name` | Distribution set name | String |
| `distributionSet.version` | Distribution set version | String |
| `distributionSet.type` | Distribution set type | String |
| `createdAt` | Creation timestamp | Long |
| `createdBy` | Creator username | String |
| `lastModifiedAt` | Last modification timestamp | Long |
| `lastModifiedBy` | Last modifier username | String |
| id | Unique identifier | Long |
| name | Rollout name | String |
| description | Description text | String |
| status | Rollout status (CREATING, READY, PAUSED, STARTING, RUNNING, FINISHED, etc.) | Enum |
| distributionSet.id | Distribution set ID | Long |
| distributionSet.name | Distribution set name | String |
| distributionSet.version | Distribution set version | String |
| distributionSet.type | Distribution set type | String |
| createdAt | Creation timestamp | Long |
| createdBy | Creator username | String |
| lastModifiedAt | Last modification timestamp | Long |
| lastModifiedBy | Last modifier username | String |
**Example Queries:**
```
@@ -144,26 +144,26 @@ Actions represent deployment operations assigned to targets.
| Field | Description | Type |
|-------|-------------|------|
| `id` | Unique identifier | Long |
| `status` | Action status (SCHEDULED, RUNNING, FINISHED, ERROR, CANCELED, etc.) | Enum |
| `active` | Whether the action is currently active | Boolean |
| `weight` | Priority weight (0-1000) | Integer |
| `lastActionStatusCode` | Last status code reported | Integer |
| `externalRef` | External reference string | String |
| `target.controllerId` | Target controller ID | String |
| `target.name` | Target name | String |
| `target.updateStatus` | Target update status | Enum |
| `distributionSet.id` | Distribution set ID | Long |
| `distributionSet.name` | Distribution set name | String |
| `distributionSet.version` | Distribution set version | String |
| `rollout.id` | Rollout ID | Long |
| `rollout.name` | Rollout name | String |
| `rolloutGroup.id` | Rollout group ID | Long |
| `rolloutGroup.name` | Rollout group name | String |
| `createdAt` | Creation timestamp | Long |
| `createdBy` | Creator username | String |
| `lastModifiedAt` | Last modification timestamp | Long |
| `lastModifiedBy` | Last modifier username | String |
| id | Unique identifier | Long |
| status | Action status (SCHEDULED, RUNNING, FINISHED, ERROR, CANCELED, etc.) | Enum |
| active | Whether the action is currently active | Boolean |
| weight | Priority weight (0-1000) | Integer |
| lastActionStatusCode | Last status code reported | Integer |
| externalRef | External reference string | String |
| target.controllerId | Target controller ID | String |
| target.name | Target name | String |
| target.updateStatus | Target update status | Enum |
| distributionSet.id | Distribution set ID | Long |
| distributionSet.name | Distribution set name | String |
| distributionSet.version | Distribution set version | String |
| rollout.id | Rollout ID | Long |
| rollout.name | Rollout name | String |
| rolloutGroup.id | Rollout group ID | Long |
| rolloutGroup.name | Rollout group name | String |
| createdAt | Creation timestamp | Long |
| createdBy | Creator username | String |
| lastModifiedAt | Last modification timestamp | Long |
| lastModifiedBy | Last modifier username | String |
**Example Queries:**
```
@@ -199,17 +199,17 @@ Software Modules are individual software components that make up distribution se
| Field | Description | Type |
|-------|-------------|------|
| `id` | Unique identifier | Long |
| `name` | Module name | String |
| `version` | Version string | String |
| `description` | Description text | String |
| `type.key` | Software module type key | String |
| `type.name` | Software module type name | String |
| `createdAt` | Creation timestamp | Long |
| `createdBy` | Creator username | String |
| `lastModifiedAt` | Last modification timestamp | Long |
| `lastModifiedBy` | Last modifier username | String |
| `metadata.<key>` | Metadata value by key | String |
| id | Unique identifier | Long |
| name | Module name | String |
| version | Version string | String |
| description | Description text | String |
| type.key | Software module type key | String |
| type.name | Software module type name | String |
| createdAt | Creation timestamp | Long |
| createdBy | Creator username | String |
| lastModifiedAt | Last modification timestamp | Long |
| lastModifiedBy | Last modifier username | String |
| metadata.<key> | Metadata value by key | String |
**Example Queries:**
```
@@ -236,14 +236,14 @@ Target Filter Queries define RSQL filters for grouping targets, used for rollout
| Field | Description | Type |
|-------|-------------|------|
| `id` | Unique identifier | Long |
| `name` | Filter name | String |
| `autoAssignDistributionSet.name` | Auto-assign DS name | String |
| `autoAssignDistributionSet.version` | Auto-assign DS version | String |
| `createdAt` | Creation timestamp | Long |
| `createdBy` | Creator username | String |
| `lastModifiedAt` | Last modification timestamp | Long |
| `lastModifiedBy` | Last modifier username | String |
| id | Unique identifier | Long |
| name | Filter name | String |
| autoAssignDistributionSet.name | Auto-assign DS name | String |
| autoAssignDistributionSet.version | Auto-assign DS version | String |
| createdAt | Creation timestamp | Long |
| createdBy | Creator username | String |
| lastModifiedAt | Last modification timestamp | Long |
| lastModifiedBy | Last modifier username | String |
**Example Queries:**
```

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 404 KiB

After

Width:  |  Height:  |  Size: 271 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 916 KiB

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 295 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 269 KiB

After

Width:  |  Height:  |  Size: 248 KiB

View File

@@ -74,7 +74,7 @@ SPDX-License-Identifier: EPL-2.0
<style>
body, input {
background-color: #f0eeea;
background-color: #F0EEEA;
}
.sidebar-sep {
@@ -96,6 +96,22 @@ SPDX-License-Identifier: EPL-2.0
font-weight: 700;
}
thead tr {
background-color: #015585;
color: #f0eeea;
}
tbody tr:nth-child(odd) {
background-color: #9abfdf;
}
tbody tr:nth-child(even) {
background-color: #ffffff;
}
.markdown-section code,.markdown-section pre {
background-color: #f8f8f8;
}
</style>
<style>

View File

@@ -47,13 +47,13 @@ The cascading execution of the deployment groups is based on two thresholds that
### State Machine on Rollout
<p align="center">
<img src="images/rollout-state-machine.png" alt="Clustering Diagram" width="1200"/>
<p>
<img src="images/rollout-state-machine.png" alt="Rollout state machine diagram" width="1200"/>
</p>
### State Machine on Rollout Deployment Group
<p align="center">
<img src="images/deploymnet-group-state-machine.png" alt="Clustering Diagram" width="1200"/>
</p>
---
<p>
<img src="images/deploymnet-group-state-machine.png" alt="Deployment group state machine diagram" width="1200"/>
</p>

View File

@@ -16,6 +16,6 @@ provisioning".
| REGISTERED | Target registered at the update server but no _Distribution Set_ assigned. Is the initial starting point for plug-and-play devices. |
## Transitions
<p align="center">
<img src="images/targetStatusStates.png" alt="Clustering Diagram" width="1100"/>
<p>
<img src="images/targetStatusStates.png" alt="Clustering Diagram" width="800"/>
</p>