Next channel updates

This commit is contained in:
Andras Bacsai
2023-06-23 13:13:02 +02:00
parent d74ba03cd9
commit 1dc3c77bc9
6 changed files with 47 additions and 12 deletions

View File

@@ -14,6 +14,7 @@ class UpdateCoolify
public function __invoke(bool $force)
{
try {
$settings = InstanceSettings::get();
ray('Running InstanceAutoUpdateJob');
$localhost_name = 'localhost';
if (isDev()) {
@@ -23,12 +24,15 @@ class UpdateCoolify
$this->latest_version = get_latest_version_of_coolify();
$this->current_version = config('version');
ray('latest version:' . $this->latest_version . " current version: " . $this->current_version . ' force: ' . $force);
if ($settings->next_channel) {
ray('next channel enabled');
$force = true;
$this->latest_version = 'next';
}
if ($force) {
$this->update();
} else {
$instance_settings = InstanceSettings::get();
ray($instance_settings);
if (!$instance_settings->is_auto_update_enabled) {
if (!$settings->is_auto_update_enabled) {
throw new \Exception('Auto update is disabled');
}
if ($this->latest_version === $this->current_version) {
@@ -49,7 +53,7 @@ class UpdateCoolify
private function update()
{
if (isDev()) {
ray('Running update on local docker container');
ray("Running update on local docker container. Updating to $this->latest_version");
remote_process([
"sleep 10"
], $this->server);

View File

@@ -12,9 +12,10 @@ use Symfony\Component\Yaml\Yaml;
class Configuration extends Component
{
public ModelsInstanceSettings $settings;
public $do_not_track;
public $is_auto_update_enabled;
public $is_registration_enabled;
public bool $do_not_track;
public bool $is_auto_update_enabled;
public bool $is_registration_enabled;
public bool $next_channel;
protected string $dynamic_config_path = '/data/coolify/proxy/dynamic';
protected Server $server;
@@ -32,16 +33,17 @@ class Configuration extends Component
];
public function mount()
{
ray($this->settings);
$this->do_not_track = $this->settings->do_not_track;
$this->is_auto_update_enabled = $this->settings->is_auto_update_enabled;
$this->is_registration_enabled = $this->settings->is_registration_enabled;
$this->next_channel = $this->settings->next_channel;
}
public function instantSave()
{
$this->settings->do_not_track = $this->do_not_track;
$this->settings->is_auto_update_enabled = $this->is_auto_update_enabled;
$this->settings->is_registration_enabled = $this->is_registration_enabled;
$this->settings->next_channel = $this->next_channel;
$this->settings->save();
$this->emit('success', 'Settings updated!');
}