Mender update fails: UTC error: Fetching Artifact headers failed: installer: failed to read Artifact: readHeaderV3: handleHeaderReads: Artifact Payload type 'rootfs-image' is not supported by this Mender Client

Hello Mender Community:
I successfully created mender artifact for raspberry PI 4B bullseye Lite based image.
On hosted mender, while trying to update with the mender-ized version of the
same image, I get the following error, here is the Deployment log for device:
"
2022-09-12 10:59:17 +0000 UTC info: Running Mender client version: 3.3.0 2022-09-12 10:59:18 +0000 UTC info: State transition: update-fetch [Download_Enter] → update-store [Download_Enter] 2022-09-12 10:59:19 +0000 UTC info: No public key was provided for authenticating the artifact 2022-09-12 10:59:19 +0000 UTC error: Fetching Artifact headers failed: installer: failed to read Artifact: readHeaderV3: handleHeaderReads: Artifact Payload type ‘rootfs-image’ is not supported by this Mender Client. Ensure that the Mender Client is fully integrated and that the RootfsPartA/B configuration variables are set correctly in ‘mender.conf’ 2022-09-12 10:59:19 +0000 UTC info: State transition: update-store [Download_Enter] → update-status-report [none]"

Here is the mender.conf file from the device:

“sudo cat /etc/mender/mender.conf
{
“HttpsClient”: {},
“Security”: {},
“Connectivity”: {},
“DeviceTypeFile”: “/var/lib/mender/device_type”,
“DBus”: {
“Enabled”: true
},
“UpdateControlMapExpirationTimeSeconds”: 90,
“UpdateControlMapBootExpirationTimeSeconds”: 45,
“UpdatePollIntervalSeconds”: 5,
“InventoryPollIntervalSeconds”: 5,
“RetryPollIntervalSeconds”: 30,
“TenantToken”: “eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJtZW5kZXIudGVuYW50IjoiNWVmNDA3ZWY2YTJmOTRiZTkzNmEyMDJkIiwiaXNzIjoiTWVuZGVyIiwic3ViIjoiNWVmNDA3ZWY2YTJmOTRiZTkzNmEyMDJkIn0.beIBizyJ46c2Ec5Y6DMEokeSTdMjj8ThgK526SwM03weuztnD74pH1DqOMgzPLAst40n7TWGCwJg6l5ODYs30je_DcIfnq4M0kei1mGIK0-hx2FgigHLeS7JAi1dbu474KGonjET85DiOfWk1Pg9LkYIFbGAfmHX8YB9dFsNudGW0hVA248J-aUtb6GiYaQHj4RLyLNXbuM9Ggd5Y0grRXQHDiJ-5gmQbJoD6Mk4RqYEKUpvhUHOxqGqnws331wafv704Jt_uXNpPGxl0ti5ECWhYR0LJHnDS_A2smjHwlKIoX1RdGBawSLtOxDe74PJVPwqhGw9CQANQo6lDNOk2fbnsmTD5F3N4ji_siluJsc9s7DDpjAbr_u8P5oESI4mb32vE80Z94DLmcHsje5ho3NILebRAx2Z_OkHZ8eOFhHEGEvjZPzg9u2LQTFb3j9Ay82riMYKxrwA6Sid_8GWkOV3F354mv29fu_mWmTTQGDgiFbA1j3OCZjfmL_kuJFD”,
“Servers”: [
{
“ServerURL”: “https://hosted.mender.io
}
]
}”

Also, I noticed that with my previous mender-convert, on my hosted.mender.io account, the UI used to give option to set retry instead of hard coded 1 try only. Is this a NTC time sync issue? How do I fix it?

Regards,
Raj

There should be a file at /data/mender/mender.conf containing the RootfsPartA and RootfsPartB definitions. Is this partition mounted correctly and present? And does /var/lib/mender point to /data/mender?

Thanks Kristian for your reply:
I’m following the steps in

Prepare a Raspberry Pi device | Mender documentation to Prepare a Raspberry Pi device. Does Step 6 - Install the Mender client on the device create a data partition?

There is no /data partition. I have cut&pasted the /etc/mender/mender.conf file above.
Here-s the listing:
~$ ls -ltra /var/lib/mender
total 80
drwxr-xr-x 56 root root 4096 Sep 10 06:54 …
-rw------- 1 root root 2455 Sep 10 06:54 mender-agent.pem
-rw------- 1 root root 928 Sep 10 07:25 deployments.0005.bf16ad46-5a57-42fb-86d4-72fdfa6cf56a.log
-rw------- 1 root root 928 Sep 10 07:28 deployments.0004.e777395a-337a-4b0c-9efa-687b1ff08267.log
-rw------- 1 root root 928 Sep 10 07:29 deployments.0003.920e0187-d3bc-40ca-a87b-8687d89b14bf.log
-rw-r–r-- 1 root root 24 Sep 10 07:32 device_type
-rw------- 1 root root 928 Sep 10 08:11 deployments.0002.3dfbaf48-fef0-433d-826e-05b25b2d91c9.log
drwxr-xr-x 3 root root 4096 Sep 12 05:59 .
drwxr-xr-x 2 root root 4096 Sep 12 05:59 scripts
-rw------- 1 root root 928 Sep 12 05:59 deployments.0001.b8c2ec17-ccee-4a06-83dc-a640c15eb1e4.log
-rw------- 1 root root 32768 Sep 12 05:59 mender-store
-rw------- 1 root root 8192 Sep 13 08:34 mender-store-lock

Appreciate your help.
Raj

Did you use the Raspberry Pi image from Mender? It looks like you may have used the one straight from the Raspberry Pi OS website, which will not work for full rootfs image updates. Make sure you use the download links from Mender’s documentation.

Thanks Kristian for your reply:
I followed your instruction, downloaded the pre-mendered Rasberrypi OS Lite bullseye image from link you provided, flashed it and booted up the RPI4B device with the menderized image.

Now, trying to OTA update it with my menderized system image which is also Raspberrypi OS Lite bullseye.

Here are the checks you asked previously:

pi@raspberrypi:~ $ sudo cat /data/mender/mender.conf
{
“RootfsPartA”: “/dev/mmcblk0p2”,
“RootfsPartB”: “/dev/mmcblk0p3”
}

pi@raspberrypi:~ $ ls -ltra /var/lib/mender
lrwxrwxrwx 1 root root 12 Jun 14 07:40 /var/lib/mender → /data/mender
pi@raspberrypi:~ $

Here is the Deployment log for device:
2022-09-12 10:59:17 +0000 UTC info: Running Mender client version: 3.3.0
2022-09-12 10:59:18 +0000 UTC info: State transition: update-fetch [Download_Enter] → update-store [Download_Enter]
2022-09-12 10:59:19 +0000 UTC info: No public key was provided for authenticating the artifact
2022-09-12 10:59:19 +0000 UTC error: Fetching Artifact headers failed: installer: failed to read Artifact: readHeaderV3: handleHeaderReads: Artifact Payload type ‘rootfs-image’ is not supported by this Mender Client. Ensure that the Mender Client is fully integrated and that the RootfsPartA/B configuration variables are set correctly in ‘mender.conf’
2022-09-12 10:59:19 +0000 UTC info: State transition: update-store [Download_Enter] → update-status-report [none]

Thank you for your help.
raj

Hmm, I’m not really sure what the error is then. Can you edit /lib/systemd/system/mender-client.service and add the -l debug argument right after the /usr/bin/mender binary? Then run:

systemctl daemon-reload
systemctl restart mender-client
journalctl -u mender-client --since=-5m

And post the output here?

Thanks Kristian.
I brought in the --overlay input/config/bootstrap-rootfs-overlay-hosted-server folder from my older (RP33B+ related) mender-convert setup to the latest setup and replaced rootfs_overlay_democ with it.
mender-convert worked and update worked as well.