Bufsize should be an integer error, and grepping message

I am trying to execute the following error while trying to grep for a message consisting of multi-line lines in the log ... can anyone provide data on how to overcome this error?

CODE: -

print gerrit_commitmsg gerritlog = Popen('git','log','--grep','gerrit_commitmsg', stdout=PIPE, stderr=PIPE) print gerritlog 

ERROR: -

 Commit message:- Build system changes Build system changes to include packages in the build Change-Id: I697558f01ae367d2baacdf2c7fcf1a03753edacd Traceback (most recent call last): File "gerrits_in_workspace.py", line 87, in <module> main() File "gerrits_in_workspace.py", line 77, in main grep_commitmsg(gerrit_commitmsg) File "gerrits_in_workspace.py", line 48, in grep_commitmsg gerritlog = Popen('git','log','--grep','gerrit_commitmsg', stdout=PIPE, stderr=PIPE) File "/usr/lib/python2.7/subprocess.py", line 629, in __init__ raise TypeError("bufsize must be an integer") 
+6
source share
1 answer

The subprocess.Popen class expects a list of arguments as follows:

 Popen(args, bufsize=0, ...) 

So you pass it:

  • args = git
  • bufsize = log

Hence the error ( bufsize expecting an integer value). The command vector should be a list, for example:

 gerritlog = Popen(['git','log','--grep','gerrit_commitmsg'], stdout=PIPE, stderr=PIPE) 
+15
source

Source: https://habr.com/ru/post/950140/


All Articles