Migrate omsorgapp to browser SPA, add Docker/CI build setup
Docker-Images bauen und veröffentlichen / build (, omsorgCore/Dockerfile, omsorgcore) (push) Successful in 3s
Docker-Images bauen und veröffentlichen / build (, omsorgWeb/Dockerfile, omsorgweb) (push) Failing after 4s
Docker-Images bauen und veröffentlichen / build (VITE_OMSORG_CORE_URL=${{ vars.OMSORG_CORE_PUBLIC_URL }}, omsorgapp/Dockerfile, omsorgapp) (push) Successful in 3s

- omsorgapp: drop Electron, run as a plain Vite/React browser app; refresh
  token moves to an HttpOnly cookie (omsorgCore), CORS added for the new
  browser origin, document download/preview switched to Blob-based browser
  APIs.
- Add Dockerfiles for omsorgCore, omsorgapp, and omsorgWeb, a docker-compose.yml
  wiring Postgres/MySQL/all three apps together, and a Gitea Actions workflow
  that builds and pushes images to the repo's container registry on push to
  main and on version tags.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Felix Kemmler
2026-08-10 17:42:45 +02:00
co-authored by Claude Sonnet 5
parent e9e96a57dc
commit 598dfcd38a
461 changed files with 59753 additions and 2859 deletions
@@ -1,39 +1,52 @@
.gitignore
.openapi-generator-ignore
.php-cs-fixer.dist.php
.travis.yml
README.md
composer.json
docs/Api/AbsencesApi.md
docs/Api/AdminEmailApi.md
docs/Api/AdminSessionsApi.md
docs/Api/AuditLogApi.md
docs/Api/AuthApi.md
docs/Api/ContractsApi.md
docs/Api/DocumentsApi.md
docs/Api/EmployeesApi.md
docs/Api/FacilitiesApi.md
docs/Api/FacilityContactsApi.md
docs/Api/FacilityQualificationRatesApi.md
docs/Api/HealthApi.md
docs/Api/OrdersApi.md
docs/Api/RolesApi.md
docs/Api/TimeEntriesApi.md
docs/Api/TrashApi.md
docs/Api/UsersApi.md
docs/Api/ValueListsApi.md
docs/Model/AbsenceDecisionRequest.md
docs/Model/AbsenceResponse.md
docs/Model/AbsenceResponsePagedResponse.md
docs/Model/AddUserPermissionOverrideRequest.md
docs/Model/AuditEventCategory.md
docs/Model/AuditLogEntryResponse.md
docs/Model/AuditLogEntryResponsePagedResponse.md
docs/Model/ChangePasswordRequest.md
docs/Model/ContractResponse.md
docs/Model/ContractResponsePagedResponse.md
docs/Model/CreateAbsenceRequest.md
docs/Model/CreateContractRequest.md
docs/Model/CreateEmployeeRequest.md
docs/Model/CreateFacilityContactRequest.md
docs/Model/CreateFacilityQualificationRateRequest.md
docs/Model/CreateFacilityRequest.md
docs/Model/CreateOrderRequest.md
docs/Model/CreateRoleRequest.md
docs/Model/CreateTimeEntryRequest.md
docs/Model/CreateUserRequest.md
docs/Model/CreateValueListItemRequest.md
docs/Model/DocumentResponse.md
docs/Model/EmployeeResponse.md
docs/Model/EmployeeResponsePagedResponse.md
docs/Model/FacilityContactResponse.md
docs/Model/FacilityQualificationRateResponse.md
docs/Model/FacilityResponse.md
docs/Model/FacilityResponsePagedResponse.md
docs/Model/ForgotPasswordRequestRequest.md
@@ -45,23 +58,42 @@ docs/Model/LoginRequest.md
docs/Model/LoginResponse.md
docs/Model/LogoutRequest.md
docs/Model/MeResponse.md
docs/Model/ModuleType.md
docs/Model/OrderResponse.md
docs/Model/OrderResponsePagedResponse.md
docs/Model/PasswordPolicyResponse.md
docs/Model/PasswordResetTemplateResponse.md
docs/Model/PermissionAction.md
docs/Model/PermissionDto.md
docs/Model/PermissionEffect.md
docs/Model/PermissionScope.md
docs/Model/RefreshRequest.md
docs/Model/ResetUserPasswordRequest.md
docs/Model/RolePermissionsResponse.md
docs/Model/RoleResponse.md
docs/Model/SendTestEmailRequest.md
docs/Model/SessionResponse.md
docs/Model/TimeEntryDecisionRequest.md
docs/Model/TimeEntryResponse.md
docs/Model/TimeEntryResponsePagedResponse.md
docs/Model/TrashAbsenceResponse.md
docs/Model/TrashContractResponse.md
docs/Model/TrashEmployeeResponse.md
docs/Model/TrashFacilityContactResponse.md
docs/Model/TrashFacilityQualificationRateResponse.md
docs/Model/TrashFacilityResponse.md
docs/Model/TrashOrderResponse.md
docs/Model/TrashTimeEntryResponse.md
docs/Model/UpdateAbsenceRequest.md
docs/Model/UpdateContractRequest.md
docs/Model/UpdateDocumentRequest.md
docs/Model/UpdateEmployeeRequest.md
docs/Model/UpdateFacilityContactRequest.md
docs/Model/UpdateFacilityQualificationRateRequest.md
docs/Model/UpdateFacilityRequest.md
docs/Model/UpdateOrderRequest.md
docs/Model/UpdateRolePermissionsRequest.md
docs/Model/UpdateTimeEntryRequest.md
docs/Model/UpdateUserRequest.md
docs/Model/UpdateValueListItemRequest.md
docs/Model/UserPermissionOverrideResponse.md
@@ -72,40 +104,54 @@ docs/Model/ValueListTransitionRequest.md
docs/Model/ValueListTransitionResponse.md
docs/Model/ValueListUsageResponse.md
git_push.sh
lib/Api/AbsencesApi.php
lib/Api/AdminEmailApi.php
lib/Api/AdminSessionsApi.php
lib/Api/AuditLogApi.php
lib/Api/AuthApi.php
lib/Api/ContractsApi.php
lib/Api/DocumentsApi.php
lib/Api/EmployeesApi.php
lib/Api/FacilitiesApi.php
lib/Api/FacilityContactsApi.php
lib/Api/FacilityQualificationRatesApi.php
lib/Api/HealthApi.php
lib/Api/OrdersApi.php
lib/Api/RolesApi.php
lib/Api/TimeEntriesApi.php
lib/Api/TrashApi.php
lib/Api/UsersApi.php
lib/Api/ValueListsApi.php
lib/ApiException.php
lib/Configuration.php
lib/FormDataProcessor.php
lib/HeaderSelector.php
lib/Model/AbsenceDecisionRequest.php
lib/Model/AbsenceResponse.php
lib/Model/AbsenceResponsePagedResponse.php
lib/Model/AddUserPermissionOverrideRequest.php
lib/Model/AuditEventCategory.php
lib/Model/AuditLogEntryResponse.php
lib/Model/AuditLogEntryResponsePagedResponse.php
lib/Model/ChangePasswordRequest.php
lib/Model/ContractResponse.php
lib/Model/ContractResponsePagedResponse.php
lib/Model/CreateAbsenceRequest.php
lib/Model/CreateContractRequest.php
lib/Model/CreateEmployeeRequest.php
lib/Model/CreateFacilityContactRequest.php
lib/Model/CreateFacilityQualificationRateRequest.php
lib/Model/CreateFacilityRequest.php
lib/Model/CreateOrderRequest.php
lib/Model/CreateRoleRequest.php
lib/Model/CreateTimeEntryRequest.php
lib/Model/CreateUserRequest.php
lib/Model/CreateValueListItemRequest.php
lib/Model/DocumentResponse.php
lib/Model/EmployeeResponse.php
lib/Model/EmployeeResponsePagedResponse.php
lib/Model/FacilityContactResponse.php
lib/Model/FacilityQualificationRateResponse.php
lib/Model/FacilityResponse.php
lib/Model/FacilityResponsePagedResponse.php
lib/Model/ForgotPasswordRequestRequest.php
@@ -118,23 +164,42 @@ lib/Model/LoginResponse.php
lib/Model/LogoutRequest.php
lib/Model/MeResponse.php
lib/Model/ModelInterface.php
lib/Model/ModuleType.php
lib/Model/OrderResponse.php
lib/Model/OrderResponsePagedResponse.php
lib/Model/PasswordPolicyResponse.php
lib/Model/PasswordResetTemplateResponse.php
lib/Model/PermissionAction.php
lib/Model/PermissionDto.php
lib/Model/PermissionEffect.php
lib/Model/PermissionScope.php
lib/Model/RefreshRequest.php
lib/Model/ResetUserPasswordRequest.php
lib/Model/RolePermissionsResponse.php
lib/Model/RoleResponse.php
lib/Model/SendTestEmailRequest.php
lib/Model/SessionResponse.php
lib/Model/TimeEntryDecisionRequest.php
lib/Model/TimeEntryResponse.php
lib/Model/TimeEntryResponsePagedResponse.php
lib/Model/TrashAbsenceResponse.php
lib/Model/TrashContractResponse.php
lib/Model/TrashEmployeeResponse.php
lib/Model/TrashFacilityContactResponse.php
lib/Model/TrashFacilityQualificationRateResponse.php
lib/Model/TrashFacilityResponse.php
lib/Model/TrashOrderResponse.php
lib/Model/TrashTimeEntryResponse.php
lib/Model/UpdateAbsenceRequest.php
lib/Model/UpdateContractRequest.php
lib/Model/UpdateDocumentRequest.php
lib/Model/UpdateEmployeeRequest.php
lib/Model/UpdateFacilityContactRequest.php
lib/Model/UpdateFacilityQualificationRateRequest.php
lib/Model/UpdateFacilityRequest.php
lib/Model/UpdateOrderRequest.php
lib/Model/UpdateRolePermissionsRequest.php
lib/Model/UpdateTimeEntryRequest.php
lib/Model/UpdateUserRequest.php
lib/Model/UpdateValueListItemRequest.php
lib/Model/UserPermissionOverrideResponse.php
@@ -146,70 +211,3 @@ lib/Model/ValueListTransitionResponse.php
lib/Model/ValueListUsageResponse.php
lib/ObjectSerializer.php
phpunit.xml.dist
test/Api/AdminEmailApiTest.php
test/Api/AdminSessionsApiTest.php
test/Api/AuditLogApiTest.php
test/Api/AuthApiTest.php
test/Api/ContractsApiTest.php
test/Api/EmployeesApiTest.php
test/Api/FacilitiesApiTest.php
test/Api/FacilityContactsApiTest.php
test/Api/HealthApiTest.php
test/Api/OrdersApiTest.php
test/Api/RolesApiTest.php
test/Api/UsersApiTest.php
test/Api/ValueListsApiTest.php
test/Model/AddUserPermissionOverrideRequestTest.php
test/Model/AuditLogEntryResponsePagedResponseTest.php
test/Model/AuditLogEntryResponseTest.php
test/Model/ChangePasswordRequestTest.php
test/Model/ContractResponsePagedResponseTest.php
test/Model/ContractResponseTest.php
test/Model/CreateContractRequestTest.php
test/Model/CreateEmployeeRequestTest.php
test/Model/CreateFacilityContactRequestTest.php
test/Model/CreateFacilityRequestTest.php
test/Model/CreateOrderRequestTest.php
test/Model/CreateRoleRequestTest.php
test/Model/CreateUserRequestTest.php
test/Model/CreateValueListItemRequestTest.php
test/Model/EmployeeResponsePagedResponseTest.php
test/Model/EmployeeResponseTest.php
test/Model/FacilityContactResponseTest.php
test/Model/FacilityResponsePagedResponseTest.php
test/Model/FacilityResponseTest.php
test/Model/ForgotPasswordRequestRequestTest.php
test/Model/ForgotPasswordRequestResponseTest.php
test/Model/ForgotPasswordResetRequestTest.php
test/Model/ForgotPasswordVerifyRequestTest.php
test/Model/ForgotPasswordVerifyResponseTest.php
test/Model/LoginRequestTest.php
test/Model/LoginResponseTest.php
test/Model/LogoutRequestTest.php
test/Model/MeResponseTest.php
test/Model/OrderResponsePagedResponseTest.php
test/Model/OrderResponseTest.php
test/Model/PasswordPolicyResponseTest.php
test/Model/PasswordResetTemplateResponseTest.php
test/Model/PermissionDtoTest.php
test/Model/RefreshRequestTest.php
test/Model/ResetUserPasswordRequestTest.php
test/Model/RolePermissionsResponseTest.php
test/Model/RoleResponseTest.php
test/Model/SendTestEmailRequestTest.php
test/Model/SessionResponseTest.php
test/Model/UpdateContractRequestTest.php
test/Model/UpdateEmployeeRequestTest.php
test/Model/UpdateFacilityContactRequestTest.php
test/Model/UpdateFacilityRequestTest.php
test/Model/UpdateOrderRequestTest.php
test/Model/UpdateRolePermissionsRequestTest.php
test/Model/UpdateUserRequestTest.php
test/Model/UpdateValueListItemRequestTest.php
test/Model/UserPermissionOverrideResponseTest.php
test/Model/UserResponseTest.php
test/Model/ValueListItemResponseTest.php
test/Model/ValueListResponseTest.php
test/Model/ValueListTransitionRequestTest.php
test/Model/ValueListTransitionResponseTest.php
test/Model/ValueListUsageResponseTest.php