Skip to content

Commit bae9ea7

Browse files
authored
Merge pull request coollabsio#3366 from coollabsio/next
v4.0.0-beta.332
2 parents 435c0ba + d57c9d8 commit bae9ea7

34 files changed

+1325
-1077
lines changed

.github/workflows/coolify-helper-next.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ jobs:
3838
platforms: linux/amd64
3939
push: true
4040
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }}-next
41+
labels: |
42+
coolify.managed=true
4143
aarch64:
4244
runs-on: [ self-hosted, arm64 ]
4345
permissions:
@@ -64,6 +66,8 @@ jobs:
6466
platforms: linux/aarch64
6567
push: true
6668
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }}-next-aarch64
69+
labels: |
70+
coolify.managed=true
6771
merge-manifest:
6872
runs-on: ubuntu-latest
6973
permissions:
@@ -94,3 +98,4 @@ jobs:
9498
if: always()
9599
with:
96100
webhook: ${{ secrets.DISCORD_WEBHOOK_DEV_RELEASE_CHANNEL }}
101+

.github/workflows/coolify-helper.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Coolify Helper Image (v4)
22

33
on:
44
push:
5-
branches: [ "main" ]
5+
branches: [ "main", "next" ]
66
paths:
77
- .github/workflows/coolify-helper.yml
88
- docker/coolify-helper/Dockerfile
@@ -38,6 +38,8 @@ jobs:
3838
platforms: linux/amd64
3939
push: true
4040
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }}
41+
labels: |
42+
coolify.managed=true
4143
aarch64:
4244
runs-on: [ self-hosted, arm64 ]
4345
permissions:
@@ -64,6 +66,8 @@ jobs:
6466
platforms: linux/aarch64
6567
push: true
6668
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.version.outputs.VERSION }}-aarch64
69+
labels: |
70+
coolify.managed=true
6771
merge-manifest:
6872
runs-on: ubuntu-latest
6973
permissions:

app/Actions/Server/CleanupDocker.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace App\Actions\Server;
44

5+
use App\Models\InstanceSettings;
56
use App\Models\Server;
67
use Lorisleiva\Actions\Concerns\AsAction;
78

@@ -21,10 +22,16 @@ public function handle(Server $server)
2122

2223
private function getCommands(): array
2324
{
25+
$settings = InstanceSettings::get();
26+
$helperImageVersion = data_get($settings, 'helper_version');
27+
$helperImage = config('coolify.helper_image');
28+
$helperImageWithVersion = config('coolify.helper_image').':'.$helperImageVersion;
29+
2430
$commonCommands = [
2531
'docker container prune -f --filter "label=coolify.managed=true"',
26-
'docker image prune -af',
32+
'docker image prune -af --filter "label!=coolify.managed=true"',
2733
'docker builder prune -af',
34+
"docker images --filter before=$helperImageWithVersion --filter reference=$helperImage | grep $helperImage | awk '{print $3}' | xargs -r docker rmi",
2835
];
2936

3037
return $commonCommands;

app/Actions/Service/StartService.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@ public function handle(Service $service)
1616
$service->saveComposeConfigs();
1717
$commands[] = 'cd '.$service->workdir();
1818
$commands[] = "echo 'Saved configuration files to {$service->workdir()}.'";
19-
$commands[] = "echo 'Creating Docker network.'";
20-
$commands[] = "docker network inspect $service->uuid >/dev/null 2>&1 || docker network create --attachable $service->uuid";
19+
if($service->networks()->count() > 0){
20+
$commands[] = "echo 'Creating Docker network.'";
21+
$commands[] = "docker network inspect $service->uuid >/dev/null 2>&1 || docker network create --attachable $service->uuid";
22+
}
2123
$commands[] = 'echo Starting service.';
2224
$commands[] = "echo 'Pulling images.'";
2325
$commands[] = 'docker compose pull';

app/Console/Kernel.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use App\Jobs\CheckForUpdatesJob;
66
use App\Jobs\CleanupInstanceStuffsJob;
7+
use App\Jobs\CleanupStaleMultiplexedConnections;
78
use App\Jobs\DatabaseBackupJob;
89
use App\Jobs\DockerCleanupJob;
910
use App\Jobs\PullHelperImageJob;
@@ -29,7 +30,8 @@ protected function schedule(Schedule $schedule): void
2930
$this->all_servers = Server::all();
3031
$settings = InstanceSettings::get();
3132

32-
$schedule->command('telescope:prune')->daily();
33+
$schedule->job(new CleanupStaleMultiplexedConnections)->hourly();
34+
3335
if (isDev()) {
3436
// Instance Jobs
3537
$schedule->command('horizon:snapshot')->everyMinute();
@@ -39,6 +41,8 @@ protected function schedule(Schedule $schedule): void
3941
$this->check_resources($schedule);
4042
$this->check_scheduled_tasks($schedule);
4143
$schedule->command('uploads:clear')->everyTwoMinutes();
44+
45+
$schedule->command('telescope:prune')->daily();
4246
} else {
4347
// Instance Jobs
4448
$schedule->command('horizon:snapshot')->everyFiveMinutes();

app/Http/Controllers/Api/DeployController.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ public function deployments(Request $request)
8686
],
8787
tags: ['Deployments'],
8888
parameters: [
89-
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Deployment Uuid', schema: new OA\Schema(type: 'string')),
89+
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Deployment UUID', schema: new OA\Schema(type: 'string')),
9090
],
9191
responses: [
9292
new OA\Response(
@@ -150,7 +150,7 @@ public function deployment_by_uuid(Request $request)
150150
responses: [
151151
new OA\Response(
152152
response: 200,
153-
description: 'Get deployment(s) Uuid\'s',
153+
description: 'Get deployment(s) UUID\'s',
154154
content: [
155155
new OA\MediaType(
156156
mediaType: 'application/json',

app/Http/Controllers/Api/ProjectController.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ class ProjectController extends Controller
1111
{
1212
#[OA\Get(
1313
summary: 'List',
14-
description: 'list projects.',
14+
description: 'List projects.',
1515
path: '/projects',
1616
operationId: 'list-projects',
1717
security: [
@@ -47,15 +47,15 @@ public function projects(Request $request)
4747
if (is_null($teamId)) {
4848
return invalidTokenResponse();
4949
}
50-
$projects = Project::whereTeamId($teamId)->select('id', 'name', 'uuid')->get();
50+
$projects = Project::whereTeamId($teamId)->select('id', 'name', 'description', 'uuid')->get();
5151

5252
return response()->json(serializeApiResponse($projects),
5353
);
5454
}
5555

5656
#[OA\Get(
5757
summary: 'Get',
58-
description: 'Get project by Uuid.',
58+
description: 'Get project by UUID.',
5959
path: '/projects/{uuid}',
6060
operationId: 'get-project-by-uuid',
6161
security: [
@@ -139,7 +139,7 @@ public function environment_details(Request $request)
139139
return invalidTokenResponse();
140140
}
141141
if (! $request->uuid) {
142-
return response()->json(['message' => 'Uuid is required.'], 422);
142+
return response()->json(['message' => 'UUID is required.'], 422);
143143
}
144144
if (! $request->environment_name) {
145145
return response()->json(['message' => 'Environment name is required.'], 422);
@@ -341,7 +341,7 @@ public function update_project(Request $request)
341341
}
342342
$uuid = $request->uuid;
343343
if (! $uuid) {
344-
return response()->json(['message' => 'Uuid is required.'], 422);
344+
return response()->json(['message' => 'UUID is required.'], 422);
345345
}
346346

347347
$project = Project::whereTeamId($teamId)->whereUuid($uuid)->first();
@@ -417,7 +417,7 @@ public function delete_project(Request $request)
417417
}
418418

419419
if (! $request->uuid) {
420-
return response()->json(['message' => 'Uuid is required.'], 422);
420+
return response()->json(['message' => 'UUID is required.'], 422);
421421
}
422422
$project = Project::whereTeamId($teamId)->whereUuid($request->uuid)->first();
423423
if (! $project) {

app/Http/Controllers/Api/SecurityController.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public function keys(Request $request)
7575
],
7676
tags: ['Private Keys'],
7777
parameters: [
78-
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Private Key Uuid', schema: new OA\Schema(type: 'string')),
78+
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Private Key UUID', schema: new OA\Schema(type: 'string')),
7979
],
8080
responses: [
8181
new OA\Response(
@@ -323,7 +323,7 @@ public function update_key(Request $request)
323323
],
324324
tags: ['Private Keys'],
325325
parameters: [
326-
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Private Key Uuid', schema: new OA\Schema(type: 'string')),
326+
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Private Key UUID', schema: new OA\Schema(type: 'string')),
327327
],
328328
responses: [
329329
new OA\Response(

app/Http/Controllers/Api/ServersController.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ public function servers(Request $request)
107107
],
108108
tags: ['Servers'],
109109
parameters: [
110-
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server\'s Uuid', schema: new OA\Schema(type: 'string')),
110+
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server\'s UUID', schema: new OA\Schema(type: 'string')),
111111
],
112112
responses: [
113113
new OA\Response(
@@ -185,7 +185,7 @@ public function server_by_uuid(Request $request)
185185
],
186186
tags: ['Servers'],
187187
parameters: [
188-
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server\'s Uuid', schema: new OA\Schema(type: 'string')),
188+
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server\'s UUID', schema: new OA\Schema(type: 'string')),
189189
],
190190
responses: [
191191
new OA\Response(
@@ -263,7 +263,7 @@ public function resources_by_server(Request $request)
263263
],
264264
tags: ['Servers'],
265265
parameters: [
266-
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server\'s Uuid', schema: new OA\Schema(type: 'string')),
266+
new OA\Parameter(name: 'uuid', in: 'path', required: true, description: 'Server\'s UUID', schema: new OA\Schema(type: 'string')),
267267
],
268268
responses: [
269269
new OA\Response(

app/Http/Controllers/Api/ServicesController.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ public function create_service(Request $request)
378378
responses: [
379379
new OA\Response(
380380
response: 200,
381-
description: 'Get a service by Uuid.',
381+
description: 'Get a service by UUID.',
382382
content: [
383383
new OA\MediaType(
384384
mediaType: 'application/json',
@@ -436,7 +436,7 @@ public function service_by_uuid(Request $request)
436436
responses: [
437437
new OA\Response(
438438
response: 200,
439-
description: 'Delete a service by Uuid',
439+
description: 'Delete a service by UUID',
440440
content: [
441441
new OA\MediaType(
442442
mediaType: 'application/json',

0 commit comments

Comments
 (0)