in localize_terraform_modules.py [0:0]
def file_replace(fname, pat_replace, s_prefix):
# first, see if the pattern is even in the file.
for one_pat_replace in pat_replace:
pat = one_pat_replace[0]
repl = one_pat_replace[1]
with open(fname) as f:
if not any(re.search(pat, line) for line in f):
f.close()
continue # pattern does not occur in file so we are done.
f.close()
with open(fname) as f:
# pattern is in the file, so perform replace operation.
out_fname = fname + ".tmp"
out = open(out_fname, "w")
for line in f:
if re.search(pat, line):
s_after = s_prefix + repl
out.write(re.sub(pat, s_after, line))
print("replacing:"+line+" with:\n"+re.sub(pat, s_after, line)+" in file:"+fname)
else:
out.write(line)
f.close()
os.remove(fname)
out.close()
os.rename(out_fname, fname)