At our studio we have a few of those same things in common as Judah mentioned... Our place isn't quite as large, with about 40 artists (other production peeps not included). We are also OSX based, which gives the artists the pass on having to know any command-line stuff, but means we have to also cater some of our releases to a graphical approach. It also makes our concept of switchable environments a bit different since they also don't launch their apps from a shell.
Like Judah, we also use a standard workstation image to set a baseline on the system with all the needed local libs. We use a tiered git repo for our code. For instance, if I am developing some maya tools, I would commit to the maya/python code repository first, and when I want to release it, I would pull the production clone master branch to make it live. This would be for all scripted tools, and support media. Python environments (maya, nuke, shell, etc) are pointed at the network site-packages location, as well has having network bin locations. As for the fact that we need to support a graphical workflow (as opposed to artists using the command line), we also have to "app" up GUI tools. py2app is pretty common for pushing out standalone gui apps that we create. We version those as well so updates can be detected, and I wrote a custom "app store" for distributing. Though it would be just as easy to simply symlink them to whatever the current version is as well. We have either option depending on the app. On Tue, Jun 5, 2012 at 9:19 AM, Judah Baron <[email protected]> wrote: > I won't go into a lot of detail right now, but here are some of our > highlights: > > Version controlled distributions so users can sync to update, roll back to > escape problematic releases, etc. We use Perforce, but anything is better > than nothing here. Syncing also means everyone's system looks similar. > We void custom installations and configuration at all costs because it > makes maintaining numerous machines more difficult and very time consuming. > For instance, our tools do not rely on the version of Python that is > installed on the workstation. Instead, we maintain a copy of Python and all > of our dependencies in our version control system, and our tools call on > these dependencies explicitly. This allows us to have multiple versions of > Maya, running potentially multiple versions of Python, at the same time, > with [ideally] the same code. > > Ideal Setup For New Employee: > > 1. Fresh machine configured by IT with standard studio image as > starting point. > 2. Sync to latest release of tools. > 3. Run. > > This ideal setup is actually not just our ideal, but how we really > operate. If ever we have an issue with a newly configured machine not being > able to run any component, it servers as an indicator that our system needs > to be modified to handle such a situation. We still run into problems every > once in a while, but it generally has to do with the disk image not being > complete. > > Good luck, > -Judah > > > On Tue, May 29, 2012 at 5:43 AM, Alexander Kalychny <[email protected]>wrote: > >> Hi there >> We cg-animation studio with >100 people and now we deep in major >> pipeline cleaning for all departments, and wondering how guys at >> major studios distribute, update ( maybe auto-update?) tools for tds >> and artist in maya. >> Maybe using pip / easy_install with your own server serving eggs? or >> smth else? >> Im interested in tools at all scales and platforms >> (windows,linux,osx): from pyqt small dialog tools for maya, to big >> standalone pyqt package with a lot of C++ custom modules >> interdependencies.. >> How you guys approach these kind of problems? >> >> Thanks >> >> -- >> view archives: http://groups.google.com/group/python_inside_maya >> change your subscription settings: >> http://groups.google.com/group/python_inside_maya/subscribe >> > > -- > view archives: http://groups.google.com/group/python_inside_maya > change your subscription settings: > http://groups.google.com/group/python_inside_maya/subscribe > -- view archives: http://groups.google.com/group/python_inside_maya change your subscription settings: http://groups.google.com/group/python_inside_maya/subscribe
