Merge commit '19031b24b523c872c1ac367821dc60c950a09755' as 'modules/libjuju'
[osm/N2VC.git] / modules / libjuju / juju / tag.py
diff --git a/modules/libjuju/juju/tag.py b/modules/libjuju/juju/tag.py
new file mode 100644 (file)
index 0000000..2514229
--- /dev/null
@@ -0,0 +1,31 @@
+def _prefix(prefix, s):
+    if s and not s.startswith(prefix):
+        return '{}{}'.format(prefix, s)
+    return s
+
+
+def untag(prefix, s):
+    if s and s.startswith(prefix):
+        return s[len(prefix):]
+    return s
+
+
+def cloud(cloud_name):
+    return _prefix('cloud-', cloud_name)
+
+
+def credential(cloud, user, credential_name):
+    credential_string = '{}_{}_{}'.format(cloud, user, credential_name)
+    return _prefix('cloudcred-', credential_string)
+
+
+def model(cloud_name):
+    return _prefix('model-', cloud_name)
+
+
+def user(username):
+    return _prefix('user-', username)
+
+
+def application(app_name):
+    return _prefix('application-', app_name)