* Added initial version of DOWNLOAD_ONLY * Added DOWNLOAD_ONLY option to ActionTypeOptionGroupLayout * Removed DOWNLOAD_ONLY checkbox, added Download Only UI option * Mark actions that finished with DOWNLOADED as finished * initial changes to realize downoadOnly in UI * Changed method of disabling maintenanceWindow into smarter solution * Added new icon for download only option * Set DistributionSet as unassigned when DOWNLOAD_ONLY * Enabled update action status for DOWNLOAD_ONLY after download * Current state of abstraction task * Assign DistributionSet to target if target installs it after downloading * Abstracted class redundant methods * Added tests * Fixed Rollout finish status for DWONLOAD_ONLY Rollouts * Added Rollout type json property in test documentation * Added DOWNLOAD_ONLY test for target assignment * Added event listener also to DistributionTable * Fixed event listener problem * Change column name to "Type" and added also DownloadOnly icon to that column. * Cleanup * Center aligned the icons in type column * Fixed DistributionSet already assigned but not installed * Rename download_only to downloadonly * Further changes regarding center aligned the icons * Fixed target assign status in Rollout view when download_only * Fixed SonarQube issues * Fixed SonarQube issues + code formatting * Fixed Tests * Marked squid:S128 as suppressed - irrelevant * Adapting rollouts view by additional column (not finished by now) * Putted type column on proper position * Trying to display icons in new type column in rollouts view * Added icon also for soft, icon might change -> just change * createOptionGroup method in ActionTypeOptionGroupLayout class * added first draft of type column in rollouts view * increase visibility of sendUpdateMessageToTarget method * Ground functionality of new type column in deployment view is now implemented * Type column implementation in rollouts view is finished for now * Rebased on master * Fixed DurationControl change on ScheduleControl change. * (Re)Added Soft deployment Icon * Fixed SonarQube issues * Fixed SonarQube issues * Fixed failing test * Fixes + added missing header * Added message to the fail() instruction * Fixed copyright header * Apply suggestions from code review * Fixed TotalTargetCountStatus.java * Removed unused method from TotalTargetCountStatus.java * add id to rollout create and update UI popup * Added download_only tests for MgmtTargetResourceTest.java * added missing header in TotalTargetCountStatusTest.java * Rename because of newest changes * added Download_Only dmf integration tests * Renamed MgmtAction.forcedType to actionType * renamed actionType to forceType for Mgmt API * added missing javadocs for public methods * Added Download Only support for AutoAssignment Signed-off-by: Ahmed Sayed <ahmed.sayed@bosch-si.com> Signed-off-by: Ammar Bikic <ammar.bikic@bosch-si.com>
151 lines
7.6 KiB
Markdown
151 lines
7.6 KiB
Markdown
---
|
||
title: Management UI
|
||
weight: 70
|
||
---
|
||
|
||
The hawkBit Management UI provides several views for the different use cases:
|
||
|
||
- _Deployment Management_ view for target administration and manual deployment.
|
||
- _Distribution Management_ view software repository metadata management.
|
||
- _Artifact Management_ view to manage the artifacts.
|
||
- _Target Filter Management_ view to manage target filters that can be used both in Deployment and Rollout Management views.
|
||
- _Rollout Management_ for large scale rollout orchestration.
|
||
|
||
## Deployment Management
|
||
|
||
### Purpose
|
||
|
||
Target status overview, target management and manual deployments.
|
||
|
||
### Feature explained
|
||
- Target Status: check status of all targets.
|
||
- Target list allows filters based on:
|
||
- Assigned/installed _DistributionSet_ (drag and drop a set on the filter icon on the top of the list)
|
||
- Target update status: click 1-X status to reduce the list of targets that have one of them.
|
||
- Target tag: click 1-X tags to reduce the list to targets that have one of them.
|
||
- Name, description: use search button on the top of the list.
|
||
|
||
- _DistributionSet_ list allows filters based on:
|
||
- _DistributionSet_ tag: click 1-X tags to reduce the list of sets that have one of them.
|
||
- Name, description: use search button on the top of the list.
|
||
|
||
- Start roll out by drag and drop targets on a DS.
|
||
- Target list supports CTRL-A for "select all".
|
||
- Delete sets, tags or targets by dragging them on delete icon.
|
||
- Select _Target_ to see _Action_ History.
|
||
- Bulk target upload: create bulk targets by upload.
|
||
|
||
|
||
Hints for bulk upload:
|
||
- Expected file type : csv.
|
||
- Expected file format : Each line with two values (ControllerID,Target Name). ControllerID is mandatory.
|
||
- Example:
|
||
```
|
||
Controller_id_1,targetName1
|
||
Controller_id_2,targetName2
|
||
```
|
||
|
||

|
||
|
||
## Distribution Management
|
||
|
||
### Purpose
|
||
|
||
Distribution Set view to manage software repository metadata, i.e. Distribution Sets, their Software Modules and the respective types.
|
||
|
||
### Features explained
|
||
- Browse, create, delete and update Distribution Sets.
|
||
- Browse, create, delete and update Distribution Set Types.
|
||
- Browse, create, delete and update Software Modules.
|
||
- Browse, create, delete and update Software Module Types.
|
||
- Assign Software Modules to Distribution Sets.
|
||
|
||

|
||
|
||
## Artifact Management
|
||
|
||
### Purpose
|
||
Software artifact management, both metadata (i.e. Software Modules) and artifacts themselves.
|
||
|
||
### Features explained
|
||
- Browse, create, delete and update Software Modules.
|
||
- Browse, create, delete and update Software Module Types.
|
||
- Upload and delete software artifacts for a module.
|
||
|
||

|
||
|
||
## Rollout Management
|
||
|
||
### Purpose
|
||
Software rollout in large scale, rollout status overview and rollout management.
|
||
|
||
### Features explained
|
||
- Create, update, copy and delete of rollouts.
|
||
- Start, pause and resume of rollouts.
|
||
- Progress monitoring for the entire rollout and the individual groups.
|
||
- Drill down to see the groups in a rollout and targets in each group.
|
||
- Rollout attributes:
|
||
- Selection of targets as input for the rollout based on _target filter_
|
||
- Selection of _distribution set_
|
||
- Auto-splitting of the input target list based on _group number_ defined
|
||
- _Trigger threshold_ to define the percentage of installation to be completed , to trigger the start of next group
|
||
- _Error threshold_ defines the percentage of error tolerance of a group before calling for a emergency shutdown of a rollout
|
||
|
||

|
||
|
||

|
||
|
||
{{% note %}}
|
||
Deletion of targets which are in a rollout, changes the rollout statistics.
|
||
{{% /note %}}
|
||
|
||
## Target Filter Management
|
||
|
||
### Purpose
|
||
Custom target filter overview and filter management.
|
||
|
||
### Features explained
|
||
- Custom target filter allows user to filter targets by defining custom query.
|
||
- Displays custom target filter list and user can search any particular filter.
|
||
- Create, update and delete features are supported for target filters.
|
||
- Auto assignment of a distribution set to filtered targets.
|
||
|
||
### How to Filter
|
||
The basic syntax to filter is: `field<basic_operator>value <composite_operator> field<basic_operator>value <...>`
|
||
|
||
- `field`: is the name of the resource field.
|
||
- `value`: is the value of the target field
|
||
- `<basic_operator>`: Are operators to do simple queries. Supported basic operators are:
|
||
- `==` : equal
|
||
- `!=` : not equal
|
||
- Use `=IN=` for 'in' parameter.(Example: name=IN=(target1,target2).
|
||
- `<composite_operator>`: Are operators to join simple queries: Supported composite operators are:
|
||
- `and`
|
||
- `or`
|
||
- Use `=IN=` for 'in' parameter.(Example: name=IN=(target1,target2).
|
||
- Use `*` for wildcard matches.
|
||
|
||
### Examples
|
||
|
||
Custom query | Description
|
||
------------------------------------------------------------------------------------------ | -----------------------------------------------------------------------------------------------------------------------------------------------------
|
||
updatestatus==error | Gives all targets in ‘error’ state.
|
||
controllerId!=192.168.2.42 | Gives all targets that do not have the controllerId 192.168.2.42.
|
||
name==\*CCU\* | Gives all targets which contain the term ‘CCU’ in there name.
|
||
name==\*CCU\* or description==\*CCU\* | Gives all targets that either have the term ‘CCU’ in their name or their description.
|
||
name==\*SHC\* and description==\*SHC\* | Gives all targets that have the term SHC in their name and their description.
|
||
name==CCU* and updatestatus==pending | Gives all targets with their name starting with ‘CCU’ and which are in ‘pending’ state.
|
||
(assignedds.name==‘ECU-DS’ and description==test) or updatestatus!=error | Gives all targets which are either assigned to ‘ECU-DS’ and have description equals to ‘test’ or which are not in error status.
|
||
(updatestatus!=In\_sync or updatestatus!=error) and name==\*SHC1\* | Gives all targets that do not have the update status In\_sync or error and that contains the term SHC1 in their name.
|
||
(updatestatus!=error or updatestatus!=pending) and (name==\*CCU\* or description==\*CCU\*) | Gives all targets that either have the term ‘CCU’ in their name or their description and that either have the _update status_ not in state error or pending.
|
||
|
||

|
||
|
||
### Auto assignment
|
||
It is possible to assign some distribution set with different action types (_forced_, _soft_, or _download only_) to all targets that belong to the corresponding custom target filter, including the ones, that are registered later on.
|
||
|
||
In order to activate the auto-assignment, one should first click on _Auto assignment_ cell in Custom Filters table, and then check the corresponding checkbox. After that, the action type and distribution set for auto-assignment should be selected and confirmed.
|
||
|
||
As long as the auto-assignment stays active, the scheduler will try to assign selected distribution set to corresponding custom filter targets, that have never seen it before.
|
||
|
||
 |