Source code for pick_environment

# Copyright (c) 2018 Shotgun Software Inc.
#
# CONFIDENTIAL AND PROPRIETARY
#
# This work is provided "AS IS" and subject to the Shotgun Pipeline Toolkit
# Source Code License included in this distribution package. See LICENSE.
# By accessing, using, copying or modifying this work you indicate your
# agreement to the Shotgun Pipeline Toolkit Source Code License. All rights
# not expressly granted therein are reserved by Shotgun Software Inc.

"""
Hook which chooses an environment file to use based on the current context.
This file is almost always overridden by a configuration.
"""

from tank import Hook


[docs]class PickEnvironment(Hook):
[docs] def execute(self, context, **kwargs): """ Executed when Toolkit needs to pick an environment file. The default implementation will return ``shot`` or ``asset`` based on the type of the entity in :attr:`sgtk.Context.entity`. If the type does not match ``Shot`` or ``Asset``, ``None`` will be returned. :params context: The context for which an environment will be picked. :type context: :class:`~sgtk.Context` :returns: Name of the environment to use or ``None`` is there was no match. :rtype: str """ # Must have an entity if context.entity is None: return None if context.entity["type"] == "Shot": return "shot" elif context.entity["type"] == "Asset": return "asset" return None