Merge pull request #4324 from JuliensForks/main
feat: add some new labels to every container
This commit is contained in:
@@ -188,7 +188,20 @@ function get_port_from_dockerfile($dockerfile): ?int
|
||||
return null;
|
||||
}
|
||||
|
||||
function defaultLabels($id, $name, $pull_request_id = 0, string $type = 'application', $subType = null, $subId = null)
|
||||
function defaultDatabaseLabels($database) {
|
||||
$labels = collect([]);
|
||||
$labels->push('coolify.managed=true');
|
||||
$labels->push('coolify.type=database');
|
||||
$labels->push('coolify.databaseId='.$database->id);
|
||||
$labels->push('coolify.resourceName='.Str::slug($database->name));
|
||||
$labels->push('coolify.serviceName='.Str::slug($database->name));
|
||||
$labels->push('coolify.projectName='.Str::slug($database->project()->name));
|
||||
$labels->push('coolify.environmentName='.Str::slug($database->environment->name));
|
||||
|
||||
return $labels;
|
||||
}
|
||||
|
||||
function defaultLabels($id, $name, string $projectName, string $resourceName, string $environment, $pull_request_id = 0, string $type = 'application', $subType = null, $subId = null, $subName = null)
|
||||
{
|
||||
$labels = collect([]);
|
||||
$labels->push('coolify.managed=true');
|
||||
@@ -196,14 +209,21 @@ function defaultLabels($id, $name, $pull_request_id = 0, string $type = 'applica
|
||||
$labels->push('coolify.'.$type.'Id='.$id);
|
||||
$labels->push("coolify.type=$type");
|
||||
$labels->push('coolify.name='.$name);
|
||||
$labels->push('coolify.resourceName='.Str::slug($resourceName));
|
||||
$labels->push('coolify.projectName='.Str::slug($projectName));
|
||||
$labels->push('coolify.serviceName='.Str::slug($subName ?? $resourceName));
|
||||
$labels->push('coolify.environmentName='.Str::slug($environment));
|
||||
|
||||
$labels->push('coolify.pullRequestId='.$pull_request_id);
|
||||
if ($type === 'service') {
|
||||
$subId && $labels->push('coolify.service.subId='.$subId);
|
||||
$subType && $labels->push('coolify.service.subType='.$subType);
|
||||
$subName && $labels->push('coolify.service.subName='.Str::slug($subName));
|
||||
}
|
||||
|
||||
return $labels;
|
||||
}
|
||||
|
||||
function generateServiceSpecificFqdns(ServiceApplication|Application $resource)
|
||||
{
|
||||
if ($resource->getMorphClass() === \App\Models\ServiceApplication::class) {
|
||||
|
@@ -1990,7 +1990,17 @@ function parseDockerComposeFile(Service|Application $resource, bool $isNew = fal
|
||||
} else {
|
||||
$fqdns = collect(data_get($savedService, 'fqdns'))->filter();
|
||||
}
|
||||
$defaultLabels = defaultLabels($resource->id, $containerName, type: 'service', subType: $isDatabase ? 'database' : 'application', subId: $savedService->id);
|
||||
$defaultLabels = defaultLabels(
|
||||
id: $resource->id,
|
||||
name: $containerName,
|
||||
projectName: $resource->project()->name,
|
||||
resourceName: $resource->name,
|
||||
type: 'service',
|
||||
subType: $isDatabase ? 'database' : 'application',
|
||||
subId: $savedService->id,
|
||||
subName: $savedService->name,
|
||||
environment: $resource->environment->name,
|
||||
);
|
||||
$serviceLabels = $serviceLabels->merge($defaultLabels);
|
||||
if (! $isDatabase && $fqdns->count() > 0) {
|
||||
if ($fqdns) {
|
||||
@@ -2818,7 +2828,16 @@ function parseDockerComposeFile(Service|Application $resource, bool $isNew = fal
|
||||
}
|
||||
}
|
||||
}
|
||||
$defaultLabels = defaultLabels($resource->id, $containerName, $pull_request_id, type: 'application');
|
||||
|
||||
$defaultLabels = defaultLabels(
|
||||
id: $resource->id,
|
||||
name: $containerName,
|
||||
projectName: $resource->project()->name,
|
||||
resourceName: $resource->name,
|
||||
environment: $resource->environment->name,
|
||||
pull_request_id: $pull_request_id,
|
||||
type: 'application'
|
||||
);
|
||||
$serviceLabels = $serviceLabels->merge($defaultLabels);
|
||||
|
||||
if ($server->isLogDrainEnabled()) {
|
||||
@@ -3612,11 +3631,15 @@ function newParser(Application|Service $resource, int $pull_request_id = 0, ?int
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$defaultLabels = defaultLabels(
|
||||
id: $resource->id,
|
||||
name: $containerName,
|
||||
projectName: $resource->project()->name,
|
||||
resourceName: $resource->name,
|
||||
pull_request_id: $pullRequestId,
|
||||
type: 'application'
|
||||
type: 'application',
|
||||
environment: $resource->environment->name,
|
||||
);
|
||||
} elseif ($isService) {
|
||||
if ($savedService->serviceType()) {
|
||||
@@ -3624,7 +3647,18 @@ function newParser(Application|Service $resource, int $pull_request_id = 0, ?int
|
||||
} else {
|
||||
$fqdns = collect(data_get($savedService, 'fqdns'))->filter();
|
||||
}
|
||||
$defaultLabels = defaultLabels($resource->id, $containerName, type: 'service', subType: $isDatabase ? 'database' : 'application', subId: $savedService->id);
|
||||
|
||||
$defaultLabels = defaultLabels(
|
||||
id: $resource->id,
|
||||
name: $containerName,
|
||||
projectName: $resource->project()->name,
|
||||
resourceName: $resource->name,
|
||||
type: 'service',
|
||||
subType: $isDatabase ? 'database' : 'application',
|
||||
subId: $savedService->id,
|
||||
subName: $savedService->human_name ?? $savedService->name,
|
||||
environment: $resource->environment->name,
|
||||
);
|
||||
}
|
||||
// Add COOLIFY_FQDN & COOLIFY_URL to environment
|
||||
if (! $isDatabase && $fqdns instanceof Collection && $fqdns->count() > 0) {
|
||||
|
Reference in New Issue
Block a user