Can anyone help figure out how I can fix this error with the tank push_configruation error ?
Preformatted textPreformatted text````
File “C:\Users\sreyeeshgarimella\AppData\Roaming\Shotgun\kavaleer\p122c364.basic.desktop\cfg\install\core\python\tank\pipelineconfig.py”, line 108, in init
config_folder = os.path.join(self._pc_root, “config”)
File “C:\Program Files\Shotgun\Python3\lib\ntpath.py”, line 78, in join
path = os.fspath(path)
TypeError: expected str, bytes or os.PathLike object, not NoneType
Apparently it's erroring in the pipelineconfig.py file . I would like to use tank push_configruation to push to shotgrid """ Encapsulates the pipeline configuration and helps navigate and resolve paths across storages, configurations etc. """
import glob from tank_vendor import yaml import tank_vendor.six.moves.cPickle as pickle from .errors import TankError, TankUnreadableFileError from .util.version import is_version_older from . import constants from .platform.environment import InstalledEnvironment, WritableEnvironment from .util import shotgun, yaml_cache from .util import ShotgunPath from .util import StorageRoots from .util.pickle import retrieve_env_var_pickled from . import hook from . import pipelineconfig_utils from . import template_includes from . import LogManager from .descriptor import Descriptor, create_descriptor, descriptor_uri_to_dict from tank_vendor import six log = LogManager.get_logger(__name__)```` class PipelineConfiguration(object): """ Represents a pipeline configuration in Tank. Use the factory methods in pipelineconfig_factory to construct this object, do not create directly via the constructor. """ def __init__(self, pipeline_configuration_path, descriptor=None): """ Constructor. Do not call this directly, use the factory methods in pipelineconfig_factory. NOTE ABOUT SYMLINKS! The pipeline_configuration_path is always populated by the paths that were registered in shotgun, regardless of how the symlink setup is handled on the OS level. :param str pipeline_configuration_path: Path to the pipeline configuration on disk. :param descriptor: Descriptor that was used to create this pipeline configuration. Defaults to ``None`` for backwards compatibility with Bootstrapper that only pass down one argument. Also this argument was passed down by cores from v0.18.72 to 0.18.94. The descriptor is now read from the disk inside pipeline_configuration.yml. :type descriptor: :class:`sgtk.descriptor.ConfigDescriptor` """ self._pc_root = pipeline_configuration_path # validate that the current code version matches or is compatible with # the code that is locally stored in this config!!!! our_associated_api_version = self.get_associated_core_version() # and get the version of the API currently in memory current_api_version = pipelineconfig_utils.get_currently_running_api_version() if our_associated_api_version not in [ None, "unknown", "HEAD", ] and is_version_older(current_api_version, our_associated_api_version): # currently running API is too old! current_api_path = os.path.abspath( os.path.join(os.path.dirname(__file__), "..") ) ```