]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
pybind/mgr/smb: add enums.py for general smb module enums
authorJohn Mulligan <jmulligan@redhat.com>
Tue, 30 Jan 2024 19:39:16 +0000 (14:39 -0500)
committerJohn Mulligan <jmulligan@redhat.com>
Thu, 25 Apr 2024 23:10:38 +0000 (19:10 -0400)
Signed-off-by: John Mulligan <jmulligan@redhat.com>
src/pybind/mgr/smb/enums.py [new file with mode: 0644]

diff --git a/src/pybind/mgr/smb/enums.py b/src/pybind/mgr/smb/enums.py
new file mode 100644 (file)
index 0000000..6e19c88
--- /dev/null
@@ -0,0 +1,59 @@
+"""Assorted enum values used throughout the smb mgr module."""
+
+import sys
+
+if sys.version_info >= (3, 11):  # pragma: no cover
+    from enum import StrEnum as _StrEnum
+else:  # pragma: no cover
+    import enum
+
+    # work like StrEnum for older python versions for our purposes
+    class _StrEnum(str, enum.Enum):
+        def __str__(self) -> str:
+            return self.value
+
+
+class CephFSStorageProvider(_StrEnum):
+    KERNEL_MOUNT = 'kcephfs'
+    SAMBA_VFS = 'samba-vfs'
+
+
+class SubSystem(_StrEnum):
+    CEPHFS = 'cephfs'
+
+
+class Intent(_StrEnum):
+    PRESENT = 'present'
+    REMOVED = 'removed'
+
+
+class State(_StrEnum):
+    CREATED = 'created'
+    NOT_PRESENT = 'not present'
+    PRESENT = 'present'
+    REMOVED = 'removed'
+    UPDATED = 'updated'
+
+
+class AuthMode(_StrEnum):
+    USER = 'user'
+    ACTIVE_DIRECTORY = 'active-directory'
+
+
+class JoinSourceType(_StrEnum):
+    PASSWORD = 'password'
+    HTTP_URI = 'http_uri'
+    RESOURCE = 'resource'
+
+
+class UserGroupSourceType(_StrEnum):
+    INLINE = 'inline'
+    HTTP_URI = 'http_uri'
+    RESOURCE = 'resource'
+
+
+class ConfigNS(_StrEnum):
+    CLUSTERS = 'clusters'
+    SHARES = 'shares'
+    USERS_AND_GROUPS = 'users_and_groups'
+    JOIN_AUTHS = 'join_auths'