38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
import bpy
|
|
import os
|
|
import pathlib
|
|
|
|
# Paste this variable in the blender.py
|
|
dependency = {
|
|
# 'moderlab_plugin': ['moderlab_plugin.zip', 'Moderlab-Production/BlenderPlugin'],
|
|
# 'moderlab_type': ['moderlab_type.zip', 'Moderlab-Production/BlenderObjectType'],
|
|
# 'moderlab_pie': ['moderlab_pie.zip', 'Moderlab-Production/BlenderPieMenu'],
|
|
# 'uv-packer': ['uv-packer.zip', 'Moderlab-Production/UvPacker'],
|
|
}
|
|
|
|
|
|
def b3d_install_addon():
|
|
env_name = 'FOLDER_TEST'
|
|
try:
|
|
if not os.environ.get(env_name):
|
|
raise KeyError
|
|
env_path = pathlib.Path(os.environ[env_name])
|
|
if not env_path.exists():
|
|
raise FileNotFoundError
|
|
|
|
for key, value in dependency.items():
|
|
bpy.ops.preferences.addon_install(filepath=f'{env_path}/{value[0]}')
|
|
bpy.ops.preferences.addon_enable(module=key)
|
|
bpy.ops.wm.save_userpref()
|
|
|
|
except KeyError:
|
|
print(f'Env. "{env_name}" doesn\'t exist')
|
|
exit(1)
|
|
except FileNotFoundError:
|
|
print('Wrong path to execute this Unit Test')
|
|
exit(1)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
b3d_install_addon()
|