Skip to content

Commit b482afe

Browse files
authored
Merge branch 'develop' into bugfix/addons-in-pythonpath
2 parents bdb68b3 + ad09ad5 commit b482afe

1 file changed

Lines changed: 25 additions & 7 deletions

File tree

start.py

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@
8383
import traceback
8484
import subprocess
8585
from contextlib import contextmanager
86-
from urllib.parse import urlparse, parse_qs
86+
from urllib.parse import urlencode, urlparse, parse_qs
8787

8888
from version import __version__
8989

@@ -348,10 +348,10 @@ def _print(message: str):
348348
elif os.getenv("SSL_CERT_FILE") != certifi.where():
349349
_print("--- your system is set to use custom CA certificate bundle.")
350350

351+
import ayon_api # noqa E402
351352
from ayon_api import ( # noqa E402
352353
get_base_url,
353354
set_default_settings_variant,
354-
get_addons_studio_settings,
355355
get_event,
356356
update_event,
357357
take_web_action_event,
@@ -542,17 +542,32 @@ def _prepare_disk_mapping_args(src_path, dst_path):
542542
return []
543543

544544

545-
def _run_disk_mapping(bundle_name):
545+
def _run_disk_mapping(
546+
studio_bundle_name: str,
547+
project_bundle_name: str,
548+
) -> None:
546549
"""Run disk mapping logic.
547550
548551
Mapping of disks is taken from core addon settings. To run this logic
549552
'_set_default_settings_variant' must be called first, so correct
550553
settings are received from server.
551554
"""
552-
553555
low_platform = platform.system().lower()
554-
settings = get_addons_studio_settings(bundle_name)
555-
core_settings = settings.get("core") or {}
556+
557+
key_values = {
558+
"bundle_name": studio_bundle_name,
559+
}
560+
if project_bundle_name and studio_bundle_name != project_bundle_name:
561+
key_values["project_bundle_name"] = project_bundle_name
562+
563+
query = urlencode(key_values)
564+
565+
core_settings = {}
566+
response = ayon_api.get(f"settings?{query}")
567+
for addon in response.data["addons"]:
568+
if addon["name"] == "core":
569+
core_settings = addon["settings"] or {}
570+
556571
disk_mapping = core_settings.get("disk_mapping") or {}
557572
platform_disk_mapping = disk_mapping.get(low_platform)
558573
if not platform_disk_mapping:
@@ -688,7 +703,10 @@ def _start_distribution():
688703
distribution.use_staging,
689704
project_bundle_name
690705
)
691-
_run_disk_mapping(project_bundle_name)
706+
_run_disk_mapping(
707+
studio_bundle_name,
708+
project_bundle_name
709+
)
692710

693711
auto_update = (os.getenv("AYON_AUTO_UPDATE") or "").lower()
694712
skip_auto_update = auto_update == "skip"

0 commit comments

Comments
 (0)