Update issue - pio update app error on workers

Dear Pioreactor team,

I tried to update the software on the workers by running pios update from the leader or pio update app on the workers because in the leader only image the workers got stuck in software version 22.5.13 whereas the leader was software version 24.5.22.

I changed the leader only image to leader worker image and all the workers are now updated to software version 22.5.22.

However, regardless of the image, running pios update on the leader or pio update app on the workers resulted with the following error log:

2024-05-23T09:36:55+0200 [update-app] DEBUG rm -f /tmp/*update.sh /tmp/update.sql
2024-05-23T09:36:55+0200 [update-app] DEBUG
2024-05-23T09:36:55+0200 [update-app] DEBUG wget -O /tmp/pre_update.sh https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pre_update.sh
2024-05-23T09:36:56+0200 [update-app] DEBUG
2024-05-23T09:36:56+0200 [update-app] DEBUG sudo bash /tmp/pre_update.sh
2024-05-23T09:36:58+0200 [update-app] DEBUG Version check passed: 24.5.22

2024-05-23T09:36:58+0200 [update-app] DEBUG sudo pip3 install "pioreactor @ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl"
2024-05-23T09:37:09+0200 [update-app] DEBUG Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl
  Downloading https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl (235 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 235.3/235.3 kB 831.2 kB/s eta 0:00:00
Requirement already satisfied: click==8.1.7 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (8.1.7)
Requirement already satisfied: paho-mqtt==2.1.0 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (2.1.0)
Requirement already satisfied: psutil==5.9.5 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (5.9.5)
Requirement already satisfied: sh==2.0.6 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (2.0.6)
Requirement already satisfied: JSON-log-formatter==0.5.1 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (0.5.1)
Requirement already satisfied: colorlog==6.7.0 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (6.7.0)
Requirement already satisfied: msgspec==0.18.5 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (0.18.5)
Requirement already satisfied: diskcache==5.6.3 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (5.6.3)
Requirement already satisfied: wheel==0.41.2 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (0.41.2)
Requirement already satisfied: crudini==0.9.5 in /usr/local/lib/python3.11/dist-packages (from pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (0.9.5)
Requirement already satisfied: iniparse>=0.5 in /usr/local/lib/python3.11/dist-packages (from crudini==0.9.5->pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (0.5)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from iniparse>=0.5->crudini==0.9.5->pioreactor@ https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/pioreactor-24.5.22-py3-none-any.whl) (1.16.0)

2024-05-23T09:37:09+0200 [update-app] DEBUG wget -O /tmp/update.sh https://github.com/Pioreactor/pioreactor/releases/download/24.5.22/update.sh
2024-05-23T09:37:10+0200 [update-app] DEBUG
2024-05-23T09:37:10+0200 [update-app] DEBUG sudo bash /tmp/update.sh
2024-05-23T09:37:11+0200 [update-app] DEBUG + export LC_ALL=C
+ LC_ALL=C
+ echo force_turbo=1
+ sudo tee -a /boot/config.txt
+ nmcli con add type ethernet con-name eth0 ifname eth0 autoconnect yes ipv4.method auto ipv6.method auto ipv6.addr-gen-mode default connection.id eth0 connection.autoconnect-priority 1
Warning: There are 5 other connections with the name 'eth0'. Reference the connection by its uuid 'db40c2d9-0d05-434f-97b8-9b7e92c5e1b7'
+ nmcli con modify PioreactorLocalLink connection.autoconnect-priority 0 connection.autoconnect no
Error: unknown connection 'PioreactorLocalLink'.
+ :
+ echo 'max_inflight_messages 1000'
+ sudo tee /etc/mosquitto/mosquitto.conf -a
tee: /etc/mosquitto/mosquitto.conf: No such file or directory

Hence, I was wondering, does running pio update on workers abolished or this is potentially a software update issue?

Ah, that’s a mistake in the script we provide with the update. Thanks for showing us. I’ll fix this now and you should be able to try to update successfully again.


However, luckily, the error occurs at the very end of the script, so you’re workers should be updated to the latest code even if the UI tells you otherwise (you will have to reboot the workers to see that though).


Fix is in, you should be able to run pio update app on the workers and have them successfully update (but see above anyways)

1 Like