I have a Python code on a Raspberry Pi 4 that I want to update via Mender
At the moment my update process includes a Mender Artifact that runs a script and download from a git repository and installs the Python software.
Now, I would like to have a field that indicates the version of the update every time I launch the deployment.
I don’t need to change the artifact because the procedure is always the same as the software is being updated on the git repository and then download.
So, as soon as my update process is always the same (create a deployment with the same artifact) is there a way, every time I request the deployment, to add/modify some kind of field to track the version of the deployment/software? Or am I using the update process in a wrong way?
Now, I would like to have a field that indicates the version of the update every time I launch the deployment.
Hmm, I like this idea.
So, as soon as my update process is always the same (create a deployment with the same artifact) is there a way, every time I request the deployment, to add/modify some kind of field to track the version of the deployment/software? Or am I using the update process in a wrong way?
The update will set a version, for the update module, see the docs here for more information. But this has to be explicitly set in the Artifact upon creation, so it might be a bit cumbersome for your use-case?
Another option is to just report the software version as inventory, and have it show up in the UI along with all the other inventory key values.
1 Like
Thanks a lot for the answer.
Yes, creating every-time an Artifact just because I need to add a new version is a bit too overkill, considering the update script is always the same.
I think the solution to use inventory would be the best fit as I can update the script with the right version as I update my Python code.
Thanks! I’ll give it a try
1 Like
It turned out that launching a deployment with the same artifact on a device that has already successfully run it, results in a skipped deployment because it returns an Already installed deployment status.
Is there a workaround to do that or do I really need to re-create an artifact every time with a new version?
You can have two, with alternative versions, that is the only way I am afraid
1 Like