feat: variabel sync and support shared vars

This commit is contained in:
peaklabs-dev
2024-10-16 13:29:13 +02:00
parent b9c9c1041a
commit 6f97d589ae
3 changed files with 56 additions and 27 deletions

View File

@@ -159,31 +159,26 @@ class StartRedis
private function generate_environment_variables()
{
$environment_variables = collect();
$redis_password = null;
$redis_username = null;
foreach ($this->database->runtime_environment_variables as $env) {
$environment_variables->push("$env->key=$env->real_value");
if ($env->is_shared) {
$environment_variables->push("$env->key=$env->real_value");
if ($env->key === 'REDIS_PASSWORD') {
$redis_password = $env->real_value;
if ($env->key === 'REDIS_PASSWORD') {
$this->database->update(['redis_password' => $env->real_value]);
}
if ($env->key === 'REDIS_USERNAME') {
$this->database->update(['redis_username' => $env->real_value]);
}
} else {
if ($env->key === 'REDIS_PASSWORD') {
$env->update(['value' => $this->database->redis_password]);
} elseif ($env->key === 'REDIS_USERNAME') {
$env->update(['value' => $this->database->redis_username]);
}
$environment_variables->push("$env->key=$env->real_value");
}
if ($env->key === 'REDIS_USERNAME') {
$redis_username = $env->real_value;
}
}
if (is_null($redis_password)) {
$environment_variables->push("REDIS_PASSWORD={$this->database->redis_password}");
} else {
$this->database->update(['redis_password' => $redis_password]);
}
if (is_null($redis_username)) {
$environment_variables->push("REDIS_USERNAME={$this->database->redis_username}");
} else {
$this->database->update(['redis_username' => $redis_username]);
}
add_coolify_default_environment_variables($this->database, $environment_variables, $environment_variables);