How do I set environment variable for node launched on remote machine ?
I have a launch file which runs some nodes on a remote machine. I declare the remote machine as follows:
<machine name="petra" address="petra" env-loader="/home/paul/catkin_ws/devel_isolated/env.sh"/>
and launch a remote node with:
<node machine="petra" name="myspeech.py" pkg="speech_infinite" type="myspeech.py" output="screen"/>
The node uses Google cloud speech API and requires an environment variable of the form:
export GOOGLE_APPLICATION_CREDENTIALS=/home/paul/Programs/GoogleAccount/myproject-blahblah.json
Currently I edit env.sh in devel_isolated, but that gets overwritten when I make the workspace.
I have traced through the shell scripts, which include other scripts, which include other scripts and hooks etc. It left my head spinning ! Can anyone suggest a good way(i.e. minimal changes to ROS boilerplate) to set this up, so that:
- The Google credentials are included even after remaking catkin workspace
- All the rest of my catkin environment continues to be loaded.