summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Server/Plugins/Metadata.py
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2013-02-07 10:00:37 -0500
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2013-02-14 15:12:20 -0500
commitfd67a2735ada342251cb6baaa4e678532566e975 (patch)
tree1f3f37ccacb853cf500243cd02d7a87b27022e14 /src/lib/Bcfg2/Server/Plugins/Metadata.py
parent9bec4d6bbab599bee72256c7e09fe214cb849a1b (diff)
downloadbcfg2-fd67a2735ada342251cb6baaa4e678532566e975.tar.gz
bcfg2-fd67a2735ada342251cb6baaa4e678532566e975.tar.bz2
bcfg2-fd67a2735ada342251cb6baaa4e678532566e975.zip
moved common file locking code into Bcfg2.Utils
Diffstat (limited to 'src/lib/Bcfg2/Server/Plugins/Metadata.py')
-rw-r--r--src/lib/Bcfg2/Server/Plugins/Metadata.py12
1 files changed, 2 insertions, 10 deletions
diff --git a/src/lib/Bcfg2/Server/Plugins/Metadata.py b/src/lib/Bcfg2/Server/Plugins/Metadata.py
index b64f91ccf..d74db5eb4 100644
--- a/src/lib/Bcfg2/Server/Plugins/Metadata.py
+++ b/src/lib/Bcfg2/Server/Plugins/Metadata.py
@@ -15,6 +15,7 @@ import Bcfg2.Server
import Bcfg2.Server.Lint
import Bcfg2.Server.Plugin
import Bcfg2.Server.FileMonitor
+from Bcfg2.Utils import locked
from Bcfg2.Compat import MutableMapping, all, wraps # pylint: disable=W0622
from Bcfg2.version import Bcfg2VersionInfo
@@ -27,15 +28,6 @@ except ImportError:
LOGGER = logging.getLogger(__name__)
-def locked(fd):
- """ Acquire a lock on a file """
- try:
- fcntl.lockf(fd, fcntl.LOCK_EX | fcntl.LOCK_NB)
- except IOError:
- return True
- return False
-
-
if HAS_DJANGO:
class MetadataClientModel(models.Model,
Bcfg2.Server.Plugin.PluginDatabaseModel):
@@ -194,7 +186,7 @@ class XMLMetadataConfig(Bcfg2.Server.Plugin.XMLFileBacked):
newcontents = lxml.etree.tostring(dataroot, xml_declaration=False,
pretty_print=True).decode('UTF-8')
- while locked(fd) == True:
+ while locked(fd):
pass
try:
datafile.write(newcontents)