- Changed the hub-net network configuration to external in docker-compose.
- Removed the Single Sign-On (SSO) service implementation and associated login form component.
- Enhanced authentication callback logic to improve error handling and redirect management.
- Updated various routes to streamline login and authentication processes, ensuring proper redirection to workspace login.
- Cleaned up unused code and improved overall structure for better maintainability.
- Add InviteToken model and Alembic migration (core.invite_tokens)
- Add invites module: DTOs, service (create/validate/consume), routes
- Register invites router in core router
- Extend auth register endpoint to support invite_token flow:
- Validate local token, create user via Hub admin API (service account),
handle existing user (link instead of duplicate), create UserTenant, consume token
- Add GET /auth/register/check endpoint to validate token without consuming
- Add HUB_ADMIN_EMAIL, HUB_ADMIN_PASSWORD, APP_PUBLIC_URL to config
- Frontend: add invite() method and types to users.ts API client
- Frontend: add invite dialog with real roles dropdown to users page
- Frontend: update register page to handle invite flow and user-exists case
- Adjusted health check parameters in docker-compose.yml for backend services to enhance reliability during startup.
- Increased memory limits and reservations for backend services to accommodate higher resource demands.
- Updated service dependencies in docker-compose.yml to ensure proper startup order based on health status.
- Enhanced Jenkinsfile to include additional logging for backend and Celery services, aiding in troubleshooting during CI runs.
- Added .env.e2e.generated to .gitignore to prevent committing generated environment files.
- Updated docker-compose.yml to use environment variables for Keycloak ports, enhancing flexibility in CI environments.
- Enhanced Jenkinsfile to generate dynamic Keycloak ports for E2E testing and improved logging for troubleshooting during failures.
- Removed custom entrypoint scripts for backend, frontend, and PostgreSQL services from docker-compose files.
- Added a new entrypoint script in the backend and frontend Dockerfiles to handle initialization without relying on host-mounted scripts.
- Updated Dockerfiles to ensure proper permissions for the new entrypoint scripts.
- Enhanced database initialization logic by moving schema and extension creation to the Alembic migration script.
- Changed PostgreSQL data volume paths in docker-compose.yml to remove the trailing 'data' directory.
- Improved the 'Test frontend' stage in Jenkinsfile by adding cleanup steps and ensuring the workspace is correctly copied to the Docker container for testing.
- Changed the default environment variable from 'development' to 'production' in docker-compose.prod.yml and docker-compose.yml.
- Added SITAR API credentials to the environment variables in both Docker Compose files.
- Updated the seed data for customs units of measure to include a76_unit_code.
- Refactored the UnitOfMeasureCustoms model and related DTOs to replace scaii_unit_code with a76_unit_code for consistency.
- Adjusted frontend components to reflect the updated unit of measure structure and ensure proper handling of the new a76_unit_code field.