瀏覽代碼

Fix `user_config_dir()` for GCP/AWS functions (#4726)

* Fix `user_config_dir()` for GCP/AWS functions

Compatability fix for GCP functions and AWS lambda for user config directory in https://github.com/ultralytics/yolov5/pull/4628

* Windows skip check
modifyDataloader
Glenn Jocher GitHub 3 年之前
父節點
當前提交
4a025ae97f
沒有發現已知的金鑰在資料庫的簽署中 GPG 金鑰 ID: 4AEE18F83AFDEB23
共有 1 個檔案被更改,包括 10 行新增2 行删除
  1. +10
    -2
      utils/general.py

+ 10
- 2
utils/general.py 查看文件

@@ -105,13 +105,21 @@ def get_latest_run(search_dir='.'):

def user_config_dir(dir='Ultralytics'):
# Return path of user configuration directory (make if necessary)
settings = {'Windows': 'AppData/Roaming', 'Linux': '.config', 'Darwin': 'Library/Application Support'}
path = Path.home() / settings.get(platform.system(), '') / dir
system = platform.system()
cfg = {'Windows': 'AppData/Roaming', 'Linux': '.config', 'Darwin': 'Library/Application Support'}
path = Path.home() / cfg.get(system, '') / dir
if system == 'Linux' and not is_writeable(path): # GCP functions and AWS lambda solution, only /tmp is writeable
path = Path('/tmp') / dir
if not path.is_dir():
path.mkdir() # make dir if required
return path


def is_writeable(path):
# Return True if path has write permissions (Warning: known issue on Windows)
return os.access(path, os.R_OK)


def is_docker():
# Is environment a Docker container?
return Path('/workspace').exists() # or Path('/.dockerenv').exists()

Loading…
取消
儲存