mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-06 21:35:55 +01:00
bug fix: status fetch on auto git push
This commit is contained in:
@@ -243,12 +243,15 @@ class ProcessUtilities(multi.Thread):
|
||||
return 0
|
||||
|
||||
@staticmethod
|
||||
def outputExecutioner(command, user=None):
|
||||
def outputExecutioner(command, user=None, shell = None):
|
||||
try:
|
||||
if getpass.getuser() == 'root':
|
||||
if os.path.exists(ProcessUtilities.debugPath):
|
||||
logging.writeToFile(command)
|
||||
p = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
if shell == None or shell == True:
|
||||
p = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
else:
|
||||
p = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
return p.communicate()[0].decode("utf-8")
|
||||
|
||||
if type(command) == list:
|
||||
|
||||
@@ -3379,11 +3379,11 @@ StrictHostKeyChecking no
|
||||
##
|
||||
|
||||
command = 'git -C %s push' % (self.folder)
|
||||
commandStatus = ProcessUtilities.outputExecutioner(command)
|
||||
commandStatus = ProcessUtilities.outputExecutioner(command, 'root', False)
|
||||
|
||||
if commandStatus.find('has no upstream branch') > -1:
|
||||
command = 'git -C %s rev-parse --abbrev-ref HEAD' % (self.folder)
|
||||
currentBranch = ProcessUtilities.outputExecutioner(command).rstrip('\n')
|
||||
currentBranch = ProcessUtilities.outputExecutioner(command, 'root', False).rstrip('\n')
|
||||
|
||||
if currentBranch.find('fatal: ambiguous argument') > -1:
|
||||
data_ret = {'status': 0, 'error_message': 'You need to commit first.', 'commandStatus': 'You need to commit first.'}
|
||||
@@ -3391,7 +3391,7 @@ StrictHostKeyChecking no
|
||||
return HttpResponse(json_data)
|
||||
|
||||
command = 'git -C %s push --set-upstream origin %s' % (self.folder, currentBranch)
|
||||
commandStatus = ProcessUtilities.outputExecutioner(command)
|
||||
commandStatus = ProcessUtilities.outputExecutioner(command, 'root', False)
|
||||
|
||||
if commandStatus.find('Everything up-to-date') == -1 and commandStatus.find('rejected') == -1 and commandStatus.find('Permission denied') == -1:
|
||||
data_ret = {'status': 1, 'commandStatus': commandStatus}
|
||||
|
||||
Reference in New Issue
Block a user