mirror of
https://github.com/ershisan99/coolify.git
synced 2026-01-01 05:09:23 +00:00
Compare commits
10 Commits
v4.0.0-bet
...
v4.0.0-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
144b34ca2e | ||
|
|
676c022e41 | ||
|
|
7c0b98bb70 | ||
|
|
7779713392 | ||
|
|
5e1396025c | ||
|
|
d09c88f71c | ||
|
|
7980f21b1b | ||
|
|
3843994a05 | ||
|
|
a1b08ca037 | ||
|
|
144cdd11ec |
@@ -24,6 +24,7 @@ use Illuminate\Foundation\Bus\Dispatchable;
|
|||||||
use Illuminate\Queue\InteractsWithQueue;
|
use Illuminate\Queue\InteractsWithQueue;
|
||||||
use Illuminate\Queue\SerializesModels;
|
use Illuminate\Queue\SerializesModels;
|
||||||
use Illuminate\Support\Collection;
|
use Illuminate\Support\Collection;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
use Illuminate\Support\Sleep;
|
use Illuminate\Support\Sleep;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use RuntimeException;
|
use RuntimeException;
|
||||||
@@ -740,8 +741,12 @@ class ApplicationDeploymentJob implements ShouldQueue, ShouldBeEncrypted
|
|||||||
$envs->push("SOURCE_COMMIT=unknown");
|
$envs->push("SOURCE_COMMIT=unknown");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$envs = $envs->sort(function ($a, $b) {
|
||||||
|
return strpos($a, '$') === false ? -1 : 1;
|
||||||
|
});
|
||||||
|
Log::info("message", $envs->implode("\n"));
|
||||||
} else {
|
} else {
|
||||||
$this->env_filename = ".env-coolify";
|
$this->env_filename = ".env";
|
||||||
foreach ($this->application->environment_variables as $env) {
|
foreach ($this->application->environment_variables as $env) {
|
||||||
$real_value = $env->real_value;
|
$real_value = $env->real_value;
|
||||||
if ($env->version === '4.0.0-beta.239') {
|
if ($env->version === '4.0.0-beta.239') {
|
||||||
@@ -775,6 +780,10 @@ class ApplicationDeploymentJob implements ShouldQueue, ShouldBeEncrypted
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($envs->isEmpty()) {
|
if ($envs->isEmpty()) {
|
||||||
|
$this->env_filename = null;
|
||||||
|
if ($this->use_build_server) {
|
||||||
|
$this->server = $this->original_server;
|
||||||
|
}
|
||||||
$this->execute_remote_command(
|
$this->execute_remote_command(
|
||||||
[
|
[
|
||||||
"command" => "rm -f $this->configuration_dir/{$this->env_filename}",
|
"command" => "rm -f $this->configuration_dir/{$this->env_filename}",
|
||||||
@@ -782,39 +791,51 @@ class ApplicationDeploymentJob implements ShouldQueue, ShouldBeEncrypted
|
|||||||
"ignore_errors" => true
|
"ignore_errors" => true
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
$this->env_filename = null;
|
if ($this->use_build_server) {
|
||||||
return;
|
$this->server = $this->build_server;
|
||||||
}
|
}
|
||||||
$this->execute_remote_command([
|
|
||||||
executeInDocker($this->deployment_uuid, "cat $this->workdir/.env 2>/dev/null || true"),
|
|
||||||
"hidden" => true,
|
|
||||||
"save" => "dotenv"
|
|
||||||
]);
|
|
||||||
if (str($this->saved_outputs->get('dotenv'))->isNotEmpty()) {
|
|
||||||
$base64_dotenv = base64_encode($this->saved_outputs->get('dotenv')->value());
|
|
||||||
$this->execute_remote_command(
|
|
||||||
[
|
|
||||||
"echo '{$base64_dotenv}' | base64 -d | tee $this->configuration_dir/.env > /dev/null"
|
|
||||||
]
|
|
||||||
);
|
|
||||||
} else {
|
} else {
|
||||||
|
$envs_base64 = base64_encode($envs->implode("\n"));
|
||||||
$this->execute_remote_command(
|
$this->execute_remote_command(
|
||||||
[
|
[
|
||||||
"command" => "rm -f $this->configuration_dir/.env",
|
executeInDocker($this->deployment_uuid, "echo '$envs_base64' | base64 -d | tee $this->workdir/{$this->env_filename} > /dev/null")
|
||||||
"hidden" => true,
|
],
|
||||||
"ignore_errors" => true
|
|
||||||
|
);
|
||||||
|
if ($this->use_build_server) {
|
||||||
|
$this->server = $this->original_server;
|
||||||
|
}
|
||||||
|
$this->execute_remote_command(
|
||||||
|
[
|
||||||
|
"echo '$envs_base64' | base64 -d | tee $this->configuration_dir/{$this->env_filename} > /dev/null"
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
if ($this->use_build_server) {
|
||||||
|
$this->server = $this->build_server;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$envs_base64 = base64_encode($envs->implode("\n"));
|
// $this->execute_remote_command([
|
||||||
$this->execute_remote_command(
|
// executeInDocker($this->deployment_uuid, "cat $this->workdir/.env 2>/dev/null || true"),
|
||||||
[
|
// "hidden" => true,
|
||||||
executeInDocker($this->deployment_uuid, "echo '$envs_base64' | base64 -d | tee $this->workdir/{$this->env_filename} > /dev/null")
|
// "save" => "dotenv"
|
||||||
],
|
// ]);
|
||||||
[
|
// if (str($this->saved_outputs->get('dotenv'))->isNotEmpty()) {
|
||||||
"echo '$envs_base64' | base64 -d | tee $this->configuration_dir/{$this->env_filename} > /dev/null"
|
// $base64_dotenv = base64_encode($this->saved_outputs->get('dotenv')->value());
|
||||||
]
|
// $this->execute_remote_command(
|
||||||
);
|
// [
|
||||||
|
// "echo '{$base64_dotenv}' | base64 -d | tee $this->configuration_dir/.env > /dev/null"
|
||||||
|
// ]
|
||||||
|
// );
|
||||||
|
// } else {
|
||||||
|
// $this->execute_remote_command(
|
||||||
|
// [
|
||||||
|
// "command" => "rm -f $this->configuration_dir/.env",
|
||||||
|
// "hidden" => true,
|
||||||
|
// "ignore_errors" => true
|
||||||
|
// ]
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1281,21 +1302,23 @@ class ApplicationDeploymentJob implements ShouldQueue, ShouldBeEncrypted
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
if (str($this->saved_outputs->get('dotenv'))->isNotEmpty()) {
|
// if (str($this->saved_outputs->get('dotenv'))->isNotEmpty()) {
|
||||||
if (data_get($docker_compose, "services.{$this->container_name}.env_file")) {
|
// if (data_get($docker_compose, "services.{$this->container_name}.env_file")) {
|
||||||
$docker_compose['services'][$this->container_name]['env_file'][] = '.env';
|
// $docker_compose['services'][$this->container_name]['env_file'][] = '.env';
|
||||||
} else {
|
// } else {
|
||||||
$docker_compose['services'][$this->container_name]['env_file'] = ['.env'];
|
// $docker_compose['services'][$this->container_name]['env_file'] = ['.env'];
|
||||||
}
|
// }
|
||||||
|
// }
|
||||||
|
// if ($this->env_filename) {
|
||||||
|
// if (data_get($docker_compose, "services.{$this->container_name}.env_file")) {
|
||||||
|
// $docker_compose['services'][$this->container_name]['env_file'][] = $this->env_filename;
|
||||||
|
// } else {
|
||||||
|
// $docker_compose['services'][$this->container_name]['env_file'] = [$this->env_filename];
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
if (!is_null($this->env_filename)) {
|
||||||
|
$docker_compose['services'][$this->container_name]['env_file'] = [$this->env_filename];
|
||||||
}
|
}
|
||||||
if ($this->env_filename) {
|
|
||||||
if (data_get($docker_compose, "services.{$this->container_name}.env_file")) {
|
|
||||||
$docker_compose['services'][$this->container_name]['env_file'][] = $this->env_filename;
|
|
||||||
} else {
|
|
||||||
$docker_compose['services'][$this->container_name]['env_file'] = [$this->env_filename];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!$this->custom_healthcheck_found) {
|
if (!$this->custom_healthcheck_found) {
|
||||||
$docker_compose['services'][$this->container_name]['healthcheck'] = [
|
$docker_compose['services'][$this->container_name]['healthcheck'] = [
|
||||||
'test' => [
|
'test' => [
|
||||||
|
|||||||
@@ -860,6 +860,9 @@ $schema://$host {
|
|||||||
}
|
}
|
||||||
public function isNonRoot()
|
public function isNonRoot()
|
||||||
{
|
{
|
||||||
|
if ($this->user instanceof Stringable) {
|
||||||
|
return $this->user->value() !== 'root';
|
||||||
|
}
|
||||||
return $this->user !== 'root';
|
return $this->user !== 'root';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ return [
|
|||||||
|
|
||||||
// The release version of your application
|
// The release version of your application
|
||||||
// Example with dynamic git hash: trim(exec('git --git-dir ' . base_path('.git') . ' log --pretty="%h" -n1 HEAD'))
|
// Example with dynamic git hash: trim(exec('git --git-dir ' . base_path('.git') . ' log --pretty="%h" -n1 HEAD'))
|
||||||
'release' => '4.0.0-beta.263',
|
'release' => '4.0.0-beta.265',
|
||||||
// When left empty or `null` the Laravel environment will be used
|
// When left empty or `null` the Laravel environment will be used
|
||||||
'environment' => config('app.env'),
|
'environment' => config('app.env'),
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
return '4.0.0-beta.263';
|
return '4.0.0-beta.265';
|
||||||
|
|||||||
@@ -87,7 +87,7 @@
|
|||||||
@foreach (decode_remote_command_output($application_deployment_queue) as $line)
|
@foreach (decode_remote_command_output($application_deployment_queue) as $line)
|
||||||
<span @class([
|
<span @class([
|
||||||
'dark:text-warning whitespace-pre-line' => $line['hidden'],
|
'dark:text-warning whitespace-pre-line' => $line['hidden'],
|
||||||
'text-red-500 font-bold' => $line['type'] == 'stderr',
|
'text-red-500 font-bold whitespace-pre-line' => $line['type'] == 'stderr',
|
||||||
])>[{{ $line['timestamp'] }}] @if ($line['hidden'])
|
])>[{{ $line['timestamp'] }}] @if ($line['hidden'])
|
||||||
<br><br>[COMMAND] {{ $line['command'] }}<br>[OUTPUT]
|
<br><br>[COMMAND] {{ $line['command'] }}<br>[OUTPUT]
|
||||||
@endif @if (str($line['output'])->contains('http://') || str($line['output'])->contains('https://'))
|
@endif @if (str($line['output'])->contains('http://') || str($line['output'])->contains('https://'))
|
||||||
@@ -100,7 +100,7 @@
|
|||||||
@endphp {!! $line['output'] !!}
|
@endphp {!! $line['output'] !!}
|
||||||
@else
|
@else
|
||||||
{{ $line['output'] }}
|
{{ $line['output'] }}
|
||||||
|
|
||||||
@endif
|
@endif
|
||||||
</span>
|
</span>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"coolify": {
|
"coolify": {
|
||||||
"v4": {
|
"v4": {
|
||||||
"version": "4.0.0-beta.263"
|
"version": "4.0.0-beta.265"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user