Closed reubenmiller closed 1 year ago
Subtasks:
root.topic
and device.topic
to tedge config The following plugins have been migrated to a generic implementation with no cloud-specific logic:
The system tests have been updated to use the these new plugins.
QA has thoroughly checked the feature and here are the results:
Is your feature request related to a problem? Please describe.
The following plugins assume that the cloud backend is Cumulocity IoT.
c8y-log-plugin
c8y-configuration-plugin
It would be very beneficial (and a cleaner overall design) if all cloud specific logic was moved out of the plugins and to the associated mappers. This would leave a plugin that could be usable for different clouds. A good reference is the Software Management feature in the
tedge-agent
which providestedge/commands
topics to handle requests and responses related software management in a cloud agnostic manner.Describe the solution you'd like
The following points should be covered:
c8y-*
) to the mapperc8y-*
plugins totedge-*
once all cloud specific logic has been moved. Ignore the c8y-firmware-plugin as it will be migrated at a later point in time.Describe alternatives you've considered
Additional context
One specific challenged that will need to be addressed is how to handle cloud specific HTTP downloads/uploads. As this generally requires a cloud specific authorization. The actual implementation of a cloud specific downloader/uploader could be implemented in a different issue/PR and then used by this issue.
This is also related to the topic of subscribing to Cumulocity JSON operations via the devicecontrol/notifications #1718 topic which sends the operations as JSON instead of Cumulocity SmartREST.
Subtasks
root.topic
anddevice.topic
to tedge config https://github.com/thin-edge/thin-edge.io/pull/2231tedge-firmware-plugin-> Postpone, as it needs more refinement how to support firmware installation itself (exact command to install firmware, reboot, ...)