diff --git a/sickbeard/__init__.py b/sickbeard/__init__.py index f4e59ef596d95720e1c8bf98348ca5af670e804e..324a66ada36ad22312977cf488b9540143f7c5bb 100755 --- a/sickbeard/__init__.py +++ b/sickbeard/__init__.py @@ -81,7 +81,6 @@ metadata_provider_dict = {} NEWEST_VERSION = None NEWEST_VERSION_STRING = None VERSION_NOTIFY = None -GITHUB_BRANCH = 'master' INIT_LOCK = Lock() __INITIALIZED__ = False @@ -401,7 +400,7 @@ def initialize(consoleLogging=True): USE_GROWL, GROWL_HOST, GROWL_PASSWORD, USE_PROWL, PROWL_NOTIFY_ONSNATCH, PROWL_NOTIFY_ONDOWNLOAD, PROWL_API, PROWL_PRIORITY, PROG_DIR, NZBMATRIX, NZBMATRIX_USERNAME, \ USE_PYTIVO, PYTIVO_NOTIFY_ONSNATCH, PYTIVO_NOTIFY_ONDOWNLOAD, PYTIVO_UPDATE_LIBRARY, PYTIVO_HOST, PYTIVO_SHARE_NAME, PYTIVO_TIVO_NAME, \ USE_NMA, NMA_NOTIFY_ONSNATCH, NMA_NOTIFY_ONDOWNLOAD, NMA_API, NMA_PRIORITY, \ - NZBMATRIX_APIKEY, versionCheckScheduler, VERSION_NOTIFY, GITHUB_BRANCH, PROCESS_AUTOMATICALLY, \ + NZBMATRIX_APIKEY, versionCheckScheduler, VERSION_NOTIFY, PROCESS_AUTOMATICALLY, \ KEEP_PROCESSED_DIR, TV_DOWNLOAD_DIR, TVDB_BASE_URL, MIN_SEARCH_FREQUENCY, \ showQueueScheduler, searchQueueScheduler, ROOT_DIRS, \ NAMING_SHOW_NAME, NAMING_EP_TYPE, NAMING_MULTI_EP_TYPE, CACHE_DIR, ACTUAL_CACHE_DIR, TVDB_API_PARMS, \ @@ -504,7 +503,6 @@ def initialize(consoleLogging=True): QUALITY_DEFAULT = check_setting_int(CFG, 'General', 'quality_default', SD) STATUS_DEFAULT = check_setting_int(CFG, 'General', 'status_default', SKIPPED) VERSION_NOTIFY = check_setting_int(CFG, 'General', 'version_notify', 1) - GITHUB_BRANCH = check_setting_str(CFG, 'General', 'github_branch', 'master') SEASON_FOLDERS_FORMAT = check_setting_str(CFG, 'General', 'season_folders_format', 'Season %02d') SEASON_FOLDERS_DEFAULT = bool(check_setting_int(CFG, 'General', 'season_folders_default', 0)) diff --git a/sickbeard/versionChecker.py b/sickbeard/versionChecker.py index 160af7b39e518e1e8ace81f0e58a92832b65e44e..c1e940e61479ab64925e9c999fc39684ab91a1cf 100644 --- a/sickbeard/versionChecker.py +++ b/sickbeard/versionChecker.py @@ -213,6 +213,8 @@ class GitUpdateManager(UpdateManager): self.git_url = 'http://code.google.com/p/sickbeard/downloads/list' + self.branch = self._find_git_branch() + def _git_error(self): error_message = 'Unable to find your git executable - either delete your .git folder and run from source OR <a href="http://code.google.com/p/sickbeard/wiki/AdvancedSettings" onclick="window.open(this.href); return false;">set git_path in your config.ini</a> to enable updates.' sickbeard.NEWEST_VERSION_STRING = error_message @@ -282,6 +284,19 @@ class GitUpdateManager(UpdateManager): return True + def _find_git_branch(self): + + output, err = self._run_git('branch --no-color') #@UnusedVariable + + if not output: + return 'master' + + for cur_line in output.splitlines(): + if cur_line.startswith('*'): + return cur_line[2:] + + return 'master' + def _check_github_for_update(self): """ @@ -297,7 +312,7 @@ class GitUpdateManager(UpdateManager): gh = github.GitHub() # find newest commit - for curCommit in gh.commits('midgetspy', 'Sick-Beard', version.SICKBEARD_VERSION, sickbeard.GITHUB_BRANCH): + for curCommit in gh.commits('midgetspy', 'Sick-Beard', self.branch): if not self._newest_commit_hash: self._newest_commit_hash = curCommit['sha'] if not self._cur_commit_hash: @@ -336,8 +351,8 @@ class GitUpdateManager(UpdateManager): self._find_installed_version() try: self._check_github_for_update() - except Exception: - logger.log(u"Unable to contact github, can't check for update", logger.ERROR) + except Exception, e: + logger.log(u"Unable to contact github, can't check for update: "+repr(e), logger.ERROR) return False logger.log(u"After checking, cur_commit = "+str(self._cur_commit_hash)+", newest_commit = "+str(self._newest_commit_hash)+", num_commits_behind = "+str(self._num_commits_behind), logger.DEBUG) @@ -353,7 +368,7 @@ class GitUpdateManager(UpdateManager): on the call's success. """ - output, err = self._run_git('pull origin '+sickbeard.version.SICKBEARD_VERSION) #@UnusedVariable + output, err = self._run_git('pull origin '+self.branch) #@UnusedVariable if not output: return self._git_error()