From: Greg Ercolano <erco@(email surpressed)>
Subject: Re: Python Maya submit script not fully using the path_convert
   Date: Fri, 08 Mar 2013 04:25:01 -0500
Msg# 2285
View Complete Thread (4 articles) | All Threads
Last Next
Hi Damien,

    Confirmed.

    Short answer: looks like the fix is to make two changes:

        1) Change the following line in the lib/RushSubmit.py script:

        BEFORE:   
scriptpath_ = scriptpath.replace("\\","/")
        AFTER:     scriptpath_ = RushSiteSettings.FixPath(scriptpath.replace("\\","/"))

        2) Change the following line in the lib/RushSiteSettings.py script.

        BEFORE:
  
path = Rush.FrontSlashes(path)                      # \path\file -> /path/file
        AFTER:     path = Rush.PathConvert(Rush.FrontSlashes(path))    # \path\file -> /path/file

    So to be specific, in your case you'd edit these two scripts on your file server:
    //YETY/drive/rushscripts/python/lib/RushSubmit.py
    //YETY/drive/rushscripts/python/lib/RushSiteSettings.py

    The error you showed from the python frame log:
python: can't open file '/YETY/drive/rushscripts/python/submit_maya.py': 
[Errno 2] No such file or directory

    ..seems to show the problem is specifically with the path to the python script itself
    not getting the path_convert treatment. That is why the above fix should solve that,
    by making sure the scripts immediately apply the path conversion as soon as they
    record it with the Init() function.

    Note that in the Rush example scripts, path conversions are implemented this way:
  • In perl with the FixPath() function (defined in .common.pl)
  • In python with the RushSiteSettings.FixPath()  (defined in lib/RushSiteSettings.py)
    In the previous versions of rush, you'd modify these functions directly to include regular expressions
    to do the pathname conversions.

    In the 103 version of Rush, I wanted to "centralize" this so that both scripts would access
    the path conversion info from a centralized location, which brought about the new path_convert feature.
    Any script can ask for a path to be translated by invoking:

         rush -pathconvert /some/pathname

    ..and reading stdout for the resulting path conversion. And this is what the above FixPath()
    functions do now (in addition to letting you customize them with regex if you want).

On 03/07/13 20:32, Damien Mahoney wrote:
Hi all,

It looks to me like the maya python submit script is not fully using the 
'path_convert'.

This occurs when I submit the render from linux and render on windows.

I ran the exact same file on both python and perl.


The perl file that works

###
### yety.31: 1745
###
--------------- Rush 103.02 --------------
--       Host: kraken
--        Pid: 2700
--      Title: sh01_light_v27
--      Jobid: yety.31
--      Frame: 1745
--      Tries: 0
--      Owner: damien (1000/100)
--  RunningAs: root
--   Priority: 1
--       Nice: 10
--     Tmpdir: C:/TEMP/.RUSH_TMP.1090
--    LogFile: //YETY/drive/damien/capture/sc53_centipede/maya/scenes/light/sh01_light_v27.mb.log/1745
--    Command: perl //YETY/drive/rushscripts/perl/submit-maya.pl -render 2 1745 1979 1 yes reflect:1745-1979 3 Fail Licpause+Retry //YETY/drive/damien/capture/sc53_centipede/maya/scenes/light/sh01_light_v27.mb  //YETY/drive/damien/capture/sc53_centipede/maya - - mentalray(mr) all ray 5 0 off - - - 3 - - off
--    Started: Sat Mar 02 10:22:55 2013
--------------------------------------------
--- y: is mapped OK

*** MAYA RENDER ***
         RENDERER: mentalray(mr)
          THREADS: all
        SCENEPATH: //YETY/drive/damien/capture/sc53_centipede/maya/scenes/light/sh01_light_v27.mb
          PROJECT: //YETY/drive/damien/capture/sc53_centipede/maya



The python file that doesn't work. Everything is exactly the same. Only 
the script is different.


###
### yety.34: 1745
###
--------------- Rush 103.02 --------------
--       Host: kraken
--        Pid: 5952
--      Title: MAYA-sh01_light_v27
--      Jobid: yety.34
--      Frame: 1745
--      Tries: 7
--      Owner: damien (1000/100)
--  RunningAs: root
--   Priority: 1
--       Nice: 10
--     Tmpdir: C:/TEMP/.RUSH_TMP.1315
--    LogFile: //YETY/drive/damien/capture/sc53_centipede/maya/scenes/light/sh01_light_v27.mb.log/1745
--    Command: python /YETY/drive/rushscripts/python/submit_maya.py -render /YETY/drive/damien/capture/sc53_centipede/maya/scenes/light/sh01_light_v27.mb.log/submitinfo-yety.34.txt
--    Started: Sat Mar 02 10:44:17 2013
--------------------------------------------
python: can't open file '/YETY/drive/rushscripts/python/submit_maya.py': 
[Errno 2] No such file or directory


If I look at the last line here I can see that it's not adding the extra 
/ at the start to make it //YETY/drive/ for the submit script though it 
has worked for the LogFile

My path_convert looks like this

## PATH
os=windows	path_convert   "/YETY/drive"    "//YETY/drive"
os=all		path_convert   "/YETY/drive"	"//YETY/drive"

## DRIVE
os=windows	drive_map	"y:"		"//YETY/drive"
--
Greg Ercolano, erco@(email surpressed)
Seriss Corporation
Rush Render Queue, http://seriss.com/rush/

Tel: (Tel# suppressed)ext.23
Fax: (Tel# suppressed)
Cel: (Tel# suppressed)

Last Next