Invalid Checksum while uploading artifact

Hello,

I have an error while trying to upload my artifact to hosted.mender.io after building it.

[2022-08-18 16:44:04,484] [menderclient.py:124] INFO - Pushing new artifact
[2022-08-18 16:44:04,484] [menderclient.py:79] INFO - Pushing /workspace/yocto/build/tmp/deploy/images/intel-nuc-64/image.mender to cloud
[2022-08-18 16:44:06,781] [connectionpool.py:1001] DEBUG - Starting new HTTPS connection (1): hosted.mender.io:443
[2022-08-18 16:44:33,616] [connectionpool.py:456] DEBUG - https://hosted.mender.io:443 "POST /api/management/v1/deployments/artifacts HTTP/1.1" 400 234
[2022-08-18 16:44:33,618] [menderclient.py:90] INFO - Response: <Response [400]>, text: {"error":"invalid checksum; expected: [222dc0c43b195f99862cf583f4ea69313d917cc6a8e9db4c6091045cacb482e9]; actual: [96c9e5a6b050a3ff3877a484a4d304a6a33120beb8e4053506c250a38b9e07f2]","request_id":"ae2de5ab-3f3b-4b2b-bc20-93c5eda65fe7"}

This error only happen on my cloudbuild hosted on GCP. I am not able to reproduce the issue locally.
What is the meaning of this error. How mender does compare checksum (I mean which checksum are compared). What could cause such an error.

Thanks

Hi @perceval

I’m not completely sure what menderclient.py is?

Is this a local script you have going, and using to upload to hosted.mender.io?

Have you tried uploading through the UI, and do you then get the same errors?

Hello,

yeah sorry, menderclient.py is our internal script to push new artifact from our gcp cloudbuild to hosted.mender. After our yocto build we push the resulting artifact on mender.

I manage to upload an artifact using this script locally on my computer without any trouble. I tried to reproduce the error localy but couldn’t as the error only appears when running on our cloudbuild. We’ve been using this script for month (if not years) now. So the bug is a little bit random and the error throw by the API not so explicit.

Yeh, I agree the API error is not really helpful.

However, without going into detail on your issue here:

Have you tried using our CLI tool for this (GitHub - mendersoftware/mender-cli: A general-purpose CLI for the Mender backend).

This supports uploading to our backends, and is continually tested by us for this use-case :smile:

Is it possible to give this a spin instead?

Yeah I wil try this one your script for sure,

The problem seems to be solved. I purged all sstate cache then rebuild from scratch tehn and I could upload my artifact. It must have been corrupted in some way

thanks for the tool

1 Like