moveconfig: Allow reading the defconfig list from stdin

Support passes in a defconfig filename of '-' to read the list from stdin
instead of from a file.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2017-06-01 19:38:59 -06:00
parent 25f978cb1c
commit ee4e61bda4

View file

@ -297,9 +297,22 @@ def get_matched_defconfig(line):
return glob.glob(pattern) + glob.glob(pattern + '_defconfig') return glob.glob(pattern) + glob.glob(pattern + '_defconfig')
def get_matched_defconfigs(defconfigs_file): def get_matched_defconfigs(defconfigs_file):
"""Get all the defconfig files that match the patterns in a file.""" """Get all the defconfig files that match the patterns in a file.
Args:
defconfigs_file: File containing a list of defconfigs to process, or
'-' to read the list from stdin
Returns:
A list of paths to defconfig files, with no duplicates
"""
defconfigs = [] defconfigs = []
for i, line in enumerate(open(defconfigs_file)): if defconfigs_file == '-':
fd = sys.stdin
defconfigs_file = 'stdin'
else:
fd = open(defconfigs_file)
for i, line in enumerate(fd):
line = line.strip() line = line.strip()
if not line: if not line:
continue # skip blank lines silently continue # skip blank lines silently
@ -1328,7 +1341,9 @@ def main():
parser.add_option('-C', '--commit', action='store_true', default=False, parser.add_option('-C', '--commit', action='store_true', default=False,
help='Create a git commit for the operation') help='Create a git commit for the operation')
parser.add_option('-d', '--defconfigs', type='string', parser.add_option('-d', '--defconfigs', type='string',
help='a file containing a list of defconfigs to move') help='a file containing a list of defconfigs to move, '
"one per line (for example 'snow_defconfig') "
"or '-' to read from stdin")
parser.add_option('-n', '--dry-run', action='store_true', default=False, parser.add_option('-n', '--dry-run', action='store_true', default=False,
help='perform a trial run (show log with no changes)') help='perform a trial run (show log with no changes)')
parser.add_option('-e', '--exit-on-error', action='store_true', parser.add_option('-e', '--exit-on-error', action='store_true',