feat: add containerized deployment workflow
CI/CD / test_and_check_app (push) Failing after 7m26s
CI/CD / Publish immutable image (push) Skipped

This commit is contained in:
2026-08-22 08:57:18 +02:00
parent e8ee23371b
commit afe99ea6d4
25 changed files with 1334 additions and 421 deletions
+11 -3
View File
@@ -30,9 +30,10 @@ class UpdateUserAvatar
$color = $this->colorFor($user);
$path = sprintf('avatars/generated/%d-%s.svg', $user->id, (string) Str::uuid());
$stored = Storage::disk('public')->put(
$stored = Storage::disk($this->avatarDisk())->put(
$path,
$this->svg($this->initials($user->name), $color),
['ContentType' => 'image/svg+xml'],
);
if (! $stored) {
@@ -53,7 +54,7 @@ class UpdateUserAvatar
public function upload(User $user, UploadedFile $avatar): User
{
$oldPath = $user->avatar_path;
$path = $avatar->store('avatars/uploads', 'public');
$path = $avatar->store('avatars/uploads', $this->avatarDisk());
if (! is_string($path)) {
throw new RuntimeException('Uploaded avatar could not be stored.');
@@ -90,7 +91,14 @@ class UpdateUserAvatar
return;
}
Storage::disk('public')->delete($path);
Storage::disk($this->avatarDisk())->delete($path);
}
private function avatarDisk(): string
{
$disk = config('filesystems.avatar_disk', 'public');
return is_string($disk) && $disk !== '' ? $disk : 'public';
}
private function initials(string $name): string