From f7c1632aee4e316778591da25e573fce74310a36 Mon Sep 17 00:00:00 2001 From: Teemu Toivanen Date: Wed, 10 Feb 2016 11:39:35 +0200 Subject: [PATCH] Add format options to location. Add support for python format options for location: tags: pid fqdn hostname now utcnow user --- borg/helpers.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/borg/helpers.py b/borg/helpers.py index d10b61cca..b8bd8e170 100644 --- a/borg/helpers.py +++ b/borg/helpers.py @@ -27,6 +27,7 @@ from . import shellpattern import msgpack import msgpack.fallback +import socket # return codes returned by borg command # when borg is killed by signal N, rc = 128 + N @@ -688,7 +689,21 @@ class Location: if not self.parse(self.orig): raise ValueError + def preformat_text(self, text): + """Format repository and archive path with common tags""" + current_time = datetime.now() + data = { + 'pid': os.getpid(), + 'fqdn': socket.getfqdn(), + 'hostname': socket.gethostname(), + 'now': current_time.now(), + 'utcnow': current_time.utcnow(), + 'user': uid2user(os.getuid(), os.getuid()) + } + return format_line(text, data) + def parse(self, text): + text = self.preformat_text(text) valid = self._parse(text) if valid: return True