Installer Configuration
Here we describe the options available on when running your Heex Agent.
Installer options
The user has the possibility to add some instructions as stated in the following table. Here is how you do it.
Option | Short | Description |
---|---|---|
--help | -h | Show this help message and exit. |
--mode | -m | Set the Agent mode. Possibilities are upload-only (u ), no-connectivity (n ), or limited-connectivity (l ). |
--interactive | -i | Enable interactive mode during installation. |
--execution | -x | Set the execution mode to either background for background process or service . Default will be service if environment allows it, else background . |
--uninstall | -u | Uninstall. |
Heex Agent runtime configuration (-m)
Check kernel configuration for more information.
Deployment execution mode (-x)
The user can chose to either launch them as services or background processes since sometimes launching services is not possible (ie in docker environments). This choice is done via the --execution
(or -x
) command, added with either service
or background
as an argument. Please understand that when in background process mode, any system reboot will not automatically re-run the Heex Agent
.
Example:
Uninstallation (-u)
If you want to remove the running services (or background processes) and all the created folders, you can simply call the installer with the --uninstall
option and it’ll proceed to do so, no other input needed.
Adding custom files
If for any reason you wish to include custom files/folders of any type, we have added a dedicated space for them: the additionalAgentContent
folder, which is located at the root of your SDK folder. Any file or folder you add inside it will be copied into the Heex Agent with the same arborescence (they shall be copied inside <Agent_root>/additionalAgentContent/
).
Agent’s Header and Footer files
We’ve enhanced the flexibility of our installer by introducing the capability for users to run custom code before the Heex Agent launch. To avail of this feature, prior to create your installer, you create either or both of the following files within the additionalAgentContent folder:
additionalAgentContent/AgentSetupHeader.sh
: The code added inside this file will be run (sourced) before any of the Agent implementations are startedadditionalAgentContent/AgentSetupFooter.sh
: The code added inside this file will be run (sourced) after any of the Agent implementations are started
In addition to this, we have also added the possibility for the user to source files inside the Linux services in which the implementations will be ran. To do so, please refer to the following paragraph
Linux services additional environment setup
Since the installation is done inside user services, the executables do not source the .bashrc
file before running.
In some advanced use cases, you may need to set some settings before running the executables.
Sourcing custom files
You can source additional files before the executables are ran. You need to add their full paths in the bash array typed variable named FILES_TO_SOURCE_IN_SERVICES_ENV
inside the additionalAgentContent/AgentSetupHeader.sh
script.
⚠️ Warning:
It is recommended to use full paths. The character
~
won’t always correctly reference paths to your HOME directory.
📝 Note:
If you mean to source several files, know that the order of the declaration of each file in the list is the order in which we source the files.
Sourcing custom variables
You can also export variables into the services or background processes. For that, you will need to create a dedicated external shell script, and declared it in the additionalAgentContent/AgentSetupHeader.sh
script as mentionned above to source it before the executable gets run.
📝 Note:
Any external custom script is expected to be reachable at the given static path.
Templated header file
The additionalAgentContent/AgentSetupHeader.sh
is automatically generated and added into the packaged SDK, but if the file is not present, you can create it yourself at the root of the package, and paste the following inside it:
💡 Tip:
If you already have created the
additionalAgentContent/AgentSetupHeader.sh
script for other purposes, you can simply add theFILES_TO_SOURCE_IN_SERVICES_ENV
list into it
ROS2 specific configuration
In the template written above, you might notice an additionnal variable defined in it: DISABLE_AUTOMATIC_ROS_INSTALL_SEARCH
. If you do not work with ROS2, you can ignore it. If you do, feel free to check out the specific ROS2 configuration page