Turn install_latest_major property into a string so we can save a version string or number

I chose a string instead of an integer so we have more freedom what to
actually save (maybe we want to include minor version digits at one point).

Signed-off-by: Pablo Zmdl <pablo@nextcloud.com>
This commit is contained in:
Pablo Zmdl 2026-01-23 17:10:21 +01:00
parent 3bb2ce6e4c
commit 27fd1e82ab
2 changed files with 11 additions and 4 deletions

View file

@ -177,8 +177,14 @@ readonly class DockerController {
$port = 443;
}
if (isset($request->getParsedBody()['install_latest_major'])) {
$install_latest_major = '32';
} else {
$install_latest_major = '';
}
$this->configurationManager->startTransaction();
$this->configurationManager->install_latest_major = isset($request->getParsedBody()['install_latest_major']);
$this->configurationManager->install_latest_major = $install_latest_major;
// set AIO_URL
$this->configurationManager->AIO_URL = $host . ':' . (string)$port . $path;
// set wasStartButtonClicked

View file

@ -68,8 +68,9 @@ class ConfigurationManager
set { $this->set('wasStartButtonClicked', $value); }
}
public bool $install_latest_major {
get => $this->get('install_latest_major', false);
public string $install_latest_major {
// Type-cast because old configs could have integers for this key.
get => (string) $this->get('install_latest_major', '');
set { $this->set('install_latest_major', $value); }
}
@ -1080,7 +1081,7 @@ class ConfigurationManager
'NEXTCLOUD_STARTUP_APPS' => $this->GetNextcloudStartupApps(),
'NEXTCLOUD_ADDITIONAL_APKS' => $this->GetNextcloudAdditionalApks(),
'NEXTCLOUD_ADDITIONAL_PHP_EXTENSIONS' => $this->GetNextcloudAdditionalPhpExtensions(),
'INSTALL_LATEST_MAJOR' => $this->install_latest_major ? 'yes' : '',
'INSTALL_LATEST_MAJOR' => $this->install_latest_major,
'REMOVE_DISABLED_APPS' => $this->shouldDisabledAppsGetRemoved() ? 'yes' : '',
// Allow to get local ip-address of database container which allows to talk to it even in host mode (the container that requires this needs to be started first then)
'AIO_DATABASE_HOST' => gethostbyname('nextcloud-aio-database'),