Entity soft deletion
Table of contents:
Bosch IoT Rollouts ensures the completeness of a device’s software update history. Therefore, some data entities still need to be persisted even though they got deleted by the user. The delete process which is performed when there are historical dependencies to a device is called soft-delete.
This process marks an entity as deleted and removes everything from the entity that is not needed for the update history, but it won’t delete the entity itself.
Entities which are marked as deleted won’t be visible to the user.
Note: if there are soft-deleted entities, it is not possible to create new entities with the same name.
In case there are no dependencies to a device’s software update history the server performs a hard-delete. This process deletes all persistent data of an entity.
Soft-deletion has impact on the following data models:
Distribution Sets
Deleting a Distribution Set is handled by Bosch IoT Rollouts as follows:
Deleting a Distribution Set that is not assigned to a Target, will hard-delete the Distribution Set.
Deleting a Distribution Set that is assigned to a Target via a single assignment or a rollout, will soft-delete this Distribution Set. Such a Distribution Set cannot be hard-deleted, because already triggered Actions reference this distribution.
Distribution Set Type
Deleting a Distribution Set Type, that is used for a Distribution Set, is handled by Bosch IoT Rollouts as follows:
Deleting a used Distribution Set Type will only soft-delete this type. To hard-delete a Distribution Set Type, all Distribution Sets based on this type must be hard-deleted first.
Deleting a Distribution Set Type, used by a soft-deleted Distribution Set, will soft-delete this type.
Software Modules
Deleting a Software Module of a Distribution Set is handled by Bosch IoT Rollouts as follows:
Deleting a Software Module of an unassigned Distribution Set(s) will soft-delete this module. To hard-delete a Software Module, all Distribution Sets containing the Software Module must either be hard-deleted first, or the Software Module must be removed from all Distribution Sets (see screenshot below).
Deleting a Software Module of an assigned Distribution Set(s) will soft-delete this module. Such a Software Module cannot be hard-deleted, because already triggered Actions reference this Software Module.
Deleting a Software Module, referenced by a soft-deleted Distribution Set, will soft-delete it.
If a Software Module is soft-deleted, its uploaded Artifacts will be deleted from the artifact repository.
Software Module Type
Deleting a Software Module Type, that is used for a Software Module or a Distribution Set Type, is handled by Bosch IoT Rollouts as follows:
Deleting a used Software Module Type will only soft-delete this type. To hard-delete a Software Module Type, all entities using this type must be hard-deleted first.
Deleting a Software Module Type, used by a soft-deleted Software Module, will soft-delete it.
Deleting a Software Module Type, used by a soft-deleted Distribution Set Type, will soft-delete it.
Target
Deleting a Target will hard-delete the entity and all references to other entities will be removed.
Target Type
Deleting a Target Type will hard-delete the type. It is not possible to delete a Target Type if it is referenced by a Target.
If a Distribution Set Type is deleted, it will be unassigned from all Target Types that had this Distribution Set Type listed as compatible.