bufsize must be an integer error while grepping a message
python, subprocess
Solution
The `subprocess.Popen` class expects an argument list like this:
Popen(args, bufsize=0, ...)
So you're passing it:
- `args` = `git`
- `bufsize` = `log`
Hence the error (`bufsize` expects an integer value). The command vector needs to be a list, like this:
gerritlog = Popen(['git','log','--grep','gerrit_commitmsg'], stdout=PIPE, stderr=PIPE)
Problem
I am running into following error while trying to grep for a message consisting of multipe lines in a log...can anyone provide inputs 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") ```