-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Rez is a suite of tools for resolving a list of ‘packages’ (versioned software) and their dependencies, into an environment that does not contain any version clashes. Rez also includes a cmake-based build system, which is integrated into the package resolution system, and a deployment system, for publishing new packages.
Rez is not a production environment management system, it is a package configuration system. To illustrate the difference, consider:
“Package configuration” answers the question, “if I want this set of packages to function within a single environment, what set of packages, environment variables etc do I actually need?”
Whereas “Environment management” answers the question, “What set of packages do I need in this area of production, and how do I manage adding new packages, and updating versions?”
Whilst Rez is not an environment management system, it would make sense to build such a system on top of Rez, and that’s exactly what was done internally at Dr D studios. The environment management system determines what packages are needed where, then this package request is given to the underlying Rez system, which resolves the request into a working environment.
This decoupling allows the user who does not need to be working in a production environment (eg, someone developing core tools) to use only those packages they need. It also guarantees that only valid, non-clashing environments are ever generated.
🔰 Introduction:
📝 package.py
:
🚀 rez:
- Contexts
- Bundles
- Suites
- Building Packages
- Managing Packages
- Environment Variables
- Command Line Tools
ℹ️ Others: