This should work if you specify the full path to the executable. For instance, I just configured this for a client. We created a shell script named “run_edition.sh” which takes several arguments. The call with the sys_editionCommandTask looks like:
The defect you’re referring to has to do specifically with resolving variables to be passed to the Post-Edition Command Task. The example I’ve provided above does use hard coded values for the script arguments. If you can code them specifically for each edition, this should work for you.
Make sure that the entire path to your shell script is accessible to the user that Rhythmyx is running under (it should be but if the data dir is not accessible that could cause the issue). Most rx commands use relative paths but the shell exec will use the absolute path.
Also make sure that when you ssh into the server and log in as the rx user account, that the account actually has a home directory and a shell setup in /etc/passwd. I’ve seen both problems prevent execution. Is this still a 6.7 server or is it a 7.2/3 install?
[QUOTE=balcheema;21070]Hi has anyone got an example of this working properly on a linux system.
I’m calling a simple test.sh script that is situated in the /Rhythmyx/bin/ directory which is fully executable and works when run on the command line.
In the Post-Edition Task I point to it as so:
It is supposed to output a text file for testing purposes but as it never creates this I suspect it never gets called.
Is there anything I’m missing here or any other environmental issues that could stop this from working?
I was just trying to test a post-edition task by having a shell script in Rhythmyx/bin create a file. I thought the task was not executing until I discovered that the file was appearing in the parent Rhythmyx directory. If you have a test script in the Rhythmyx/bin directory that creates a file with a command like echo “hello” > t.txt, the file will appear in Rhythmyx, not Rhythmyx/bin. I guess sys_editionCommandTask executes the script as if it resided in the Rhythmyx directory. Use full paths in your commands to control where a test file appears: e.g., echo “hello” > /home/cms/Rhythmyx/bin/t.txt.