- Added a new document, `.AI_INSTRUCTIONS_SYNC.md`, detailing the organization and synchronization of AI instructions across CLAUDE.md and .cursor/rules/.
- Updated CLAUDE.md to include a note for AI assistants directing them to the new synchronization guide and emphasizing the importance of maintaining consistency.
- Enhanced `.cursor/rules/cursor_rules.mdc`, `README.mdc`, and other related files with cross-references to the synchronization guide for better clarity on maintaining documentation consistency.
- Added a new function to extract custom proxy commands from existing Traefik configurations before regenerating the proxy configuration.
- Updated the proxy configuration generation logic to include these custom commands, ensuring they are preserved during regeneration.
- Introduced unit tests to validate the extraction of custom commands and handle various scenarios, including invalid YAML and different proxy types.
- Clarified execution rules for unit tests, emphasizing the use of mocking and the prohibition of database connections.
- Specified that unit tests can run outside Docker, while feature tests must run inside Docker with database access.
- Added design principles for testable code, promoting dependency injection and interface usage.
- Enhanced overall structure and clarity of testing documentation to improve developer understanding of testing strategies.
- Changed the .env file reference to use a build-time .env file located in /artifacts, preventing it from being included in Docker images.
- Introduced a new method to wrap Docker build commands with environment variable exports, enhancing the handling of build-time variables.
- Updated logging messages for clarity regarding the creation and usage of the build-time .env file.
- Introduced logic to automatically create a default NIXPACKS_NODE_VERSION environment variable when an application uses the 'nixpacks' build pack.
- Ensured the environment variable is configured with appropriate attributes for build-time usage.
- Replaced the use of a dynamic env_filename with a consistent .env file reference across deployment methods.
- Simplified the generation and saving of build-time and runtime environment variables, ensuring they are always written to the .env file.
- Enhanced clarity in the deployment process by removing redundant logic and ensuring environment variables are handled uniformly.
- Updated the deployments method in DeploymentsIndicator to include application environment and project relationships for better data context.
- Refactored the application method in ApplicationDeploymentQueue to use Eloquent relationships instead of manual fetching, improving performance and readability.
- Enhanced the deployments indicator view to display application environment and project names, providing clearer deployment context.
- Removed redundant logic for merging COOLIFY_* variables into env_args.
- Simplified the process of adding environment variables by directly incorporating generated COOLIFY environment variables.
- Enhanced clarity and maintainability of the generate_env_variables method.
- Removed unnecessary environment variables and added security settings for Elasticsearch and Kibana.
- Implemented password setup for the kibana_system user during the Kibana setup process.
- Updated healthcheck commands for both services to ensure proper monitoring and readiness.
- Introduced a new setup service for Kibana to streamline user password configuration.
- Implemented logic to retrieve and display the default user password for Elasticsearch in the extraFields method of the Service model.
- Enhanced data collection for environment variables related to Elasticsearch, improving service configuration management.
- Introduced `isReadOnlyVolume` method in `LocalFileVolume` and `LocalPersistentVolume` models to determine if a volume is read-only based on Docker Compose configuration.
- Updated `FileStorage` and `Show` components to set `isReadOnly` state during mounting.
- Enhanced UI to display notifications for read-only volumes, preventing modification actions in the interface.
- Refactored file storage and directory management forms to conditionally enable or disable actions based on read-only status.
- Enhanced logic to process Docker image name and tag, including stripping 'sha256:' prefix and removing '@sha256' suffix.
- Implemented validation to check for valid SHA256 hashes and conditionally append '@sha256' to the image name.
- Defaulted the image tag to 'latest' if not provided, improving user experience and data integrity.
- Added logic to strip 'sha256:' prefix and remove '@sha256' suffix from user input for image SHA256 and name.
- Updated image name handling to append '@sha256' when using a digest, ensuring correct formatting.
- Enhanced validation and parsing for Docker images to improve user experience and data integrity.
- Refactored DockerImage component to use separate properties for image name, tag, and SHA256 digest.
- Introduced DockerImageFormat validation rule to enforce correct image format.
- Updated DockerImageParser to handle new parsing logic for image tags and SHA256 hashes.
- Enhanced UI to separate input fields for image name, tag, and SHA256 digest, improving user experience.
- Added comprehensive tests for DockerImageParser to ensure accurate parsing and validation of image formats.
- Enhanced environment variable configuration for the server and web services, including database and encryption settings.
- Updated health check intervals and retries for better reliability.
- Changed MinIO service configuration to use port 9000 and adjusted health checks accordingly.
- Improved volume management for data persistence.
These changes aim to streamline the deployment process and ensure better service health monitoring.
- Change MinIO image from 'minio/minio:latest' to 'quay.io/minio/minio:latest'
This matches the official Coolify MinIO template for consistency
- Update health check from curl-based to 'mc ready local' command
This is more reliable and matches the official MinIO template
- Update health check intervals and retries to match official template
(interval: 5s, timeout: 20s, retries: 10)
- Update service templates JSON files with corrected configuration
Addresses @devdilson's feedback about MinIO configuration consistency
with existing Coolify templates and best practices.
- Restore docker-compose.dev.yml to original state as requested by @Cinzya
- File should not be deleted, just reverted to original state
- Addresses reviewer feedback about keeping the file intact
- Fix MinIO endpoint configuration to use SERVICE_URL_MINIO_3200 for public access
This resolves the issue with signed URLs for photo uploads as noted by @devdilson
- Add ENTE_INTERNAL_ADMIN environment variable to grant first account admin permissions
This prevents the 10GB storage limit issue mentioned in the review
- Update service templates JSON files with the corrected configuration
- Ensure MinIO service has proper SERVICE_URL configuration for external access
Addresses all feedback from @devdilson's review comments:
- Fixes signed URL access for photo uploads
- Grants admin permissions to first account
- Maintains proper service architecture for Coolify deployment
- Update SVG logo to match the official Ente Photos PNG icon
- Based on the official icon from public/ente-photos-icon-green.png
- Maintain official Ente green gradient colors (#00D4AA to #00A693)
- Improve 'e' letterform to match official Ente branding more closely
- Ensure consistency with official Ente Photos visual identity
Addresses reviewer feedback to use official logo instead of custom design
- Replace custom camera-based logo with official Ente-inspired design
- Use official Ente green color scheme (#00D4AA to #00A693)
- Implement simplified 'e' letter design matching Ente brand identity
- Remove docker-compose.dev.yml changes as requested in PR review
Addresses feedback from PR review #6515
- Add ente-photos.yaml template with museum, postgres, and minio services
- Add custom SVG logo for Ente Photos
- Update service templates JSON files with new template
- Add Ente Photos service template with museum server, PostgreSQL, and MinIO
- Include complete Docker Compose configuration with health checks
- Add custom SVG logo for Ente Photos service
- Support for end-to-end encrypted photo storage alternative to Google Photos
- Auto-generate service templates JSON with proper categorization
- Fix docker-compose.dev.yml network configuration for coolify service
Resolves#6501
- Incremented the stable version in constants.php and versions.json to 4.0.0-beta.435.
- Updated the nightly version in versions.json and other/nightly/versions.json to 4.0.0-beta.436.
- Ensured consistency across versioning files for the latest release.
- Updated the ordering logic in the environment_variables methods for both Application and Service models to prioritize required variables over service-prefixed keys.
- This change enhances the clarity and organization of environment variable retrieval, ensuring that essential variables are listed first.
- Added functionality to generate environment variables for each service defined in the Docker Compose file, transforming service names into uppercase and replacing special characters.
- Updated the service parser to merge these generated variables with existing environment variables, enhancing deployment configuration.