This should have already been set up by your sysadmin, or the person who installed the rush software:
Be sure the shortcut points to a copy on a file server, and not to local files in c:\rush\examples (windows) or /usr/local/rush/examples (unix).
Should be as simple as clicking on your desktop shortcut.
If you prefer using a terminal window, be sure to run the script with an absolute UNC path, eg:
perl //yourserver/jobs/rushscripts/perl/submit-generic.plIf you don't run it with an absolute path, the frames will fail because rush didn't have the absolute path to the submit script.
The interface should pop up. If it doesn't, verify (unix) the first line in the script's path points to the correct location of your perl binary, or (windows) the '.pl' extension is configured to correctly invoke perl.
Click the help button (buttons with '?') for any field you want to know more about.
When the GUI pops up, note there are various 'Advanced Options' available if you scroll the window down.
For instance, see the Renderman example below for how to use submit-generic.pl to invoke Renderman to render RIB files.
It is assumed you are able to bring up the submit script from a desktop shortcut (which you can make by following these instructions for Mac OSX, Windows, or Linux)
In this example, choose 'perl'.
These are the commands you want to have executed for each
frame on all the machines, and will be run in the 'Shell'
you selected above.
Since we've selected 'perl', enter some perl commands
you know will work on both unix and Windows platforms:
print "Working on frame $ENV{RUSH_FRAME}\n";
system("netstat -an");
exit(0);
Note: If your commands assume you to be in a particular
directory, you better include a chdir command to the
full absolute path.
As with all render scripts, you should return a proper
exit code; 0=Done, 1=Fail, 2=Retry.
In our case, lets use any 5 available cpus at the lowest priority:
+any=5@1
Scroll down to 'Log Directory', and set the absolute path
to a network directory which all machines can access.
In place of the following example, use an absolute
path that is relevant to your network.
//yourserver/jobs/rushlogs/
The job should submit, and an irush interface should pop up with the jobid already set.
The next time you bring up the submit form, it will have all the values set from the last execution. Note that you can then save this as a form so you can easily recall it later.
For more info on the irush interface, see the irush tutorial.
Hit 'Frames' in irush to watch the progress of your job.
If some frames are running, or got done already, click on
some, and hit 'Logs' to see the output of the perl commands
you entered.
When you're finished with the job, hit 'Dump' in irush.
my $cmd = "render /path/to/rib/foo.$ENV{RUSH_PADFRAME}.rib"; print STDERR "Executing: $cmd\n"; if ( system($cmd) ) { exit(1); } exit(0);You can then save this as a form so you can easily recall it later.
Or, make the above into a perl script, adding more robust error checking, and use submit-generic.pl just to execute your script the 'Command'.
Again, using 'Shell: perl', set the 'Command' to be:
exit(system("perl /path/to/your/script.pl") >> 8);