Context: I am trying to use Mender to apply delta updates on a device that’s running, let’s say, software v 1.0 that was installed via a mender artifact. However, I am getting an error that’s along the lines of:
Artifact dependency "rootfs-image.checksum" not satisfied by currently installed artifact (b4ac741b018f28bec9538c4ba87cc18fcf2201b03d9eb2d0e5cf7b8bd9ff7df3 != <nil>).
Upon further inspection with mender-artifact read artifact_v1.0.mender
:
Reading Artifact...
.............................................................. - 100 %
Mender artifact:
Name: v1.0 artifact
Format: mender
Version: 2
Signature: no signature
Compatible devices: '[our_device]'
State scripts:
ArtifactInstall_Leave_80_bl-update
Updates:
0:
Type: rootfs-image
Provides: Nothing
Depends: Nothing
Metadata: Nothing
Files:
name: our_v1.0_software.ext4
size: 12992905216
modified: 2023-02-10 23:24:35 +0000 UTC
checksum: b4ac741b018f28bec9538c4ba87cc18fcf2201b03d9eb2d0e5cf7b8bd9ff7df3
The Provides: Nothing
field concerns me since it might be the cause of the error above and because the documentation specifies that the rootfs-image
artifcat should have a provides field matching the delta artifact’s depends.
+-------------------------------+
|Type: rootfs-image |
|Version: v1 |
|Checksum: 5bb84175 |
| |
|Provides |
|rootfs-image.checksum: 5bb84175| -> matches the Depends for the delta
+-------------------------------+
I’ve tried mender-artifact modify --provides rootfs-image.checksum: b4ac741b018f28bec9538c4ba87cc18fcf2201b03d9eb2d0e5cf7b8bd9ff7df3 artifact_v1.0.mender
to no avail. The Provides
field is still empty. How can I get this provides field to show up in the rootfs-image
artifact?