In theory you are right. Unfortunately the SGTK (or is it called FPTRTK now?) integration in RV is a hard hack. It is based on a specifically crafted config that is build into the sgtk RV plugin package. I did not find a good way yet to get control over it. If you or someone else finds a way I 'd be happy to hear about it. It is a very deep rabbit hole for sure.
Thank you for showing confidence. I can assure you I cannot do it without any direction. If you layout the milestones in the right direction I can achieve results. Any documentation is a nice place to start with
Looking into this myself and have found the default bootstrapping that the sgtk RV package does allow you to set the following env vars to override the baked in startup and behaviour of the elusive tk-rv engine and apps:
RV_TK_CORE
TK_CONFIG_RV_OVERRIDE
Have yet to test this though. There seems to be some other assumptions in place but very promising!
Hey @Halil, did you happen to get anywhere with testing those env vars to override the default behavior of rv?
We’ve recently upgraded from RV2022 to RV2024 and it’s all got rather confusing, no matter what we do RV 2024 seems to pick up its in-built core, I managed to hard code our own core by pointing RV_TK_CORE to our local core as you’ve suggested and that seemed to work, however still when we import sgtk in any other apps we can’t run
sgtk.platform.current_engine() as it just returns a none
It all worked fine in 2022 so I’m not sure what’s changed, did you manage to discover what TK_CONFIG_RV_OVERRIDE does? I’m wondering if we need to set that too, I just don’t know what to point it at…
Hey @Ricardo_Musch thanks for having a look! That returns the following error
*** tank.platform.errors.TankCurrentModuleNotFoundError: import_framework could not access current app/engine on calling module <removed_our_custom_module_path_here>. You can only use this method on items imported using the import_module() method!
I think it’s likely RV hasn’t managed to start sgtk properly even after setting RV_TK_CORE to our local core as we’re still getting the following error on startup, hence why it can’t get the current_engine, I feel like it never started up correctly
ERROR: sgtk_rv_bootstrap tk-rv bootstrapping process failed: The supplied core path '<RV_INSTALL_PATH>/src/sgtk/baked/plugin/bundle_cache/baked/tk-config-rv/v2.1.0-rc1/python' is not a valid directory.
It seems like RV now has an internal tk-config-rv that it looks to to find the core? I checked out the same path in RV 2022 and it doesn’t exist, so the install of 2022 doesn’t have a baked in tk-config-rv. I assume TK_CONFIG_RV_OVERRIDE is how we’re meant to override this, just not entirely sure what i’m meant to point it at…
I think the TK_CONFIG_RV_OVERRIDE needs to point to your own version of the tk-config-rv?
You may have to dig through to find that packahge, copy and extract it and point the env variable there?