Initial commit
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
#
|
||||
# Copyright OpenEmbedded Contributors
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
import os
|
||||
import re
|
||||
import errno
|
||||
|
||||
def write_file(path, data):
|
||||
# In case data is None, return immediately
|
||||
if data is None:
|
||||
return
|
||||
wdata = data.rstrip() + "\n"
|
||||
with open(path, "w") as f:
|
||||
f.write(wdata)
|
||||
|
||||
def append_file(path, data):
|
||||
# In case data is None, return immediately
|
||||
if data is None:
|
||||
return
|
||||
wdata = data.rstrip() + "\n"
|
||||
with open(path, "a") as f:
|
||||
f.write(wdata)
|
||||
|
||||
def read_file(path):
|
||||
data = None
|
||||
with open(path) as f:
|
||||
data = f.read()
|
||||
return data
|
||||
|
||||
def remove_from_file(path, data):
|
||||
# In case data is None, return immediately
|
||||
if data is None:
|
||||
return
|
||||
try:
|
||||
rdata = read_file(path)
|
||||
except IOError as e:
|
||||
# if file does not exit, just quit, otherwise raise an exception
|
||||
if e.errno == errno.ENOENT:
|
||||
return
|
||||
else:
|
||||
raise
|
||||
|
||||
contents = rdata.strip().splitlines()
|
||||
for r in data.strip().splitlines():
|
||||
try:
|
||||
contents.remove(r)
|
||||
except ValueError:
|
||||
pass
|
||||
write_file(path, "\n".join(contents))
|
||||
Reference in New Issue
Block a user