bug fix: status fetch on auto git push

This commit is contained in:
Usman Nasir
2020-03-19 18:59:27 +05:00
parent ac7436e293
commit a80f6ebb50
2 changed files with 8 additions and 5 deletions

View File

@@ -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:

View File

@@ -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}