Multi-Assignments feature usage & experience
Dear hawkBit community,
I hope you're doing well!
I'm reaching out to ask if anyone is actively using the Multi-Assignments feature in hawkBit. We’re considering deprecating it, and it would be helpful to understand its current usage.
If you are using this feature, could you share your experience and how critical it is to your workflow? Any feedback would be greatly appreciated!
Looking forward to your insights. Thanks in advance for your help!
I'm working on implementing it now, because I need to use it for both updating a device's OS and backup software. From the user perspective, we want to reduce the number of times a user has to click "update device" by allowing the assignment of multiple at a time. From an architectural perspective, it's simpler to assign both and let them complete, than wait for the first update to complete successfully, then sending a second update.
I could package the OS and backup software together into one release (when they need to go out at the same time to reduce user interaction), but I haven't yet figured out how to set weights/force one to go prior to the other. If it were deprecated I'd have to get a little more creative.
@lizziemac Didn't quite get that. Is this related to your previous question regarding Ds Types ?
@strailov Yes, I updated my question here with how I'm using multi-assignment. TLDR, multi-assignment allows me to apply updates to a device in the order I want, at the same time. As a result, I can avoid needing to wait for one update to finish before applying the second update.
This makes it easier to do a first implementation of updating devices with multiple DSs. If multi-assignment is retired, I can still achieve the above, it will just require a bit more backend complexity to manage what to assign to the device when.
In that case, I guess it will be better if we leave the multi-assignments feature as it is.
@lizziemac, are you still using multi-assigments? We are about to finalized hawkbit 1.0 and still consider this feature as something we don't want to include into it. You haven't answer at on my question https://github.com/eclipse-hawkbit/hawkbit/issues/2153#issuecomment-2649919110. If you really need/want this, we could remove it from hawkbit, but try to make it still pluggable - so by extending hawkbit you could re-enable the behavior. If you need to assign X, Y, Z we assume you could do that with single assignment by:
- Install X on initial set
- Install Y on devices having X
- Install Z on having Y This should work with Dynamic rollouts and with auto-assigments
@lizziemac, it seems that you are the only one who have interest in that feature. Do you still use this feature. If so, could you answer the questions? Also, if you just need to have multiple actions at the same time - maybe you could get it with just having your DS with requiredMigrationStep=true. Then when you create then next action - this one won't be stopped.
As for now, I'd propose remove that feature from hawkbit.