Replace deleted_files with manifest-based updater cleanup, add release workflow

- Add manifest.json generation script (scripts/generate-manifest.php)
- Add Updater::cleanStaleFiles() that removes files not in manifest
- Add /api/v1/update/clean endpoint with backward compatibility
- Add configurable update_protected_paths in config/invoiceshelf.php
- Update frontend to use clean step instead of delete step
- Add GitHub Actions release workflow triggered on version tags
- Add .github/release.yml for auto-generated changelog categories
- Update Makefile to include manifest generation and scripts directory
This commit is contained in:
Darko Gjorgjijoski
2026-04-06 19:27:33 +02:00
parent 2bdfb6a8b6
commit e64529468c
12 changed files with 297 additions and 7 deletions

View File

@@ -14,7 +14,7 @@ type UpdateStepKey =
| 'download'
| 'unzip'
| 'copy'
| 'delete'
| 'clean'
| 'migrate'
| 'finish'
@@ -58,8 +58,8 @@ const updateSteps = ref<UpdateStep[]>([
time: null,
},
{
key: 'delete',
translationKey: 'settings.update_app.deleting_files',
key: 'clean',
translationKey: 'settings.update_app.cleaning_stale_files',
status: 'pending',
time: null,
},
@@ -202,8 +202,8 @@ async function startUpdate(): Promise<void> {
break
}
case 'delete':
await updateService.delete({
case 'clean':
await updateService.clean({
deleted_files: updateRelease.value.deleted_files ?? null,
})
break