Launching an application via launchapp from the command line

Hi Matt

There a few ways of doing this:

  1. Usually, on the farm (in my experience), the farm manager is responsible for launching the software. In this situation, you would need to provide the job with a startup script so that once the software had been launched the script could bootstrap the engine, and run your process. There is an example I posted here:
    Distributed Config and Render Farm Setup
    You would maybe set environment variables on your job, which the bootstrap script can look for and use, such as the context you want to bootstrap into.
  2. If you are going to manage how to start the software then, you have a couple of options. If you have an installed config, you can use the tank command to launch the software. Something like:
    /path/to/my/my_project_config/tank.bat Task 1234 nuke_11.3v2
    That will use the tk-multi-launchapp to start the software.
    The tricky bit here is that you need to provide a path to the config for that project and pass it the Task you are wanting it to operate on. You would also need to provide a startup script for Nuke so that it ran your processing script.
  3. Instead of using the tank command, you could use the bootstrap script again but this time you would bootstrap the tk-shell engine in python before launching the software and then once the tk-shell engine starts, you would run engine.execute_command("nuke_11.3v2",[]) to use the tk-multi-launchapp to start the software. Again you would need to provide a startup script to nuke to run your processing once it launched.

Best
Phil

5 Likes