Make 'nextcloudEnableDriDevice' an attribute

Signed-off-by: Pablo Zmdl <pablo@nextcloud.com>
This commit is contained in:
Pablo Zmdl 2026-01-26 10:26:39 +01:00
parent 0cb79a387f
commit 5fc4951ba0
3 changed files with 5 additions and 15 deletions

View file

@ -132,7 +132,7 @@ $app->get('/containers', function (Request $request, Response $response, array $
'nextcloud_upload_limit' => $configurationManager->nextcloudUploadLimit, 'nextcloud_upload_limit' => $configurationManager->nextcloudUploadLimit,
'nextcloud_max_time' => $configurationManager->nextcloudMaxTime, 'nextcloud_max_time' => $configurationManager->nextcloudMaxTime,
'nextcloud_memory_limit' => $configurationManager->nextcloudMemoryLimit, 'nextcloud_memory_limit' => $configurationManager->nextcloudMemoryLimit,
'is_dri_device_enabled' => $configurationManager->isDriDeviceEnabled(), 'is_dri_device_enabled' => $configurationManager->nextcloudEnableDriDevice,
'is_nvidia_gpu_enabled' => $configurationManager->isNvidiaGpuEnabled(), 'is_nvidia_gpu_enabled' => $configurationManager->isNvidiaGpuEnabled(),
'is_talk_recording_enabled' => $configurationManager->isTalkRecordingEnabled, 'is_talk_recording_enabled' => $configurationManager->isTalkRecordingEnabled,
'is_docker_socket_proxy_enabled' => $configurationManager->isDockerSocketProxyEnabled, 'is_docker_socket_proxy_enabled' => $configurationManager->isDockerSocketProxyEnabled,

View file

@ -919,19 +919,9 @@ class ConfigurationManager
return $cc; return $cc;
} }
private function GetEnabledDriDevice() : string { public bool $nextcloudEnableDriDevice{
$envVariableName = 'NEXTCLOUD_ENABLE_DRI_DEVICE'; get => booleanize($this->GetEnvironmentalVariableOrConfig('NEXTCLOUD_ENABLE_DRI_DEVICE', 'nextcloud_enable_dri_device', ''));
$configName = 'nextcloud_enable_dri_device'; set { $this->set('nextcloud_enable_dri_device', $value); }
$defaultValue = '';
return $this->GetEnvironmentalVariableOrConfig($envVariableName, $configName, $defaultValue);
}
public function isDriDeviceEnabled() : bool {
if ($this->GetEnabledDriDevice() === 'true') {
return true;
} else {
return false;
}
} }
private function GetEnabledNvidiaGpu() : string { private function GetEnabledNvidiaGpu() : string {

View file

@ -307,7 +307,7 @@ readonly class DockerActionManager {
$devices = []; $devices = [];
foreach ($container->devices as $device) { foreach ($container->devices as $device) {
if ($device === '/dev/dri' && !$this->configurationManager->isDriDeviceEnabled()) { if ($device === '/dev/dri' && !$this->configurationManager->nextcloudEnableDriDevice) {
continue; continue;
} }
$devices[] = ["PathOnHost" => $device, "PathInContainer" => $device, "CgroupPermissions" => "rwm"]; $devices[] = ["PathOnHost" => $device, "PathInContainer" => $device, "CgroupPermissions" => "rwm"];