mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-25 21:32:15 +01:00
72 lines
1.3 KiB
Python
72 lines
1.3 KiB
Python
import os
|
|
import toml
|
|
|
|
import ftrack_api
|
|
import appdirs
|
|
|
|
|
|
config_path = os.path.normpath(appdirs.user_data_dir('pype-app', 'pype'))
|
|
config_name = 'ftrack_cred.toml'
|
|
fpath = os.path.join(config_path, config_name)
|
|
folder = os.path.dirname(fpath)
|
|
|
|
if not os.path.isdir(folder):
|
|
os.makedirs(folder)
|
|
|
|
|
|
def _get_credentials():
|
|
|
|
folder = os.path.dirname(fpath)
|
|
|
|
if not os.path.isdir(folder):
|
|
os.makedirs(folder)
|
|
|
|
try:
|
|
file = open(fpath, 'r')
|
|
except Exception:
|
|
filecreate = open(fpath, 'w')
|
|
filecreate.close()
|
|
file = open(fpath, 'r')
|
|
|
|
credentials = toml.load(file)
|
|
file.close()
|
|
|
|
return credentials
|
|
|
|
|
|
def _save_credentials(username, apiKey):
|
|
file = open(fpath, 'w')
|
|
|
|
data = {
|
|
'username': username,
|
|
'apiKey': apiKey
|
|
}
|
|
|
|
credentials = toml.dumps(data)
|
|
file.write(credentials)
|
|
file.close()
|
|
|
|
|
|
def _clear_credentials():
|
|
file = open(fpath, 'w').close()
|
|
_set_env(None, None)
|
|
|
|
|
|
def _set_env(username, apiKey):
|
|
os.environ['FTRACK_API_USER'] = username
|
|
os.environ['FTRACK_API_KEY'] = apiKey
|
|
|
|
|
|
def _check_credentials(username=None, apiKey=None):
|
|
|
|
if username and apiKey:
|
|
_set_env(username, apiKey)
|
|
|
|
try:
|
|
session = ftrack_api.Session()
|
|
session.close()
|
|
except Exception as e:
|
|
print(e)
|
|
return False
|
|
|
|
return True
|