| | import os |
| |
|
| | PLOTLY_DIR = os.environ.get( |
| | "PLOTLY_DIR", os.path.join(os.path.expanduser("~"), ".plotly") |
| | ) |
| | TEST_FILE = os.path.join(PLOTLY_DIR, ".permission_test") |
| |
|
| |
|
| | def _permissions(): |
| | try: |
| | if not os.path.exists(PLOTLY_DIR): |
| | try: |
| | os.mkdir(PLOTLY_DIR) |
| | except Exception: |
| | |
| | if not os.path.isdir(PLOTLY_DIR): |
| | raise |
| | with open(TEST_FILE, "w") as f: |
| | f.write("testing\n") |
| | try: |
| | os.remove(TEST_FILE) |
| | except Exception: |
| | pass |
| | return True |
| | except Exception: |
| | return False |
| |
|
| |
|
| | _file_permissions = None |
| |
|
| |
|
| | def ensure_writable_plotly_dir(): |
| | |
| | global _file_permissions |
| | if _file_permissions is None: |
| | _file_permissions = _permissions() |
| | return _file_permissions |
| |
|