Update from Pyro to Warrior

Hello,

We are using Mender on an iMX6 on Pyro branch of Yocto. Everything works fine. We use it in standalone mode.

We decided to move to Warrior branch recently. I have ported everything and it also works fine.

I recently tried to update from Pyro to Warrior, but I ran through an error:

mender -rootfs complete-image.mender
INFO[0000] Start updating from local image file: [complete-image.mender] module=rootfs Installing update from the artifact of size 83808768
ERRO[0000] Installation failed: installer: failed to read and install update: will not install artifact with state-scripts when installing from cmd-line. Use -f to override module=rootfs
ERRO[0000] installer: failed to read and install update: will not install artifact with state-scripts when installing from cmd-line. Use -f to override module=main

I tested with the -f flag, it worked. But our Pyro based image is already in production, and we don’t want to modify it just to add this flag, in order to update to the warrior based image. (2 updates in a row).

Is there a way to modify the Warrior based artifact to avoid this error? I never used state-scripts with mender, so I don’t know how it works.

Hi @Pehoh, I think the issue here is that you are moving from a Mender v1.x to a Mender v2.x installation. You may need to do a bootstrap update where your initial update to Warrior uses Mender v1.x and then a second update to add Mender v2.x. You can find the details in our docs for what needs to be updated in your local.conf here: https://docs.mender.io/2.2/artifacts/yocto-project/building#configuring-the-build

Drew

Hi @drewmoseley, thank you for the answer.
You are right, I use mender 1.2.1 (artifact 2.1.1) on Pyro, and mender 2.1.1 (artifact 2.4.0, I forced it to a 2.* version) on Warrior.
I will try to force a 1.* version of mender on Warrior.