Skip to content

Commit

Permalink
Prevent installation of a plugin if the destination is a git repo
Browse files Browse the repository at this point in the history
  • Loading branch information
Josh5 committed Dec 26, 2023
1 parent aeecafb commit 15f7c8d
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion unmanic/libs/plugins.py
Original file line number Diff line number Diff line change
Expand Up @@ -460,10 +460,14 @@ def install_plugin(self, zip_file, plugin_id=None):
plugin_id = plugin_info.get('id')
# Create plugin destination directory based on plugin ID
plugin_directory = self.get_plugin_path(plugin_id)
# Prevent installation if destination has a git repository. This plugin is probably under development
self._log(os.path.join(str(plugin_directory), '.git'))
if os.path.exists(os.path.join(str(plugin_directory), '.git')):
raise Exception("Plugin directory contains a git repository. Uninstall this source version before installing.")
# Extract zip file contents
self._log("Extracting plugin to '{}'".format(plugin_directory), level='debug')
with zipfile.ZipFile(zip_file, "r") as zip_ref:
zip_ref.extractall(plugin_directory)
zip_ref.extractall(str(plugin_directory))
# Return installed plugin info
return self.get_plugin_info(plugin_id)

Expand Down

0 comments on commit 15f7c8d

Please sign in to comment.