This script applies remote binary update files to the specified devices
For more information on how to execute scripts, view the “Client Scripts” page.
Contents of Package
This script is composed of 2 python files:
ApiClient.py. ApiClient.py can be used to interface with the Edge Node’s API but will do nothing if run directly.
BinaryUpdateScript.py. BinaryUpdateScript.py must be run in the same folder with ApiClient.
Usage
This script will apply supplied binary updates to the specified devices. To execute this command from the command line, navigate to its folder and use:
python BinaryUpdateScript.py
If the system has multiple versions of Python installed, instead use:
python3 BinaryUpdateScript.py
The first time the BinaryUpdateScript.py script executes, it will create a subfolder named “Binary”. To apply binaries, place a CSV list of applicable devices and the MQTT and/or eACM folders that contain the binary updates (including a bin and lib folder) inside. Execute the command again and it will apply those binaries to the listed devices.
Binary Formatting
The update script requires the folders to be named “MQTT” or “eACM”. It will transfer these folders to the remote device then install the contents of “lib” and “bin”
CSV Formatting
The CSV file’s top row must include the following headers:
Edge Device IP,OS username,OS password
Each column's meaning is detailed below
Edge Device IP | The IP address or URL the edge device; this is the IP we will attempt to contact. Unless otherwise specified, it will be assumed an IP or URL is of the format, Eg “192.168.0.10” will be read as “http://192.168.0.10:8080”. If a different port is expected, or the node is configured for https, that must be included, eg “https://192.168.0.10:8181”. Each Edge Device IP must be unique within the CSV. |
OS username | The operating system username |
OS password | The operating system password |
Output
The script will log the progress of its update application.
Due to the complexity of applying a binary remotely it is advised that each device be confirmed manually.
Logs
This script will generate its logs in BinaryScript.log. It can be checked for further details if an error appears in the Complete report.