Import Upstream version 4.12.4
This commit is contained in:
9
ipaplatform/opencloudos/__init__.py
Normal file
9
ipaplatform/opencloudos/__init__.py
Normal file
@@ -0,0 +1,9 @@
|
||||
#
|
||||
# Copyright (C) 2024 FreeIPA Contributors see COPYING for license
|
||||
#
|
||||
|
||||
"""
|
||||
This module contains OpenCloudOS family-specific platform files.
|
||||
"""
|
||||
|
||||
NAME = "opencloudos"
|
||||
23
ipaplatform/opencloudos/constants.py
Normal file
23
ipaplatform/opencloudos/constants.py
Normal file
@@ -0,0 +1,23 @@
|
||||
#
|
||||
# Copyright (C) 2024 FreeIPA Contributors see COPYING for license
|
||||
#
|
||||
|
||||
"""
|
||||
This OpenCloudOS family base platform module exports platform related constants.
|
||||
"""
|
||||
|
||||
# Fallback to default path definitions
|
||||
from __future__ import absolute_import
|
||||
|
||||
from ipaplatform.redhat.constants import RedHatConstantsNamespace, User, Group
|
||||
|
||||
|
||||
__all__ = ("constants", "User", "Group")
|
||||
|
||||
|
||||
class OpenCloudOSConstantsNamespace(RedHatConstantsNamespace):
|
||||
SECURE_NFS_VAR = None
|
||||
NAMED_OPENSSL_ENGINE = "pkcs11"
|
||||
|
||||
|
||||
constants = OpenCloudOSConstantsNamespace()
|
||||
20
ipaplatform/opencloudos/paths.py
Normal file
20
ipaplatform/opencloudos/paths.py
Normal file
@@ -0,0 +1,20 @@
|
||||
#
|
||||
# Copyright (C) 2024 FreeIPA Contributors see COPYING for license
|
||||
#
|
||||
|
||||
"""
|
||||
This OpenCloudOS family base platform module exports default filesystem paths
|
||||
as common in OpenCloudOS family-based systems.
|
||||
"""
|
||||
|
||||
from __future__ import absolute_import
|
||||
|
||||
from ipaplatform.redhat.paths import RedHatPathNamespace
|
||||
|
||||
|
||||
class OpenCloudOSPathNamespace(RedHatPathNamespace):
|
||||
NAMED_CRYPTO_POLICY_FILE = "/etc/crypto-policies/back-ends/bind.config"
|
||||
SYSCONFIG_NFS = "/etc/nfs.conf"
|
||||
|
||||
|
||||
paths = OpenCloudOSPathNamespace()
|
||||
51
ipaplatform/opencloudos/services.py
Normal file
51
ipaplatform/opencloudos/services.py
Normal file
@@ -0,0 +1,51 @@
|
||||
#
|
||||
# Copyright (C) 2024 FreeIPA Contributors see COPYING for license
|
||||
#
|
||||
|
||||
|
||||
"""
|
||||
Contains OpenCloudOS family-specific service class implementations.
|
||||
"""
|
||||
|
||||
from __future__ import absolute_import
|
||||
|
||||
from ipaplatform.redhat import services as redhat_services
|
||||
|
||||
# Mappings from service names as FreeIPA code references to these services
|
||||
# to their actual systemd service names
|
||||
opencloudos_system_units = redhat_services.redhat_system_units.copy()
|
||||
opencloudos_system_units["named"] = opencloudos_system_units["named-regular"]
|
||||
opencloudos_system_units["named-conflict"] = \
|
||||
opencloudos_system_units["named-pkcs11"]
|
||||
|
||||
|
||||
# Service classes that implement OpenCloudOS family-specific behaviour
|
||||
|
||||
|
||||
class OpenCloudOSService(redhat_services.RedHatService):
|
||||
system_units = opencloudos_system_units
|
||||
|
||||
|
||||
# Function that constructs proper OpenCloudOS family-specific server classes
|
||||
# for services of specified name
|
||||
|
||||
|
||||
def opencloudos_service_class_factory(name, api=None):
|
||||
if name in ["named", "named-conflict"]:
|
||||
return OpenCloudOSService(name, api)
|
||||
return redhat_services.redhat_service_class_factory(name, api)
|
||||
|
||||
|
||||
# Magicdict containing OpenCloudOSService instances.
|
||||
|
||||
|
||||
class OpenCloudOSServices(redhat_services.RedHatServices):
|
||||
def service_class_factory(self, name, api=None):
|
||||
return opencloudos_service_class_factory(name, api)
|
||||
|
||||
|
||||
# Objects below are expected to be exported by platform module
|
||||
|
||||
timedate_services = redhat_services.timedate_services
|
||||
service = opencloudos_service_class_factory
|
||||
knownservices = OpenCloudOSServices()
|
||||
19
ipaplatform/opencloudos/tasks.py
Normal file
19
ipaplatform/opencloudos/tasks.py
Normal file
@@ -0,0 +1,19 @@
|
||||
#
|
||||
# Copyright (C) 2024 FreeIPA Contributors see COPYING for license
|
||||
#
|
||||
|
||||
"""
|
||||
This module contains default OpenCloudOS family-specific implementations of
|
||||
system tasks.
|
||||
"""
|
||||
|
||||
from __future__ import absolute_import
|
||||
|
||||
from ipaplatform.redhat.tasks import RedHatTaskNamespace
|
||||
|
||||
|
||||
class OpenCloudOSTaskNamespace(RedHatTaskNamespace):
|
||||
pass
|
||||
|
||||
|
||||
tasks = OpenCloudOSTaskNamespace()
|
||||
Reference in New Issue
Block a user